Browse Source

sonicdec: update to new buffer API

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n2.0
Michael Niedermayer 13 years ago
parent
commit
4aa8503399
1 changed files with 4 additions and 8 deletions
  1. +4
    -8
      libavcodec/sonic.c

+ 4
- 8
libavcodec/sonic.c View File

@@ -45,7 +45,6 @@
#define RIGHT_SIDE 2

typedef struct SonicContext {
AVFrame frame;
int lossless, decorrelation;

int num_taps, downsampling;
@@ -767,9 +766,6 @@ static av_cold int sonic_decode_init(AVCodecContext *avctx)
s->channels = avctx->channels;
s->samplerate = avctx->sample_rate;

avcodec_get_frame_defaults(&s->frame);
avctx->coded_frame = &s->frame;

if (!avctx->extradata)
{
av_log(avctx, AV_LOG_ERROR, "No mandatory headers present\n");
@@ -879,13 +875,14 @@ static int sonic_decode_frame(AVCodecContext *avctx,
GetBitContext gb;
int i, quant, ch, j, ret;
int16_t *samples;
AVFrame *frame = data;

if (buf_size == 0) return 0;

s->frame.nb_samples = s->frame_size / avctx->channels;
if ((ret = ff_get_buffer(avctx, &s->frame, 0)) < 0)
frame->nb_samples = s->frame_size / avctx->channels;
if ((ret = ff_get_buffer(avctx, frame, 0)) < 0)
return ret;
samples = (int16_t *)s->frame.data[0];
samples = (int16_t *)frame->data[0];

// av_log(NULL, AV_LOG_INFO, "buf_size: %d\n", buf_size);

@@ -958,7 +955,6 @@ static int sonic_decode_frame(AVCodecContext *avctx,
align_get_bits(&gb);

*got_frame_ptr = 1;
*(AVFrame*)data = s->frame;

return (get_bits_count(&gb)+7)/8;
}


Loading…
Cancel
Save