libavcodec: correct consumed bytes for decoders
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 21 May 2012 18:12:46 +0000 (20:12 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 21 May 2012 18:34:32 +0000 (20:34 +0200)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/utils.c
tests/fate/audio.mak

index 3a858b9..15dd05a 100644 (file)
@@ -1482,8 +1482,11 @@ int attribute_align_arg avcodec_decode_video2(AVCodecContext *avctx, AVFrame *pi
         emms_c(); //needed to avoid an emms_c() call before every return;
 
         avctx->pkt = NULL;
-        if (did_split)
+        if (did_split) {
             ff_packet_free_side_data(&tmp);
+            if(ret == tmp.size)
+                ret = avpkt->size;
+        }
 
         if (*got_picture_ptr){
             avctx->frame_number++;
@@ -1583,8 +1586,11 @@ int attribute_align_arg avcodec_decode_audio4(AVCodecContext *avctx,
         }
 
         avctx->pkt = NULL;
-        if (did_split)
+        if (did_split) {
             ff_packet_free_side_data(&tmp);
+            if(ret == tmp.size)
+                ret = avpkt->size;
+        }
     }
     return ret;
 }
index 33356da..5cf457e 100644 (file)
@@ -40,10 +40,8 @@ fate-nellymoser-aref-encode: CMD = enc_dec_pcm flv wav s16le $(REF) -c:a nellymo
 fate-nellymoser-aref-encode: CMP = stddev
 fate-nellymoser-aref-encode: REF = ./tests/data/acodec-16000-1.ref.wav
 fate-nellymoser-aref-encode: CMP_SHIFT = -1172
-#fate-nellymoser-aref-encode: CMP_TARGET = 9617
-#fate-nellymoser-aref-encode: SIZE_TOLERANCE = 268
-fate-nellymoser-aref-encode: CMP_TARGET = 10216
-fate-nellymoser-aref-encode: SIZE_TOLERANCE = 1300
+fate-nellymoser-aref-encode: CMP_TARGET = 9617
+fate-nellymoser-aref-encode: SIZE_TOLERANCE = 268
 
 FATE_SAMPLES_AUDIO += fate-sierra-vmd-audio
 fate-sierra-vmd-audio: CMD = framecrc -i $(SAMPLES)/vmd/12.vmd -vn