diff options
author | Diego Biurrun <diego@biurrun.de> | 2012-03-06 19:07:10 +0100 |
---|---|---|
committer | Diego Biurrun <diego@biurrun.de> | 2012-03-07 09:36:05 +0100 |
commit | 8ca6e523a604db69c151b20627fb3bcc52118392 (patch) | |
tree | c0f0d2b9150762825e4f8143b234a7fb036d02a6 /libavcodec/wma.c | |
parent | 3c715383ea7012ac69507e6b9189c98675c77461 (diff) | |
download | ffmpeg-8ca6e523a604db69c151b20627fb3bcc52118392.tar.gz |
wma: Refactor common code to fix standalone compilation of WMA lossless decoder.
Diffstat (limited to 'libavcodec/wma.c')
-rw-r--r-- | libavcodec/wma.c | 41 |
1 files changed, 1 insertions, 40 deletions
diff --git a/libavcodec/wma.c b/libavcodec/wma.c index 371aad574d..007653ffec 100644 --- a/libavcodec/wma.c +++ b/libavcodec/wma.c @@ -22,6 +22,7 @@ #include "avcodec.h" #include "sinewin.h" #include "wma.h" +#include "wma_common.h" #include "wmadata.h" #undef NDEBUG @@ -67,46 +68,6 @@ static void init_coef_vlc(VLC *vlc, uint16_t **prun_table, av_free(level_table); } -/** - *@brief Get the samples per frame for this stream. - *@param sample_rate output sample_rate - *@param version wma version - *@param decode_flags codec compression features - *@return log2 of the number of output samples per frame - */ -int av_cold ff_wma_get_frame_len_bits(int sample_rate, int version, - unsigned int decode_flags) -{ - - int frame_len_bits; - - if (sample_rate <= 16000) { - frame_len_bits = 9; - } else if (sample_rate <= 22050 || - (sample_rate <= 32000 && version == 1)) { - frame_len_bits = 10; - } else if (sample_rate <= 48000 || version < 3) { - 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; -} - int ff_wma_init(AVCodecContext *avctx, int flags2) { WMACodecContext *s = avctx->priv_data; |