changeset 1818:0c28d35086f5 libavformat

use avcodec_decode_audio2
author bcoudurier
date Tue, 27 Feb 2007 13:07:38 +0000
parents a94e1560b026
children 5e4bfdf0ecaf
files utils.c
diffstat 1 files changed, 5 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/utils.c	Tue Feb 27 00:18:38 2007 +0000
+++ b/utils.c	Tue Feb 27 13:07:38 2007 +0000
@@ -1750,7 +1750,7 @@
 {
     int16_t *samples;
     AVCodec *codec;
-    int got_picture, ret=0;
+    int got_picture, data_size, ret=0;
     AVFrame picture;
 
   if(!st->codec->codec){
@@ -1769,11 +1769,12 @@
                                    &got_picture, (uint8_t *)data, size);
         break;
     case CODEC_TYPE_AUDIO:
-        samples = av_malloc(AVCODEC_MAX_AUDIO_FRAME_SIZE);
+        data_size = FFMAX(size, AVCODEC_MAX_AUDIO_FRAME_SIZE);
+        samples = av_malloc(data_size);
         if (!samples)
             goto fail;
-        ret = avcodec_decode_audio(st->codec, samples,
-                                   &got_picture, (uint8_t *)data, size);
+        ret = avcodec_decode_audio2(st->codec, samples,
+                                    &data_size, (uint8_t *)data, size);
         av_free(samples);
         break;
     default: