Commit db7580b4 authored by Michael Niedermayer's avatar Michael Niedermayer

Merge commit 'a097f004'

* commit 'a097f004':
  mpeg12dec: move first_slice from MpegEncContext to Mpeg1Context

Conflicts:
	libavcodec/mpeg12dec.c
Merged-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parents 85d3bc33 a097f004
...@@ -53,6 +53,7 @@ typedef struct Mpeg1Context { ...@@ -53,6 +53,7 @@ typedef struct Mpeg1Context {
AVRational frame_rate_ext; ///< MPEG-2 specific framerate modificator AVRational frame_rate_ext; ///< MPEG-2 specific framerate modificator
int sync; ///< Did we reach a sync point like a GOP/SEQ/KEYFrame? int sync; ///< Did we reach a sync point like a GOP/SEQ/KEYFrame?
int tmpgexs; int tmpgexs;
int first_slice;
int extradata_decoded; int extradata_decoded;
} Mpeg1Context; } Mpeg1Context;
...@@ -1955,7 +1956,7 @@ FF_ENABLE_DEPRECATION_WARNINGS ...@@ -1955,7 +1956,7 @@ FF_ENABLE_DEPRECATION_WARNINGS
#endif /* FF_API_XVMC */ #endif /* FF_API_XVMC */
/* end of slice reached */ /* end of slice reached */
if (/*s->mb_y << field_pic == s->mb_height &&*/ !s->first_field && !s->first_slice) { if (/*s->mb_y << field_pic == s->mb_height &&*/ !s->first_field && !s1->first_slice) {
/* end of image */ /* end of image */
ff_er_frame_end(&s->er); ff_er_frame_end(&s->er);
...@@ -2352,7 +2353,7 @@ static int decode_chunks(AVCodecContext *avctx, ...@@ -2352,7 +2353,7 @@ static int decode_chunks(AVCodecContext *avctx,
/* we have a complete image: we try to decompress it */ /* we have a complete image: we try to decompress it */
if (mpeg1_decode_picture(avctx, buf_ptr, input_size) < 0) if (mpeg1_decode_picture(avctx, buf_ptr, input_size) < 0)
s2->pict_type = 0; s2->pict_type = 0;
s2->first_slice = 1; s->first_slice = 1;
last_code = PICTURE_START_CODE; last_code = PICTURE_START_CODE;
} else { } else {
av_log(avctx, AV_LOG_ERROR, "ignoring pic after %X\n", last_code); av_log(avctx, AV_LOG_ERROR, "ignoring pic after %X\n", last_code);
...@@ -2496,9 +2497,9 @@ static int decode_chunks(AVCodecContext *avctx, ...@@ -2496,9 +2497,9 @@ static int decode_chunks(AVCodecContext *avctx,
break; break;
} }
if (s2->first_slice) { if (s->first_slice) {
skip_frame = 0; skip_frame = 0;
s2->first_slice = 0; s->first_slice = 0;
if (mpeg_field_start(s2, buf, buf_size) < 0) if (mpeg_field_start(s2, buf, buf_size) < 0)
return -1; return -1;
} }
......
...@@ -685,7 +685,6 @@ typedef struct MpegEncContext { ...@@ -685,7 +685,6 @@ typedef struct MpegEncContext {
int progressive_frame; int progressive_frame;
int full_pel[2]; int full_pel[2];
int interlaced_dct; int interlaced_dct;
int first_slice;
int first_field; ///< is 1 for the first field of a field picture 0 otherwise int first_field; ///< is 1 for the first field of a field picture 0 otherwise
int drop_frame_timecode; ///< timecode is in drop frame format. int drop_frame_timecode; ///< timecode is in drop frame format.
int scan_offset; ///< reserve space for SVCD scan offset user data. int scan_offset; ///< reserve space for SVCD scan offset user data.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment