mirror of https://git.ffmpeg.org/ffmpeg.git
nellymoser: Convert to the new bitstream reader
Signed-off-by: Anton Khirnov <anton@khirnov.net>
This commit is contained in:
parent
15d4dbfd4a
commit
6f94a64bd6
|
@ -38,8 +38,8 @@
|
|||
|
||||
#define BITSTREAM_READER_LE
|
||||
#include "avcodec.h"
|
||||
#include "bitstream.h"
|
||||
#include "fft.h"
|
||||
#include "get_bits.h"
|
||||
#include "internal.h"
|
||||
#include "nellymoser.h"
|
||||
#include "sinewin.h"
|
||||
|
@ -48,7 +48,7 @@
|
|||
typedef struct NellyMoserDecodeContext {
|
||||
AVCodecContext* avctx;
|
||||
AVLFG random_state;
|
||||
GetBitContext gb;
|
||||
BitstreamContext bc;
|
||||
float scale_bias;
|
||||
AVFloatDSPContext fdsp;
|
||||
FFTContext imdct_ctx;
|
||||
|
@ -67,14 +67,14 @@ static void nelly_decode_block(NellyMoserDecodeContext *s,
|
|||
int bits[NELLY_BUF_LEN];
|
||||
unsigned char v;
|
||||
|
||||
init_get_bits(&s->gb, block, NELLY_BLOCK_LEN * 8);
|
||||
bitstream_init(&s->bc, block, NELLY_BLOCK_LEN * 8);
|
||||
|
||||
bptr = buf;
|
||||
pptr = pows;
|
||||
val = ff_nelly_init_table[get_bits(&s->gb, 6)];
|
||||
val = ff_nelly_init_table[bitstream_read(&s->bc, 6)];
|
||||
for (i=0 ; i<NELLY_BANDS ; i++) {
|
||||
if (i > 0)
|
||||
val += ff_nelly_delta_table[get_bits(&s->gb, 5)];
|
||||
val += ff_nelly_delta_table[bitstream_read(&s->bc, 5)];
|
||||
pval = -pow(2, val/2048) * s->scale_bias;
|
||||
for (j = 0; j < ff_nelly_band_sizes_table[i]; j++) {
|
||||
*bptr++ = val;
|
||||
|
@ -88,8 +88,8 @@ static void nelly_decode_block(NellyMoserDecodeContext *s,
|
|||
for (i = 0; i < 2; i++) {
|
||||
aptr = audio + i * NELLY_BUF_LEN;
|
||||
|
||||
init_get_bits(&s->gb, block, NELLY_BLOCK_LEN * 8);
|
||||
skip_bits_long(&s->gb, NELLY_HEADER_BITS + i*NELLY_DETAIL_BITS);
|
||||
bitstream_init(&s->bc, block, NELLY_BLOCK_LEN * 8);
|
||||
bitstream_skip(&s->bc, NELLY_HEADER_BITS + i * NELLY_DETAIL_BITS);
|
||||
|
||||
for (j = 0; j < NELLY_FILL_LEN; j++) {
|
||||
if (bits[j] <= 0) {
|
||||
|
@ -97,7 +97,7 @@ static void nelly_decode_block(NellyMoserDecodeContext *s,
|
|||
if (av_lfg_get(&s->random_state) & 1)
|
||||
aptr[j] *= -1.0;
|
||||
} else {
|
||||
v = get_bits(&s->gb, bits[j]);
|
||||
v = bitstream_read(&s->bc, bits[j]);
|
||||
aptr[j] = ff_nelly_dequantization_table[(1<<bits[j])-1+v]*pows[j];
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue