rtpgsmpay: fix accidental garbage data before actual payload

Do not allocate payload size outbuf if appending payload buffer.

The commit 137672ff18 attached payload
to the output buffer but forgot to remove payload allocation.  That
effectively doubled payload size and add zero'ed or random bytes.

Makes the following pipeline work again:

gst-launch-1.0 -v audiotestsrc wave=2 ! gsmenc ! rtpgsmpay ! rtpgsmdepay ! gsmdec ! autoaudiosink

https://bugzilla.gnome.org/show_bug.cgi?id=784616
This commit is contained in:
Yasushi SHOJI 2017-07-07 21:15:57 +09:00 committed by Tim-Philipp Müller
parent 286df32e03
commit c7f42cc3bc

View file

@ -145,7 +145,7 @@ gst_rtp_gsm_pay_handle_buffer (GstRTPBasePayload * basepayload,
if (payload_len > GST_RTP_BASE_PAYLOAD_MTU (rtpgsmpay))
goto too_big;
outbuf = gst_rtp_buffer_new_allocate (payload_len, 0, 0);
outbuf = gst_rtp_buffer_new_allocate (0, 0, 0);
/* copy timestamp and duration */
GST_BUFFER_PTS (outbuf) = timestamp;