diff options
author | Wim Taymans <wim.taymans@gmail.com> | 2007-03-29 14:03:21 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2007-03-29 14:03:21 +0000 |
commit | da3e23d3758e7c5b38b27c4894f1f0845e5231e9 (patch) | |
tree | fc46d7425d473f313be940b326dc11d7274d5a57 /gst/rtp/gstrtpmpvdepay.c | |
parent | d26cbc8c663b56976224a433c18817be5a57fe45 (diff) |
gst/rtp/: Use more efficient adapter and rtpbuffer methods when possible.
Original commit message from CVS:
* gst/rtp/gstrtpL16depay.c: (gst_rtp_L16_depay_process):
* gst/rtp/gstrtpgsmdepay.c: (gst_rtp_gsm_depay_process):
* gst/rtp/gstrtpilbcdepay.c: (gst_rtp_ilbc_depay_process):
* gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_process):
* gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_process):
* gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_flush):
* gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_setcaps),
(gst_rtp_mp4v_depay_process):
* gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_flush):
* gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_process):
* gst/rtp/gstrtpmpapay.c: (gst_rtp_mpa_pay_flush):
* gst/rtp/gstrtpmpvdepay.c: (gst_rtp_mpv_depay_process):
* gst/rtp/gstrtppcmadepay.c: (gst_rtp_pcma_depay_process):
* gst/rtp/gstrtppcmudepay.c: (gst_rtp_pcmu_depay_process):
* gst/rtp/gstrtpsv3vdepay.c: (gst_rtp_sv3v_depay_process):
Use more efficient adapter and rtpbuffer methods when possible.
Diffstat (limited to 'gst/rtp/gstrtpmpvdepay.c')
-rw-r--r-- | gst/rtp/gstrtpmpvdepay.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/gst/rtp/gstrtpmpvdepay.c b/gst/rtp/gstrtpmpvdepay.c index 2f828295..08d92a5d 100644 --- a/gst/rtp/gstrtpmpvdepay.c +++ b/gst/rtp/gstrtpmpvdepay.c @@ -158,13 +158,13 @@ gst_rtp_mpv_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf) goto bad_packet; { - gint payload_len; + gint payload_len, payload_header; guint8 *payload; guint8 T; - guint32 timestamp; payload_len = gst_rtp_buffer_get_payload_len (buf); payload = gst_rtp_buffer_get_payload (buf); + payload_header = 0; if (payload_len <= 4) goto empty_packet; @@ -181,6 +181,7 @@ gst_rtp_mpv_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf) T = (payload[0] & 0x04); payload_len -= 4; + payload_header += 4; payload += 4; if (T) { @@ -197,13 +198,11 @@ gst_rtp_mpv_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf) goto empty_packet; payload_len -= 4; + payload_header += 4; payload += 4; } - timestamp = gst_rtp_buffer_get_timestamp (buf); - - outbuf = gst_buffer_new_and_alloc (payload_len); - memcpy (GST_BUFFER_DATA (outbuf), payload, payload_len); + outbuf = gst_rtp_buffer_get_payload_subbuffer (buf, payload_header, -1); GST_DEBUG_OBJECT (rtpmpvdepay, "gst_rtp_mpv_depay_chain: pushing buffer of size %d", |