Browse code

libx264: handle closed GOP codec flag

Also update libx264 presets to keep closed gop as default.

Signed-off-by: Jindrich Makovicka <makovick@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>

Jindrich Makovicka authored on 2011/05/10 22:11:45
Showing 28 changed files
... ...
@@ -2891,8 +2891,8 @@ enabled libvpx     && {
2891 2891
     enabled libvpx_encoder && { check_lib2 "vpx/vpx_encoder.h vpx/vp8cx.h" vpx_codec_enc_init_ver -lvpx ||
2892 2892
                                 die "ERROR: libvpx encoder version must be >=0.9.1"; } }
2893 2893
 enabled libx264    && require  libx264 x264.h x264_encoder_encode -lx264 &&
2894
-                      { check_cpp_condition x264.h "X264_BUILD >= 99" ||
2895
-                        die "ERROR: libx264 version must be >= 0.99."; }
2894
+                      { check_cpp_condition x264.h "X264_BUILD >= 115" ||
2895
+                        die "ERROR: libx264 version must be >= 0.115."; }
2896 2896
 enabled libxavs    && require  libxavs xavs.h xavs_encoder_encode -lxavs
2897 2897
 enabled libxvid    && require  libxvid xvid.h xvid_global -lxvidcore
2898 2898
 enabled mlib       && require  mediaLib mlib_types.h mlib_VectorSub_S16_U8_Mod -lmlib
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4+partp8x8+partb8x8
5 5
 me_method=hex
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8-parti4x4-partp8x8-partb8x8
5 5
 me_method=dia
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4+partp8x8+partb8x8
5 5
 me_method=hex
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8-parti4x4-partp8x8-partb8x8
5 5
 me_method=dia
... ...
@@ -1,5 +1,5 @@
1 1
 coder=0
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8+parti4x4+partp8x8-partp4x4-partb8x8
5 5
 me_method=hex
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4+partp8x8+partp4x4-partb8x8
5 5
 me_method=esa
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8+parti4x4+partp8x8+partp4x4-partb8x8
5 5
 me_method=hex
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4+partp8x8+partp4x4-partb8x8
5 5
 me_method=umh
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4+partp8x8+partp4x4-partb8x8
5 5
 me_method=umh
... ...
@@ -1,5 +1,5 @@
1 1
 coder=0
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8-parti4x4-partp8x8-partp4x4-partb8x8
5 5
 me_method=dia
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4+partp8x8+partb8x8
5 5
 me_method=hex
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8-parti4x4-partp8x8-partb8x8
5 5
 me_method=dia
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4+partp8x8+partp4x4+partb8x8
5 5
 me_method=tesa
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4+partp8x8+partp4x4+partb8x8
5 5
 me_method=tesa
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4+partp8x8+partb8x8
5 5
 me_method=umh
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8-parti4x4-partp8x8-partb8x8
5 5
 me_method=dia
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4+partp8x8+partp4x4+partb8x8
5 5
 me_method=umh
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8-parti4x4-partp8x8-partb8x8
5 5
 me_method=dia
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4-partp8x8-partb8x8
5 5
 me_method=dia
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8-parti4x4-partp8x8-partb8x8
5 5
 me_method=dia
... ...
@@ -1,5 +1,5 @@
1 1
 coder=0
2
-flags=-loop
2
+flags=-loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8-parti4x4-partp8x8-partb8x8
5 5
 me_method=dia
... ...
@@ -1,5 +1,5 @@
1 1
 coder=0
2
-flags=-loop
2
+flags=-loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8-parti4x4-partp8x8-partb8x8
5 5
 me_method=dia
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4+partp8x8+partb8x8
5 5
 me_method=hex
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8-parti4x4-partp8x8-partb8x8
5 5
 me_method=dia
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=+parti8x8+parti4x4+partp8x8+partp4x4+partb8x8
5 5
 me_method=umh
... ...
@@ -1,5 +1,5 @@
1 1
 coder=1
2
-flags=+loop
2
+flags=+loop+cgop
3 3
 cmp=+chroma
4 4
 partitions=-parti8x8-parti4x4-partp8x8-partb8x8
5 5
 me_method=dia
... ...
@@ -298,6 +298,8 @@ static av_cold int X264_init(AVCodecContext *avctx)
298 298
 
299 299
     x4->params.b_interlaced   = avctx->flags & CODEC_FLAG_INTERLACED_DCT;
300 300
 
301
+    x4->params.b_open_gop     = !(avctx->flags & CODEC_FLAG_CLOSED_GOP);
302
+
301 303
     x4->params.i_slice_count  = avctx->slices;
302 304
 
303 305
     x4->params.vui.b_fullrange = avctx->pix_fmt == PIX_FMT_YUVJ420P;