mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-25 01:30:38 +00:00
rtpsv3vdepay: Only output buffers once we're configured.
This commit is contained in:
parent
1743763c0b
commit
65a2871e90
2 changed files with 19 additions and 9 deletions
|
@ -197,6 +197,10 @@ gst_rtp_sv3v_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
|||
S = (payload[0] & 0x20) == 0x20;
|
||||
E = (payload[0] & 0x10) == 0x10;
|
||||
|
||||
GST_DEBUG ("M:%d, C:%d, S:%d, E:%d", M, C, S, E);
|
||||
|
||||
GST_MEMDUMP ("incoming buffer", payload, payload_len);
|
||||
|
||||
if (C) {
|
||||
GstCaps *caps;
|
||||
GstBuffer *codec_data;
|
||||
|
@ -235,21 +239,25 @@ gst_rtp_sv3v_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
|
|||
gst_caps_unref (caps);
|
||||
g_value_unset (&value);
|
||||
|
||||
rtpsv3vdepay->configured = TRUE;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* store data in adapter, stip off 2 bytes header */
|
||||
outbuf = gst_rtp_buffer_get_payload_subbuffer (buf, 2, -1);
|
||||
gst_adapter_push (rtpsv3vdepay->adapter, outbuf);
|
||||
if (G_LIKELY (rtpsv3vdepay->configured)) {
|
||||
/* store data in adapter, stip off 2 bytes header */
|
||||
outbuf = gst_rtp_buffer_get_payload_subbuffer (buf, 2, -1);
|
||||
gst_adapter_push (rtpsv3vdepay->adapter, outbuf);
|
||||
|
||||
if (M) {
|
||||
/* frame is completed: push contents of adapter */
|
||||
guint avail;
|
||||
if (M) {
|
||||
/* frame is completed: push contents of adapter */
|
||||
guint avail;
|
||||
|
||||
avail = gst_adapter_available (rtpsv3vdepay->adapter);
|
||||
outbuf = gst_adapter_take_buffer (rtpsv3vdepay->adapter, avail);
|
||||
avail = gst_adapter_available (rtpsv3vdepay->adapter);
|
||||
outbuf = gst_adapter_take_buffer (rtpsv3vdepay->adapter, avail);
|
||||
|
||||
return outbuf;
|
||||
return outbuf;
|
||||
}
|
||||
}
|
||||
}
|
||||
return NULL;
|
||||
|
|
|
@ -46,6 +46,8 @@ struct _GstRtpSV3VDepay
|
|||
|
||||
GstAdapter *adapter;
|
||||
|
||||
gboolean configured;
|
||||
|
||||
guint16 nextseq;
|
||||
guint width;
|
||||
guint height;
|
||||
|
|
Loading…
Reference in a new issue