[x264-devel] Force keyint-min 1 with Blu-ray

Jason Garrett-Glaser git at videolan.org
Sat Feb 4 21:10:46 CET 2012


x264 | branch: master | Jason Garrett-Glaser <jason at x264.com> | Sat Jan 21 12:54:40 2012 -0800| [236763e39d8a756db0e8179745396ed88c1bfc2d] | committer: Jason Garrett-Glaser

Force keyint-min 1 with Blu-ray
Fixes an issue with referencing across I-frames that's prohibited in Blu-ray for some godforsaken reason.

> http://git.videolan.org/gitweb.cgi/x264.git/?a=commit;h=236763e39d8a756db0e8179745396ed88c1bfc2d
---

 encoder/encoder.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/encoder/encoder.c b/encoder/encoder.c
index 21f3198..bf7a4f2 100644
--- a/encoder/encoder.c
+++ b/encoder/encoder.c
@@ -643,6 +643,8 @@ static int x264_validate_parameters( x264_t *h, int b_open )
         h->param.b_intra_refresh = 0;
         h->param.i_frame_reference = X264_MIN( h->param.i_frame_reference, 6 );
         h->param.i_dpb_size = X264_MIN( h->param.i_dpb_size, 6 );
+        /* Don't use I-frames, because Blu-ray treats them the same as IDR. */
+        h->param.i_keyint_min = 1;
         /* Due to the proliferation of broken players that don't handle dupes properly. */
         h->param.analyse.i_weighted_pred = X264_MIN( h->param.analyse.i_weighted_pred, X264_WEIGHTP_SIMPLE );
         if( h->param.b_fake_interlaced )



More information about the x264-devel mailing list