Commit 031b1cbe authored by Benjamin Larsson's avatar Benjamin Larsson
Browse files

Change from INIT_VLC_USE_STATIC to INIT_VLC_USE_NEW_STATIC in atrac3

Originally committed as revision 18865 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent fbf4d03a
...@@ -933,6 +933,8 @@ static av_cold int atrac3_decode_init(AVCodecContext *avctx) ...@@ -933,6 +933,8 @@ static av_cold int atrac3_decode_init(AVCodecContext *avctx)
int i; int i;
const uint8_t *edata_ptr = avctx->extradata; const uint8_t *edata_ptr = avctx->extradata;
ATRAC3Context *q = avctx->priv_data; ATRAC3Context *q = avctx->priv_data;
static VLC_TYPE atrac3_vlc_table[4096][2];
static int vlcs_initialized = 0;
/* Take data from the AVCodecContext (RM container). */ /* Take data from the AVCodecContext (RM container). */
q->sample_rate = avctx->sample_rate; q->sample_rate = avctx->sample_rate;
...@@ -1023,10 +1025,15 @@ static av_cold int atrac3_decode_init(AVCodecContext *avctx) ...@@ -1023,10 +1025,15 @@ static av_cold int atrac3_decode_init(AVCodecContext *avctx)
/* Initialize the VLC tables. */ /* Initialize the VLC tables. */
if (!vlcs_initialized) {
for (i=0 ; i<7 ; i++) { for (i=0 ; i<7 ; i++) {
spectral_coeff_tab[i].table = &atrac3_vlc_table[atrac3_vlc_offs[i]];
spectral_coeff_tab[i].table_allocated = atrac3_vlc_offs[i + 1] - atrac3_vlc_offs[i];
init_vlc (&spectral_coeff_tab[i], 9, huff_tab_sizes[i], init_vlc (&spectral_coeff_tab[i], 9, huff_tab_sizes[i],
huff_bits[i], 1, 1, huff_bits[i], 1, 1,
huff_codes[i], 1, 1, INIT_VLC_USE_STATIC); huff_codes[i], 1, 1, INIT_VLC_USE_NEW_STATIC);
}
vlcs_initialized = 1;
} }
init_atrac3_transforms(q); init_atrac3_transforms(q);
......
...@@ -105,6 +105,10 @@ static const uint8_t* const huff_bits[7] = { ...@@ -105,6 +105,10 @@ static const uint8_t* const huff_bits[7] = {
huffbits1,huffbits2,huffbits3,huffbits4,huffbits5,huffbits6,huffbits7, huffbits1,huffbits2,huffbits3,huffbits4,huffbits5,huffbits6,huffbits7,
}; };
static const uint16_t atrac3_vlc_offs[] = {
0,512,1024,1536,2048,2560,3072,3584,4096
};
/* selector tables */ /* selector tables */
static const uint8_t CLCLengthTab[8] = {0, 4, 3, 3, 4, 4, 5, 6}; static const uint8_t CLCLengthTab[8] = {0, 4, 3, 3, 4, 4, 5, 6};
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment