mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-24 02:31:03 +00:00
rtpopuspay: Allocate the rtp buffer correctly
Use the right functions to allocate the rtp buffer
This commit is contained in:
parent
ad261f64c3
commit
18638c9c4e
1 changed files with 2 additions and 16 deletions
|
@ -112,24 +112,10 @@ static GstFlowReturn
|
||||||
gst_rtp_opus_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
gst_rtp_opus_pay_handle_buffer (GstRTPBasePayload * basepayload,
|
||||||
GstBuffer * buffer)
|
GstBuffer * buffer)
|
||||||
{
|
{
|
||||||
GstRTPBuffer rtpbuf = { NULL, };
|
|
||||||
GstBuffer *outbuf;
|
GstBuffer *outbuf;
|
||||||
GstMapInfo map;
|
|
||||||
|
|
||||||
/* Copy data and timestamp to a new output buffer
|
outbuf = gst_rtp_buffer_new_allocate (0, 0, 0);
|
||||||
* FIXME : Don't we have a convenience function for this ? */
|
outbuf = gst_buffer_append (outbuf, gst_buffer_ref (buffer));
|
||||||
gst_buffer_map (buffer, &map, GST_MAP_READ);
|
|
||||||
outbuf = gst_rtp_buffer_new_copy_data (map.data, map.size);
|
|
||||||
GST_BUFFER_TIMESTAMP (outbuf) = GST_BUFFER_TIMESTAMP (buffer);
|
|
||||||
|
|
||||||
/* Unmap and free input buffer */
|
|
||||||
gst_buffer_unmap (buffer, &map);
|
|
||||||
gst_buffer_unref (buffer);
|
|
||||||
|
|
||||||
/* Remove marker from RTP buffer */
|
|
||||||
gst_rtp_buffer_map (outbuf, GST_MAP_WRITE, &rtpbuf);
|
|
||||||
gst_rtp_buffer_set_marker (&rtpbuf, FALSE);
|
|
||||||
gst_rtp_buffer_unmap (&rtpbuf);
|
|
||||||
|
|
||||||
/* Push out */
|
/* Push out */
|
||||||
return gst_rtp_base_payload_push (basepayload, outbuf);
|
return gst_rtp_base_payload_push (basepayload, outbuf);
|
||||||
|
|
Loading…
Reference in a new issue