mpeg12enc: always set closed gop flag on the first gop
authorMarton Balint <cus@passwd.hu>
Sat, 29 Mar 2014 19:31:14 +0000 (20:31 +0100)
committerMarton Balint <cus@passwd.hu>
Tue, 1 Apr 2014 18:52:37 +0000 (20:52 +0200)
Improves compatibility with XDCAM HD formats. It has been set for a long time
in ffmbc.

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Marton Balint <cus@passwd.hu>
25 files changed:
libavcodec/mpeg12enc.c
tests/ref/lavf/ffm
tests/ref/lavf/gxf
tests/ref/lavf/mpg
tests/ref/lavf/mxf
tests/ref/lavf/ts
tests/ref/lavf/wtv
tests/ref/vsynth/vsynth1-mpeg1
tests/ref/vsynth/vsynth1-mpeg1b
tests/ref/vsynth/vsynth1-mpeg2
tests/ref/vsynth/vsynth1-mpeg2-422
tests/ref/vsynth/vsynth1-mpeg2-idct-int
tests/ref/vsynth/vsynth1-mpeg2-ilace
tests/ref/vsynth/vsynth1-mpeg2-ivlc-qprd
tests/ref/vsynth/vsynth1-mpeg2-thread
tests/ref/vsynth/vsynth1-mpeg2-thread-ivlc
tests/ref/vsynth/vsynth2-mpeg1
tests/ref/vsynth/vsynth2-mpeg1b
tests/ref/vsynth/vsynth2-mpeg2
tests/ref/vsynth/vsynth2-mpeg2-422
tests/ref/vsynth/vsynth2-mpeg2-idct-int
tests/ref/vsynth/vsynth2-mpeg2-ilace
tests/ref/vsynth/vsynth2-mpeg2-ivlc-qprd
tests/ref/vsynth/vsynth2-mpeg2-thread
tests/ref/vsynth/vsynth2-mpeg2-thread-ivlc

index f7f1986..af99ded 100644 (file)
@@ -350,7 +350,7 @@ static void mpeg1_encode_sequence_header(MpegEncContext *s)
         put_bits(&s->pb, 1, 1);
         put_bits(&s->pb, 6, (uint32_t)((time_code / fps) % 60));
         put_bits(&s->pb, 6, (uint32_t)((time_code % fps)));
-        put_bits(&s->pb, 1, !!(s->flags & CODEC_FLAG_CLOSED_GOP) || s->intra_only);
+        put_bits(&s->pb, 1, !!(s->flags & CODEC_FLAG_CLOSED_GOP) || s->intra_only || !s->gop_picture_number);
         put_bits(&s->pb, 1, 0);                     // broken link
     }
 }
index 7071866..c11350a 100644 (file)
@@ -1,3 +1,3 @@
-6f1443b952819cff1dae875529675e88 *./tests/data/lavf/lavf.ffm
+16cc0ee04b036c210b2fc85182d748e1 *./tests/data/lavf/lavf.ffm
 376832 ./tests/data/lavf/lavf.ffm
 ./tests/data/lavf/lavf.ffm CRC=0x000e23ae
index 14a2c87..d356f20 100644 (file)
@@ -1,9 +1,9 @@
-9c96119322262ed2c43b34fd415233cc *./tests/data/lavf/lavf.gxf
+7993da95d8bfe04832e27892c163e562 *./tests/data/lavf/lavf.gxf
 795876 ./tests/data/lavf/lavf.gxf
 ./tests/data/lavf/lavf.gxf CRC=0xda7cebbc
-260acc1c88a1706e5aaa74eff99ac389 *./tests/data/lavf/lavf.gxf
+9e873074b5c3ef1d80d233a38e7de156 *./tests/data/lavf/lavf.gxf
 794656 ./tests/data/lavf/lavf.gxf
 ./tests/data/lavf/lavf.gxf CRC=0x7f0c9089
-3cb8bab80b73a95f51e50989ccf06817 *./tests/data/lavf/lavf.gxf
+0638c4d073ac224608baaba16732b68f *./tests/data/lavf/lavf.gxf
 795876 ./tests/data/lavf/lavf.gxf
 ./tests/data/lavf/lavf.gxf CRC=0x5ade0285
index 9feff66..7aab14f 100644 (file)
@@ -1,9 +1,9 @@
-0a8c879bf813b6b758806088f29842dc *./tests/data/lavf/lavf.mpg
+01bbdea588da51ab4a9d1d26f3443c96 *./tests/data/lavf/lavf.mpg
 372736 ./tests/data/lavf/lavf.mpg
 ./tests/data/lavf/lavf.mpg CRC=0x000e23ae
-d9446ae7b49de006a5a0f052ea9333ca *./tests/data/lavf/lavf.mpg
+87b447b78a7d1141b9d41bb3aa50434d *./tests/data/lavf/lavf.mpg
 389120 ./tests/data/lavf/lavf.mpg
 ./tests/data/lavf/lavf.mpg CRC=0x60ba4ab9
-edfef790122870cf4652e8a92ca558a0 *./tests/data/lavf/lavf.mpg
+284f41c914df75c12de01e223d65f87f *./tests/data/lavf/lavf.mpg
 372736 ./tests/data/lavf/lavf.mpg
 ./tests/data/lavf/lavf.mpg CRC=0x000e23ae
index b1918f5..1390612 100644 (file)
@@ -1,9 +1,9 @@
-967f6ee9223c865328f4891465191108 *./tests/data/lavf/lavf.mxf
+103403355e6dec356c7342ee2d034691 *./tests/data/lavf/lavf.mxf
 525369 ./tests/data/lavf/lavf.mxf
 ./tests/data/lavf/lavf.mxf CRC=0xdbfff6f1
-a085845074129d732fc6adb5601e3b5e *./tests/data/lavf/lavf.mxf
+f61e4c8481610f30b2f5e2279e254f6b *./tests/data/lavf/lavf.mxf
 560697 ./tests/data/lavf/lavf.mxf
 ./tests/data/lavf/lavf.mxf CRC=0x3ff4178e
-ce535b606423d117675213b16275206a *./tests/data/lavf/lavf.mxf
+a586dad4ff94136be460afb02ff6101e *./tests/data/lavf/lavf.mxf
 525369 ./tests/data/lavf/lavf.mxf
 ./tests/data/lavf/lavf.mxf CRC=0xdbfff6f1
index 02921ed..d457dfa 100644 (file)
@@ -1,3 +1,3 @@
-a876e6bde8a2e8c7eca878869433ad3b *./tests/data/lavf/lavf.ts
+e0738e00907d371ffbdee5caeab4277d *./tests/data/lavf/lavf.ts
 407020 ./tests/data/lavf/lavf.ts
 ./tests/data/lavf/lavf.ts CRC=0x71287e25
index 034a0f5..dd55af7 100644 (file)
@@ -1,3 +1,3 @@
-363b349a85c9642bcc65d4296a5cab46 *./tests/data/lavf/lavf.wtv
+fc6436e36e32a2c5c01f3e31df1c2cd1 *./tests/data/lavf/lavf.wtv
 413696 ./tests/data/lavf/lavf.wtv
 ./tests/data/lavf/lavf.wtv CRC=0x71287e25
index b350cda..902b201 100644 (file)
@@ -1,4 +1,4 @@
-490e08209e30f162cf3f2a6f2e49c7ce *tests/data/fate/vsynth1-mpeg1.mpeg1video
+746ae4adb7d1921800b9cc30257d7231 *tests/data/fate/vsynth1-mpeg1.mpeg1video
 711835 tests/data/fate/vsynth1-mpeg1.mpeg1video
 c126c7dd12e7161df192d253e3100475 *tests/data/fate/vsynth1-mpeg1.out.rawvideo
 stddev:    7.63 PSNR: 30.48 MAXDIFF:   84 bytes:  7603200/  7603200
index 5c9e3c1..6d7afa4 100644 (file)
@@ -1,4 +1,4 @@
-fc095c7816920052fd0b91329c60cf29 *tests/data/fate/vsynth1-mpeg1b.mpeg1video
+f99bb6797faddeb48863a49a244793fc *tests/data/fate/vsynth1-mpeg1b.mpeg1video
 1031387 tests/data/fate/vsynth1-mpeg1b.mpeg1video
 22289cbbeb1e40c5fd68dcc73a07d8f5 *tests/data/fate/vsynth1-mpeg1b.out.rawvideo
 stddev:    6.30 PSNR: 32.13 MAXDIFF:   75 bytes:  7603200/  7603200
index 8dbc88b..0f06f38 100644 (file)
@@ -1,4 +1,4 @@
-5434d2fbac67dc1a910883c9c04644fa *tests/data/fate/vsynth1-mpeg2.mpeg2video
+89d9481c12d2342e256b322d317e81c4 *tests/data/fate/vsynth1-mpeg2.mpeg2video
 728400 tests/data/fate/vsynth1-mpeg2.mpeg2video
 66c2a14725ba0a6f1535b9a62768977b *tests/data/fate/vsynth1-mpeg2.out.rawvideo
 stddev:    7.65 PSNR: 30.45 MAXDIFF:   84 bytes:  7603200/  7603200
index bb0dce7..e936ba4 100644 (file)
@@ -1,4 +1,4 @@
-0af0a148bf44bed5d260cafae6cc53e7 *tests/data/fate/vsynth1-mpeg2-422.mpeg2video
+6e135a1a27235a320311a932147846b4 *tests/data/fate/vsynth1-mpeg2-422.mpeg2video
 730780 tests/data/fate/vsynth1-mpeg2-422.mpeg2video
 0273cd8463d1fc115378748239951560 *tests/data/fate/vsynth1-mpeg2-422.out.rawvideo
 stddev:   10.27 PSNR: 27.90 MAXDIFF:  162 bytes:  7603200/  7603200
index dd72d71..89356d0 100644 (file)
@@ -1,4 +1,4 @@
-4c067397b504d65532d7779cd36f3f88 *tests/data/fate/vsynth1-mpeg2-idct-int.mpeg2video
+b63161625d83d39c9114c7018cac5e9b *tests/data/fate/vsynth1-mpeg2-idct-int.mpeg2video
 725668 tests/data/fate/vsynth1-mpeg2-idct-int.mpeg2video
 8130f71a467315c9e7bd1a25a01dbb23 *tests/data/fate/vsynth1-mpeg2-idct-int.out.rawvideo
 stddev:    7.65 PSNR: 30.45 MAXDIFF:   80 bytes:  7603200/  7603200
index b83b04c..b9144b6 100644 (file)
@@ -1,4 +1,4 @@
-8492b04953b04dbef51cbe065f894e47 *tests/data/fate/vsynth1-mpeg2-ilace.mpeg2video
+a92e79aa97a2d6b3b48b6cd9ceee1701 *tests/data/fate/vsynth1-mpeg2-ilace.mpeg2video
 738127 tests/data/fate/vsynth1-mpeg2-ilace.mpeg2video
 d0f2fab8d3a3fb8bc67aca068447d2db *tests/data/fate/vsynth1-mpeg2-ilace.out.rawvideo
 stddev:    7.67 PSNR: 30.43 MAXDIFF:   84 bytes:  7603200/  7603200
index 4e00f0a..392f9bb 100644 (file)
@@ -1,4 +1,4 @@
-f5e8917781d576d0721d44a3111d3efa *tests/data/fate/vsynth1-mpeg2-ivlc-qprd.mpeg2video
+2e5882eeaaae088750d9854c93bbf68e *tests/data/fate/vsynth1-mpeg2-ivlc-qprd.mpeg2video
 783518 tests/data/fate/vsynth1-mpeg2-ivlc-qprd.mpeg2video
 0876d78f40971c5a8eb2367cbd27c5a6 *tests/data/fate/vsynth1-mpeg2-ivlc-qprd.out.rawvideo
 stddev:   10.07 PSNR: 28.07 MAXDIFF:  165 bytes:  7603200/  7603200
index fd56bf0..5f750b9 100644 (file)
@@ -1,4 +1,4 @@
-c52f961dd53263cd9e7785a0d46949b7 *tests/data/fate/vsynth1-mpeg2-thread.mpeg2video
+b4026056b8b903c37f6adfe2cd2d1894 *tests/data/fate/vsynth1-mpeg2-thread.mpeg2video
 801214 tests/data/fate/vsynth1-mpeg2-thread.mpeg2video
 d433c9b07b40b0d6c4fd5426699efb7f *tests/data/fate/vsynth1-mpeg2-thread.out.rawvideo
 stddev:    7.63 PSNR: 30.48 MAXDIFF:  110 bytes:  7603200/  7603200
index 235dfe5..618125c 100644 (file)
@@ -1,4 +1,4 @@
-6c5ac0817a7fc501ed6d91e9b9899ed3 *tests/data/fate/vsynth1-mpeg2-thread-ivlc.mpeg2video
+08310d12ac77af11a0ac564552322e08 *tests/data/fate/vsynth1-mpeg2-thread-ivlc.mpeg2video
 791673 tests/data/fate/vsynth1-mpeg2-thread-ivlc.mpeg2video
 d433c9b07b40b0d6c4fd5426699efb7f *tests/data/fate/vsynth1-mpeg2-thread-ivlc.out.rawvideo
 stddev:    7.63 PSNR: 30.48 MAXDIFF:  110 bytes:  7603200/  7603200
index bc94fbc..9e3e999 100644 (file)
@@ -1,4 +1,4 @@
-c6f1a98dd7201b1e5d7f0f69d7e9577d *tests/data/fate/vsynth2-mpeg1.mpeg1video
+a77a8eb6e2ad32a5b20b41abda16f4c1 *tests/data/fate/vsynth2-mpeg1.mpeg1video
 192794 tests/data/fate/vsynth2-mpeg1.mpeg1video
 b3584042c60385e0fb988b8ec5b36409 *tests/data/fate/vsynth2-mpeg1.out.rawvideo
 stddev:    4.95 PSNR: 34.22 MAXDIFF:   57 bytes:  7603200/  7603200
index f4864a5..c2fb217 100644 (file)
@@ -1,4 +1,4 @@
-8300bede250c3987f1c5bc9bbd1d78e1 *tests/data/fate/vsynth2-mpeg1b.mpeg1video
+333395b113b8045bac4e3fd90839ca6a *tests/data/fate/vsynth2-mpeg1b.mpeg1video
 225201 tests/data/fate/vsynth2-mpeg1b.mpeg1video
 f17fb3eef4ed3d03eeaaee45b217f7a5 *tests/data/fate/vsynth2-mpeg1b.out.rawvideo
 stddev:    4.10 PSNR: 35.86 MAXDIFF:   59 bytes:  7603200/  7603200
index b5f5af9..bceb954 100644 (file)
@@ -1,4 +1,4 @@
-81fc934ad6901b6c37a59b94ccda8de7 *tests/data/fate/vsynth2-mpeg2.mpeg2video
+6071414a26d41ae9c4cc5477d8ca19eb *tests/data/fate/vsynth2-mpeg2.mpeg2video
 198673 tests/data/fate/vsynth2-mpeg2.mpeg2video
 9efe4846a75d9b7387d1e3bb1e5db29a *tests/data/fate/vsynth2-mpeg2.out.rawvideo
 stddev:    4.96 PSNR: 34.20 MAXDIFF:   59 bytes:  7603200/  7603200
index 14d751b..b4a896c 100644 (file)
@@ -1,4 +1,4 @@
-99ba26ba009e0172855a9dadaefef2d9 *tests/data/fate/vsynth2-mpeg2-422.mpeg2video
+521ec92c0b8672011a43dd13db98c400 *tests/data/fate/vsynth2-mpeg2-422.mpeg2video
 356431 tests/data/fate/vsynth2-mpeg2-422.mpeg2video
 51ca353620f85db8b5b1c56f1a275add *tests/data/fate/vsynth2-mpeg2-422.out.rawvideo
 stddev:    3.15 PSNR: 38.14 MAXDIFF:   49 bytes:  7603200/  7603200
index 83874b1..69d5c86 100644 (file)
@@ -1,4 +1,4 @@
-f979bcca866e6e4cad5dc6cb06e56cfb *tests/data/fate/vsynth2-mpeg2-idct-int.mpeg2video
+505371e1b10f5af01b63b3f57606b26e *tests/data/fate/vsynth2-mpeg2-idct-int.mpeg2video
 198041 tests/data/fate/vsynth2-mpeg2-idct-int.mpeg2video
 92794e70e4a19a494f10efe353d9895d *tests/data/fate/vsynth2-mpeg2-idct-int.out.rawvideo
 stddev:    4.97 PSNR: 34.19 MAXDIFF:   58 bytes:  7603200/  7603200
index 2f9a306..5c37c34 100644 (file)
@@ -1,4 +1,4 @@
-a6f4c4dbd7f73b73e876fbd7a9650610 *tests/data/fate/vsynth2-mpeg2-ilace.mpeg2video
+dbc7dd0272f3711f50722f4753e3bfb0 *tests/data/fate/vsynth2-mpeg2-ilace.mpeg2video
 204576 tests/data/fate/vsynth2-mpeg2-ilace.mpeg2video
 d69be0d4ba1cb9c1fef9fb0d94a912ba *tests/data/fate/vsynth2-mpeg2-ilace.out.rawvideo
 stddev:    4.98 PSNR: 34.18 MAXDIFF:   65 bytes:  7603200/  7603200
index 30e129b..dea3f94 100644 (file)
@@ -1,4 +1,4 @@
-1ba5efeb53fab7b4b71edc96d86f6c91 *tests/data/fate/vsynth2-mpeg2-ivlc-qprd.mpeg2video
+5731a196498d4e8097c0ebe57e383ef6 *tests/data/fate/vsynth2-mpeg2-ivlc-qprd.mpeg2video
 244694 tests/data/fate/vsynth2-mpeg2-ivlc-qprd.mpeg2video
 b26e21599dee48a174bdbc40b2817e55 *tests/data/fate/vsynth2-mpeg2-ivlc-qprd.out.rawvideo
 stddev:    4.15 PSNR: 35.76 MAXDIFF:   74 bytes:  7603200/  7603200
index 40552fe..335d1c6 100644 (file)
@@ -1,4 +1,4 @@
-38af1e2261ae363abea5818db74ea241 *tests/data/fate/vsynth2-mpeg2-thread.mpeg2video
+9e734d384b4234d075203dffffa5174c *tests/data/fate/vsynth2-mpeg2-thread.mpeg2video
 179656 tests/data/fate/vsynth2-mpeg2-thread.mpeg2video
 f8f084b7f51fbe4f82d57b8aeec17edf *tests/data/fate/vsynth2-mpeg2-thread.out.rawvideo
 stddev:    4.72 PSNR: 34.65 MAXDIFF:   72 bytes:  7603200/  7603200
index 9bcac8b..67a380a 100644 (file)
@@ -1,4 +1,4 @@
-9cb6b65e05fa854da2ad08b34fe032aa *tests/data/fate/vsynth2-mpeg2-thread-ivlc.mpeg2video
+39ae4e15e3da14218ebf250180badd92 *tests/data/fate/vsynth2-mpeg2-thread-ivlc.mpeg2video
 178807 tests/data/fate/vsynth2-mpeg2-thread-ivlc.mpeg2video
 f8f084b7f51fbe4f82d57b8aeec17edf *tests/data/fate/vsynth2-mpeg2-thread-ivlc.out.rawvideo
 stddev:    4.72 PSNR: 34.65 MAXDIFF:   72 bytes:  7603200/  7603200