From: <mn...@ke...> - 2010-06-16 13:59:48
|
Module: gst-plugins-good Branch: master Commit: a69e419c8eaf61b66c5889f5b635bfe8e97d3f71 URL: http://cgit.freedesktop.org/gstreamer/gst-plugins-good/commit/?id=a69e419c8eaf61b66c5889f5b635bfe8e97d3f71 Author: Mark Nauwelaerts <mar...@co...> Date: Wed Jun 16 15:40:34 2010 +0200 avidemux: improve audio vbr detection Subsequent entry time calculations use blockalign value to determine number of frames per chunk, and blockalign == 1 is then most unlikely to result in reasonable values (which also aligns with "spec"). --- gst/avi/gstavidemux.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/gst/avi/gstavidemux.c b/gst/avi/gstavidemux.c index e2c5c16..e7fe2c3 100644 --- a/gst/avi/gstavidemux.c +++ b/gst/avi/gstavidemux.c @@ -1988,11 +1988,12 @@ gst_avi_demux_parse_stream (GstAviDemux * avi, GstBuffer * buf) GST_DEBUG_OBJECT (element, "marking video as VBR, res %d", res); break; case GST_RIFF_FCC_auds: - stream->is_vbr = (stream->strh->samplesize == 0) - && stream->strh->scale > 1; res = gst_riff_parse_strf_auds (element, sub, &stream->strf.auds, &stream->extradata); + stream->is_vbr = (stream->strh->samplesize == 0) + && stream->strh->scale > 1 + && stream->strf.auds->blockalign != 1; sub = NULL; GST_DEBUG_OBJECT (element, "marking audio as VBR:%d, res %d", stream->is_vbr, res); |