OSDN Git Service

hurry_up=5 support
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 18 Nov 2002 09:28:21 +0000 (09:28 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 18 Nov 2002 09:28:21 +0000 (09:28 +0000)
Originally committed as revision 1219 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/mpeg12.c

index 5a87f42..73c76e1 100644 (file)
@@ -1402,6 +1402,10 @@ static int mpeg1_decode_picture(AVCodecContext *avctx,
     ref = get_bits(&s->gb, 10); /* temporal ref */
     s->pict_type = get_bits(&s->gb, 3);
     dprintf("pict_type=%d number=%d\n", s->pict_type, s->picture_number);
+
+    avctx->pict_type= s->pict_type;
+    avctx->key_frame= s->pict_type == I_TYPE;
+
     skip_bits(&s->gb, 16);
     if (s->pict_type == P_TYPE || s->pict_type == B_TYPE) {
         s->full_pel[0] = get_bits1(&s->gb);
@@ -1911,7 +1915,7 @@ static int mpeg_decode_frame(AVCodecContext *avctx,
                     break;
                 default:
                     if (start_code >= SLICE_MIN_START_CODE &&
-                        start_code <= SLICE_MAX_START_CODE) {
+                        start_code <= SLICE_MAX_START_CODE && s2->hurry_up<5) {
                         ret = mpeg_decode_slice(avctx, picture,
                                                 start_code, s->buffer, input_size);
                         if (ret == DECODE_SLICE_EOP) {