Browse Source

last frame decoding fix

Originally committed as revision 2074 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/v0.5
Michael Niedermayer 22 years ago
parent
commit
e9174ba460
2 changed files with 14 additions and 7 deletions
  1. +10
    -2
      libavcodec/h263dec.c
  2. +4
    -5
      libavcodec/mpeg12.c

+ 10
- 2
libavcodec/h263dec.c View File

@@ -401,9 +401,17 @@ uint64_t time= rdtsc();
s->flags= avctx->flags;

*data_size = 0;
/* no supplementary picture */
/* no supplementary picture */
if (buf_size == 0) {
/* special case for last picture */
if (s->low_delay==0 && s->next_picture_ptr) {
*pict= *(AVFrame*)s->next_picture_ptr;
s->next_picture_ptr= NULL;

*data_size = sizeof(AVFrame);
}

return 0;
}



+ 4
- 5
libavcodec/mpeg12.c View File

@@ -2231,12 +2231,11 @@ static int mpeg_decode_frame(AVCodecContext *avctx,
*data_size = 0;

/* special case for last picture */
if (buf_size == 0) {
if (s2->picture_number > 0) {
*picture= *(AVFrame*)&s2->next_picture;
if (buf_size == 0 && s2->low_delay==0 && s2->next_picture_ptr) {
*picture= *(AVFrame*)s2->next_picture_ptr;
s2->next_picture_ptr= NULL;

*data_size = sizeof(AVFrame);
}
*data_size = sizeof(AVFrame);
return 0;
}



Loading…
Cancel
Save