From 2890cba8b50cc8c6656bc5f5cd0ebb5fd80fb5e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Storsj=C3=B6?= Date: Wed, 9 Feb 2011 12:13:32 +0200 Subject: [PATCH] amr: Set the codec->bit_rate field based on the last packet This allows libavformat to guess an estimated duration for amr files. For streams with varying bit rates (or with silence descriptors or "no frame" blocks) the guess is, of course, inaccurate. --- libavformat/amr.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libavformat/amr.c b/libavformat/amr.c index ba2ed4f30c..f2fecf3ee1 100644 --- a/libavformat/amr.c +++ b/libavformat/amr.c @@ -153,6 +153,9 @@ static int amr_read_packet(AVFormatContext *s, return AVERROR(EIO); } + /* Both AMR formats have 50 frames per second */ + s->streams[0]->codec->bit_rate = size*8*50; + pkt->stream_index = 0; pkt->pos= avio_tell(s->pb); pkt->data[0]=toc;