OSDN Git Service

Use forced key frames when encoding with libxvid.
authorNicolas George <nicola.george@normalesup.org>
Fri, 22 Oct 2010 18:01:48 +0000 (18:01 +0000)
committerCarl Eugen Hoyos <cehoyos@rainbow.studorg.tuwien.ac.at>
Fri, 22 Oct 2010 18:01:48 +0000 (18:01 +0000)
Patch by Nicolas George, nicolas D george A normalesup D org

Originally committed as revision 25550 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/libxvidff.c

index f8aeb9c..f527354 100644 (file)
@@ -449,7 +449,11 @@ static int xvid_encode_frame(AVCodecContext *avctx,
     xvid_enc_frame.vop_flags = x->vop_flags;
     xvid_enc_frame.vol_flags = x->vol_flags;
     xvid_enc_frame.motion = x->me_flags;
-    xvid_enc_frame.type = XVID_TYPE_AUTO;
+    xvid_enc_frame.type =
+        picture->pict_type == FF_I_TYPE ? XVID_TYPE_IVOP :
+        picture->pict_type == FF_P_TYPE ? XVID_TYPE_PVOP :
+        picture->pict_type == FF_B_TYPE ? XVID_TYPE_BVOP :
+                                          XVID_TYPE_AUTO;
 
     /* Pixel aspect ratio setting */
     if (avctx->sample_aspect_ratio.num < 1 || avctx->sample_aspect_ratio.num > 255 ||