From: Mark Nauwelaerts Date: Mon, 14 Jan 2008 09:17:47 +0000 (+0000) Subject: ext/lame/gstlame.c: Correctly set number of channels when using mono-encoding mode... X-Git-Tag: 1.19.3~509^2~1916^2~73 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0e62059993ddd1af724334d040b83b7c913cdd8c;p=platform%2Fupstream%2Fgstreamer.git ext/lame/gstlame.c: Correctly set number of channels when using mono-encoding mode and fix the duration calculation o... Original commit message from CVS: Patch by: Mark Nauwelaerts * ext/lame/gstlame.c: (gst_lame_sink_setcaps), (gst_lame_sink_event): Correctly set number of channels when using mono-encoding mode and fix the duration calculation of the EOS buffer. --- diff --git a/ext/lame/gstlame.c b/ext/lame/gstlame.c index a341ef5..cff4add 100644 --- a/ext/lame/gstlame.c +++ b/ext/lame/gstlame.c @@ -550,7 +550,7 @@ gst_lame_sink_setcaps (GstPad * pad, GstCaps * caps) gst_caps_new_simple ("audio/mpeg", "mpegversion", G_TYPE_INT, 1, "layer", G_TYPE_INT, 3, - "channels", G_TYPE_INT, lame->num_channels, + "channels", G_TYPE_INT, lame->mode == MONO ? 1 : lame->num_channels, "rate", G_TYPE_INT, out_samplerate, NULL); /* and use these caps */ @@ -974,8 +974,8 @@ gst_lame_sink_event (GstPad * pad, GstEvent * event) if (size > 0 && lame->last_flow == GST_FLOW_OK) { gint64 duration; - duration = gst_util_uint64_scale_int (size, GST_SECOND, - 2 * lame->samplerate * lame->num_channels); + duration = gst_util_uint64_scale_int (size, 8 * GST_SECOND, + 1000 * lame->bitrate); if (lame->last_ts == GST_CLOCK_TIME_NONE) { lame->last_ts = lame->eos_ts;