NAL type error when stetting RTP buffer extension data/flags

debruyn debruynels1 at gmail.com
Mon Jul 11 12:14:57 UTC 2016


Good day guys,

So on this project i need to set extension data on a pipeline  that pulls a
RTSP stream from a camera and sends it over UDP. This is done on a seperate
ARM board and the pipe architecture is as follows : rtspsrc | queue2 |
udpsink. For this part i just set the extension flag of each buffer code
(note this is done on the queue2 element):

/        GstBuffer * gstBuffer = GST_PAD_PROBE_INFO_BUFFER(_gstProbeInfo);
    CamPipeline* oPipeObject = (CamPipeline*) _gstData;
    GstRTPBuffer rtpBuffer;
    memset (&rtpBuffer, 0, sizeof(GstRTPBuffer));

   
if(gst_rtp_buffer_map(gstBuffer,(GstMapFlags)GST_MAP_READWRITE,&rtpBuffer))
    {
        gst_rtp_buffer_set_extension(&rtpBuffer,TRUE);
        gst_rtp_buffer_unmap(&rtpBuffer);
    }/

On the PC i catch the pipe and then use it as desired. The pipe architecture
for this instance looks like follows: udpsrc | rtph264depay | queue2_1 |
valve | queue2_2  | avdec_h264 | theoraenc | oggmux | shout2send. The
following code catches the buffer and get the rtp data set(Note this is on
the queue2_1) :

/    GstBuffer * gstBuffer = GST_PAD_PROBE_INFO_BUFFER(_gstProbeInfo);
    CamPipeline* oPipeObject = (CamPipeline*) _gstData;

    GstRTPBuffer rtpBuffer;
    memset (&rtpBuffer, 0, sizeof(GstRTPBuffer));
   
if(gst_rtp_buffer_map(gstBuffer,(GstMapFlags)GST_MAP_READWRITE,&rtpBuffer))
    {
        oPipeObject->debug("extension:
%d",gst_rtp_buffer_get_extension(&rtpBuffer));
        gst_rtp_buffer_unmap(&rtpBuffer);
    }/

What happens is that the pipe is never set to the playing state and then
eventually the following error is printed from gstreamer : 
*
1468241421 DEBUG CamPipeline : Error received from element depayloader: The
stream is in the wrong format.

1468241421 DEBUG CamPipeline : Debugging information:
gstrtph264depay.c(1216): gst_rtp_h264_depay_process ():
/GstPipeline:stream-pipeline/GstRtpH264Depay:depayloader:
NAL unit type 26 not supported yet*

If I remove the flag being set on the  ARM board the error disappears and
the pipe is set to playing
Can anyone plz help with this

Regards 
De Bruyn




--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/NAL-type-error-when-stetting-RTP-buffer-extension-data-flags-tp4678594.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list