aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-12-10 15:49:30 +0100
committerMichael Niedermayer <michaelni@gmx.at>2013-12-10 15:50:12 +0100
commit4c32629b82598a837d5dfefbbfe4e6aeaf571496 (patch)
tree56c70f36b6fe8159b5d57c897b47b45887c5c590
parentec4d761c745df45ca0d5677e71e62064dbf9cb49 (diff)
downloadffmpeg-4c32629b82598a837d5dfefbbfe4e6aeaf571496.tar.gz
avcodec/sonic: move version to the context
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/sonic.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/libavcodec/sonic.c b/libavcodec/sonic.c
index bd2d42e52b..4d103f25df 100644
--- a/libavcodec/sonic.c
+++ b/libavcodec/sonic.c
@@ -45,6 +45,7 @@
#define RIGHT_SIDE 2
typedef struct SonicContext {
+ int version;
int lossless, decorrelation;
int num_taps, downsampling;
@@ -499,7 +500,7 @@ static av_cold int sonic_encode_init(AVCodecContext *avctx)
{
SonicContext *s = avctx->priv_data;
PutBitContext pb;
- int i, version = 0;
+ int i;
if (avctx->channels > MAX_CHANNELS)
{
@@ -571,8 +572,8 @@ static av_cold int sonic_encode_init(AVCodecContext *avctx)
return AVERROR(ENOMEM);
init_put_bits(&pb, avctx->extradata, 16*8);
- put_bits(&pb, 2, version); // version
- if (version == 1)
+ put_bits(&pb, 2, s->version); // version
+ if (s->version == 1)
{
put_bits(&pb, 2, s->channels);
put_bits(&pb, 4, code_samplerate(s->samplerate));
@@ -589,7 +590,7 @@ static av_cold int sonic_encode_init(AVCodecContext *avctx)
avctx->extradata_size = put_bits_count(&pb)/8;
av_log(avctx, AV_LOG_INFO, "Sonic: ver: %d ls: %d dr: %d taps: %d block: %d frame: %d downsamp: %d\n",
- version, s->lossless, s->decorrelation, s->num_taps, s->block_align, s->frame_size, s->downsampling);
+ s->version, s->lossless, s->decorrelation, s->num_taps, s->block_align, s->frame_size, s->downsampling);
avctx->frame_size = s->block_align*s->downsampling;
@@ -747,7 +748,7 @@ static av_cold int sonic_decode_init(AVCodecContext *avctx)
{
SonicContext *s = avctx->priv_data;
GetBitContext gb;
- int i, version;
+ int i;
s->channels = avctx->channels;
s->samplerate = avctx->sample_rate;
@@ -760,14 +761,14 @@ static av_cold int sonic_decode_init(AVCodecContext *avctx)
init_get_bits8(&gb, avctx->extradata, avctx->extradata_size);
- version = get_bits(&gb, 2);
- if (version > 1)
+ s->version = get_bits(&gb, 2);
+ if (s->version > 1)
{
av_log(avctx, AV_LOG_ERROR, "Unsupported Sonic version, please report\n");
return AVERROR_INVALIDDATA;
}
- if (version == 1)
+ if (s->version == 1)
{
s->channels = get_bits(&gb, 2);
s->samplerate = samplerate_table[get_bits(&gb, 4)];
@@ -805,7 +806,7 @@ static av_cold int sonic_decode_init(AVCodecContext *avctx)
// avctx->frame_size = s->block_align;
av_log(avctx, AV_LOG_INFO, "Sonic: ver: %d ls: %d dr: %d taps: %d block: %d frame: %d downsamp: %d\n",
- version, s->lossless, s->decorrelation, s->num_taps, s->block_align, s->frame_size, s->downsampling);
+ s->version, s->lossless, s->decorrelation, s->num_taps, s->block_align, s->frame_size, s->downsampling);
// generate taps
s->tap_quant = av_calloc(s->num_taps, sizeof(*s->tap_quant));