Skip to content

Commit

Permalink
mpeg12enc: always set closed gop flag on the first gop
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
cus committed Apr 1, 2014
1 parent 51c61e6 commit a0cf877
Show file tree
Hide file tree
Showing 25 changed files with 31 additions and 31 deletions.
2 changes: 1 addition & 1 deletion libavcodec/mpeg12enc.c
Original file line number Diff line number Diff line change
Expand Up @@ -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
}
}
Expand Down
2 changes: 1 addition & 1 deletion tests/ref/lavf/ffm
Original file line number Diff line number Diff line change
@@ -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
6 changes: 3 additions & 3 deletions tests/ref/lavf/gxf
Original file line number Diff line number Diff line change
@@ -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
6 changes: 3 additions & 3 deletions tests/ref/lavf/mpg
Original file line number Diff line number Diff line change
@@ -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
6 changes: 3 additions & 3 deletions tests/ref/lavf/mxf
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/lavf/ts
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/lavf/wtv
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth1-mpeg1
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth1-mpeg1b
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth1-mpeg2
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth1-mpeg2-422
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth1-mpeg2-idct-int
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth1-mpeg2-ilace
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth1-mpeg2-ivlc-qprd
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth1-mpeg2-thread
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth1-mpeg2-thread-ivlc
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth2-mpeg1
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth2-mpeg1b
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth2-mpeg2
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth2-mpeg2-422
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth2-mpeg2-idct-int
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth2-mpeg2-ilace
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth2-mpeg2-ivlc-qprd
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth2-mpeg2-thread
Original file line number Diff line number Diff line change
@@ -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
2 changes: 1 addition & 1 deletion tests/ref/vsynth/vsynth2-mpeg2-thread-ivlc
Original file line number Diff line number Diff line change
@@ -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

0 comments on commit a0cf877

Please sign in to comment.