mirror of
https://github.com/xenia-project/FFmpeg.git
synced 2024-11-28 14:01:27 +00:00
sonicdec: update to new buffer API
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
85d7f54662
commit
4aa8503399
@ -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…
Reference in New Issue
Block a user