From 523c09ca4462dcf6a71f7ce39ae373551d5e2225 Mon Sep 17 00:00:00 2001 From: Sascha Sommer Date: Fri, 12 Jun 2009 15:38:11 +0000 Subject: Add additional sample rates to the frame len bits calculation code Originally committed as revision 19169 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/wma.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'libavcodec/wma.c') diff --git a/libavcodec/wma.c b/libavcodec/wma.c index 00893ab8ee..7698181fd3 100644 --- a/libavcodec/wma.c +++ b/libavcodec/wma.c @@ -80,8 +80,24 @@ int av_cold ff_wma_get_frame_len_bits(int sample_rate, int version, else if (sample_rate <= 22050 || (sample_rate <= 32000 && version == 1)) frame_len_bits = 10; - else + else if (sample_rate <= 48000) { frame_len_bits = 11; + } else if (sample_rate <= 96000) { + frame_len_bits = 12; + } else { + frame_len_bits = 13; + } + + if (version == 3) { + int tmp = decode_flags & 0x6; + if (tmp == 0x2) { + ++frame_len_bits; + } else if (tmp == 0x4) { + --frame_len_bits; + } else if (tmp == 0x6) { + frame_len_bits -= 2; + } + } return frame_len_bits; } -- cgit v1.2.3