diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | ext/speex/gstspeexenc.c | 6 |
2 files changed, 11 insertions, 1 deletions
@@ -1,5 +1,11 @@ 2004-10-15 Wim Taymans <wim@fluendo.com> + * ext/speex/gstspeexenc.c: (gst_speexenc_class_init), + (gst_speexenc_chain): + Fix speex timestamps so that it gets muxed properly. + +2004-10-15 Wim Taymans <wim@fluendo.com> + * ext/raw1394/gstdv1394src.c: (gst_dv1394src_get_type), (gst_dv1394src_base_init), (gst_dv1394src_class_init), (gst_dv1394src_init), (gst_dv1394src_dispose), diff --git a/ext/speex/gstspeexenc.c b/ext/speex/gstspeexenc.c index adf1cd80..009a0e18 100644 --- a/ext/speex/gstspeexenc.c +++ b/ext/speex/gstspeexenc.c @@ -196,7 +196,7 @@ gst_speexenc_class_init (GstSpeexEncClass * klass) 0.0, 10.0, DEFAULT_QUALITY, G_PARAM_READWRITE)); g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_BITRATE, g_param_spec_int ("bitrate", "Encoding Bit-rate", - "Specify an encoding bit-rate (in bps). ", + "Specify an encoding bit-rate (in bps). (0 = automatic)", 0, G_MAXINT, DEFAULT_BITRATE, G_PARAM_READWRITE)); g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_VBR, g_param_spec_boolean ("vbr", "VBR", @@ -952,6 +952,10 @@ gst_speexenc_chain (GstPad * pad, GstData * _data) g_assert (written == outsize); speex_bits_reset (&speexenc->bits); + GST_BUFFER_TIMESTAMP (outbuf) = + (speexenc->frameno * frame_size - + speexenc->lookahead) * GST_SECOND / speexenc->rate; + GST_BUFFER_DURATION (outbuf) = frame_size * GST_SECOND / speexenc->rate; GST_BUFFER_OFFSET (outbuf) = speexenc->bytes_out; GST_BUFFER_OFFSET_END (outbuf) = speexenc->frameno * frame_size - speexenc->lookahead; |