From e9c08e32d6b97cb7bfec29b38b3394be46dc3e70 Mon Sep 17 00:00:00 2001 From: Hendrik Leppkes Date: Sat, 6 Sep 2014 14:59:23 +0200 Subject: [PATCH] avformat/utils: Exclude the header size when computing duration from bit_rate This improves the estimate for MP3s with cover art tags. Fixes Ticket2931 Signed-off-by: Michael Niedermayer --- libavformat/utils.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/utils.c b/libavformat/utils.c index 6e828f7ce9..d6e3e50d66 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -2287,7 +2287,8 @@ static void estimate_timings_from_bit_rate(AVFormatContext *ic) if (ic->duration == AV_NOPTS_VALUE && ic->bit_rate != 0) { filesize = ic->pb ? avio_size(ic->pb) : 0; - if (filesize > 0) { + if (filesize > ic->data_offset) { + filesize -= ic->data_offset; for (i = 0; i < ic->nb_streams; i++) { st = ic->streams[i]; if ( st->time_base.num <= INT64_MAX / ic->bit_rate