<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
{mso-style-name:msonormal;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
span.EmailStyle18
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;
mso-fareast-language:EN-US;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="NO-BOK" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">Thank you for getting back to me – this worked perfectly!<br>
<br>
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">Best Regards,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">Kristian Alfheim<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> Eslam Ahmed <eslam.ahmed@avidbeam.com>
<br>
<b>Sent:</b> onsdag 19. oktober 2022 14:24<br>
<b>To:</b> Discussion of the development of and with GStreamer <gstreamer-devel@lists.freedesktop.org><br>
<b>Cc:</b> Alfheim, Kristian <Kristian.Alfheim@kongsberg.com><br>
<b>Subject:</b> Re: RTP pipeline with custom RTP header extension for RTSP server<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal" style="mso-line-height-alt:.75pt"><span style="font-size:1.0pt;color:white">Hi, You can hook on the "media-configure" callback of GstRTSPMediaFactory https: //thiblahute. github. io/GStreamer-doc/gst-rtsp-server-1. 0/rtsp-media-factory. html?gi-language=c#GstRTSPMediaFactory: : media-configure
Then you can invoke <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="mso-line-height-alt:.75pt"><span style="font-size:1.0pt;color:white">ZjQcmQRYFpfptBannerStart<o:p></o:p></span></p>
</div>
<table class="MsoNormalTable" border="0" cellspacing="0" cellpadding="0" width="100%" style="width:100.0%;border-radius:4px">
<tbody>
<tr>
<td style="padding:12.0pt 0cm 12.0pt 0cm">
<table class="MsoNormalTable" border="1" cellspacing="0" cellpadding="0" width="100%" style="width:100.0%;background:#E0F732;border:none;border-top:solid #C4CD98 3.0pt">
<tbody>
<tr>
<td valign="top" style="border:none;padding:0cm 7.5pt 3.75pt 4.5pt">
<table class="MsoNormalTable" border="0" cellspacing="0" cellpadding="0" align="left">
<tbody>
<tr>
<td style="padding:3.0pt 6.0pt 3.0pt 6.0pt">
<p class="MsoNormal"><b><span style="font-size:10.5pt;font-family:"Arial",sans-serif;color:black">This Message Is From an External Sender
<o:p></o:p></span></b></p>
</td>
</tr>
<tr>
<td style="padding:3.0pt 6.0pt 3.0pt 6.0pt">
<p class="MsoNormal"><span style="font-size:9.0pt;font-family:"Arial",sans-serif;color:black">This message is from an EXTERNAL SENDER - be CAUTIOUS, particularly with links and attachments
<o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<div>
<p class="MsoNormal" style="mso-line-height-alt:.75pt"><span style="font-size:1.0pt;color:white">ZjQcmQRYFpfptBannerEnd<o:p></o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal">Hi,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">You can hook on the "media-configure" callback of GstRTSPMediaFactory <a href="https://urldefense.com/v3/__https:/thiblahute.github.io/GStreamer-doc/gst-rtsp-server-1.0/rtsp-media-factory.html?gi-language=c*GstRTSPMediaFactory::media-configure__;Iw!!L8f3-wPVSng!HRbq3_vRmYBfsNz4FTgCSegROdt1WK0yjWHKTFhdYXNxAhiw6wlwCzWnhlnHRcN0bHXLulplW8tCwW-DMY9LnlyzjCroXx4$">https://thiblahute.github.io/GStreamer-doc/gst-rtsp-server-1.0/rtsp-media-factory.html?gi-language=c#GstRTSPMediaFactory::media-configure</a><br>
Then you can invoke gst_rtsp_media_get_element on GstRTSPMedia to get a bin containing all the elements that were passed to gst_rtsp_media_factory_set_launch. From there you can retrieve your elements as you normally would and install whatever probes you need.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><a href="https://urldefense.com/v3/__https:/thiblahute.github.io/GStreamer-doc/gst-rtsp-server-1.0/rtsp-media.html?gi-language=c*gst_rtsp_media_get_element__;Iw!!L8f3-wPVSng!HRbq3_vRmYBfsNz4FTgCSegROdt1WK0yjWHKTFhdYXNxAhiw6wlwCzWnhlnHRcN0bHXLulplW8tCwW-DMY9LnlyzEoD8oas$">https://thiblahute.github.io/GStreamer-doc/gst-rtsp-server-1.0/rtsp-media.html?gi-language=c#gst_rtsp_media_get_element</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal"><br clear="all">
<o:p></o:p></p>
<div>
<div>
<div>
<p class="MsoNormal">Best Regards,<br>
Eslam Ahmed<o:p></o:p></p>
</div>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Wed, Oct 19, 2022 at 1:38 PM Kristian.Alfheim--- via gstreamer-devel <<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a>> wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Hi,<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">We’re trying to make use of a custom RTP header extension together with our RTSP server. To set up a pipeline for the RTSP server, we need to use the “gst_rtsp_media_factory_set_launch(
<PIPELINE> )”, where PIPELINE consists of the elements we need for our RTP pipeline. However, to use a custom RTP header extension we need access to the GstElement object of the payloader, so that we may hook the extension onto the “add-extension” action signal
of the payloader.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">How would one go about creating the GstElement payloader object, add the header extension via. the action signal, and then use this same payloader for the pipeline
description used by gst_rtsp_media_factory_set_launch?</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">The most relevant StackOverflow thread I could find is:
<a href="https://urldefense.com/v3/__https:/stackoverflow.com/questions/34012197/data-transfer-through-rtsp-in-gstreamer__;!!L8f3-wPVSng!HRbq3_vRmYBfsNz4FTgCSegROdt1WK0yjWHKTFhdYXNxAhiw6wlwCzWnhlnHRcN0bHXLulplW8tCwW-DMY9LnlyzKopWkpY$" target="_blank">
https://stackoverflow.com/questions/34012197/data-transfer-through-rtsp-in-gstreamer</a>, but it seems nothing definitive was concluded here.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">Best Regards,</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">Kristian Alfheim</span><o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div class="MsoNormal" align="center" style="text-align:center">
<hr size="2" width="100%" align="center">
</div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif;color:gray"><br>
CONFIDENTIALITY<br>
This e-mail and any attachment contain KONGSBERG information which may be proprietary, confidential or subject to export regulations, and is only meant for the intended recipient(s). Any disclosure, copying, distribution or use is prohibited, if not otherwise
explicitly agreed with KONGSBERG. If received in error, please delete it immediately from your system and notify the sender properly.</span><o:p></o:p></p>
</div>
</div>
</blockquote>
</div>
</div>
</body>
</html>