diff --git a/ffmpeg.c b/ffmpeg.c index be93da9e4695b63cca3619ae7b76ea757e4dc06c..5cb702a9a6245036d2ecf399975e44685aea7854 100644 --- a/ffmpeg.c +++ b/ffmpeg.c @@ -1066,9 +1066,10 @@ static int output_packet(AVInputStream *ist, int ist_index, case CODEC_TYPE_AUDIO:{ if(pkt) samples= av_fast_realloc(samples, &samples_size, FFMAX(pkt->size, AVCODEC_MAX_AUDIO_FRAME_SIZE)); + data_size= samples_size; /* XXX: could avoid copy if PCM 16 bits with same endianness as CPU */ - ret = avcodec_decode_audio(ist->st->codec, samples, &data_size, + ret = avcodec_decode_audio2(ist->st->codec, samples, &data_size, ptr, len); if (ret < 0) goto fail_decode;