Using gst_rtp_buffer_map

johnwesting john.blank.westing at gmail.com
Wed Aug 26 14:37:23 PDT 2015


I'm porting a plugin from 0.10 to 1.0 and having issues with using the
gst_rtp_buffer_map() function. The only example I've been able find is here:

https://github.com/ylatuya/gst-plugins-bad/blob/master/tests/check/elements/rtpmux.c

I'm using the following code:

  GstRTPBuffer rtp_buffer = GST_RTP_BUFFER_INIT;

  buffer = gst_rtp_buffer_new_allocate(500, 0, 0);

  gst_rtp_buffer_map(buffer, GST_MAP_READ, &rtp_buffer);

When I run the code I get the following output:

  Setting pipeline to PAUSED ...
  Pipeline is PREROLLING ...

  ** (gst-launch-1.0:25525): CRITICAL **: gst_rtp_buffer_map: assertion
'rtp->buffer == NULL' failed

I looked in
https://github.com/jojva/gst-plugins-base/blob/master/gst-libs/gst/rtp/gstrtpbuffer.c
and it looks like the code is failing at the line:

  g_return_val_if_fail (rtp->buffer == NULL, FALSE);

How do I use this function? I want to allocate a buffer and assign several
RTP fields. In 0.10 this functions took as input a GstBuffer, now they use
the GstRTPBuffer. I don't know how to properly create an RTPBuffer.

Thanks,
John



--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Using-gst-rtp-buffer-map-tp4673356.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list