Commit 7eeeca8c authored by Edward Hervey's avatar Edward Hervey 🤘
Browse files

gst/law/mulaw-decode.*: Calculate outgoing buffer duration if incoming buffer...

gst/law/mulaw-decode.*: Calculate outgoing buffer duration if incoming buffer didn't have a valid duration.

Original commit message from CVS:
* gst/law/mulaw-decode.c: (mulawdec_sink_setcaps),
(gst_mulawdec_chain):
* gst/law/mulaw-decode.h:
Calculate outgoing buffer duration if incoming buffer didn't have a
valid duration.
parent ceb068d0
2007-11-02 Edward Hervey <bilboed@bilboed.com>
* gst/law/mulaw-decode.c: (mulawdec_sink_setcaps),
(gst_mulawdec_chain):
* gst/law/mulaw-decode.h:
Calculate outgoing buffer duration if incoming buffer didn't have a
valid duration.
2007-10-30 Wim Taymans <wim.taymans@gmail.com>
 
* gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment),
......
......@@ -73,6 +73,9 @@ mulawdec_sink_setcaps (GstPad * pad, GstCaps * caps)
"signed", G_TYPE_BOOLEAN, TRUE,
"rate", G_TYPE_INT, rate, "channels", G_TYPE_INT, channels, NULL);
mulawdec->rate = rate;
mulawdec->channels = channels;
return TRUE;
}
......@@ -163,6 +166,10 @@ gst_mulawdec_chain (GstPad * pad, GstBuffer * buffer)
GST_BUFFER_FLAG_SET (outbuf, GST_BUFFER_FLAG_DISCONT);
GST_BUFFER_TIMESTAMP (outbuf) = GST_BUFFER_TIMESTAMP (buffer);
if (GST_BUFFER_DURATION (outbuf) == GST_CLOCK_TIME_NONE)
GST_BUFFER_DURATION (outbuf) = gst_util_uint64_scale_int (GST_SECOND,
mulaw_size * 2, 2 * mulawdec->rate * mulawdec->channels);
else
GST_BUFFER_DURATION (outbuf) = GST_BUFFER_DURATION (buffer);
gst_buffer_set_caps (outbuf, mulawdec->srccaps);
......
......@@ -43,6 +43,9 @@ struct _GstMuLawDec {
GstPad *sinkpad,*srcpad;
GstCaps *srccaps;
gint rate;
gint channels;
};
struct _GstMuLawDecClass {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment