This is an automated email from the git hooks/post-receive script.

Git pushed a commit to branch master
in repository ffmpeg.

commit 3b5b6298fbf62b4dabf6f8c393ee4deb584246a9
Author:     guy-with-a-why <[email protected]>
AuthorDate: Fri Aug 28 10:25:14 2026 +0100
Commit:     Timo Rothenpieler <[email protected]>
CommitDate: Mon Aug 31 18:13:21 2026 +0000

    fate/h264: add slice data partitioning tests
    
    Three JM-encoded streams: all three partitions present, partition C
    legitimately absent, and constrained_intra_pred_flag set, which is the
    case that exercises the nC derivation of 9.2.1.
    
    The last stream is decoded both ways. -bug 0 selects the literal 9.2.1
    reading, which desynchronises the residual of a JM-encoded stream; the
    concealed output then depends on the thread count, so that test pins
    threads to 1.
    
    Signed-off-by: guy-with-a-why <[email protected]>
---
 tests/fate/h264.mak                              | 12 ++++++++++++
 tests/ref/fate/h264-data-partitioning            | 15 +++++++++++++++
 tests/ref/fate/h264-data-partitioning-ab         | 15 +++++++++++++++
 tests/ref/fate/h264-data-partitioning-cip        | 15 +++++++++++++++
 tests/ref/fate/h264-data-partitioning-cip-strict | 15 +++++++++++++++
 5 files changed, 72 insertions(+)

diff --git a/tests/fate/h264.mak b/tests/fate/h264.mak
index dacaaab274..e55b06bd19 100644
--- a/tests/fate/h264.mak
+++ b/tests/fate/h264.mak
@@ -193,6 +193,10 @@ FATE_H264_REINIT_TESTS := large_420_8-to-small_420_8       
             \
                           small_422_9-to-small_420_9                    \
 
 FATE_H264  := $(FATE_H264:%=fate-h264-conformance-%)                    \
+              fate-h264-data-partitioning                               \
+              fate-h264-data-partitioning-ab                            \
+              fate-h264-data-partitioning-cip                           \
+              fate-h264-data-partitioning-cip-strict                    \
               fate-h264-intra-refresh-recovery                          \
               fate-h264-lossless                                        \
               fate-h264-3386                                            \
@@ -465,6 +469,14 @@ fate-h264-xavc-4389:                              CMD = 
framecrc -i $(TARGET_SAM
 fate-h264-attachment-631:                         CMD = framecrc -i 
$(TARGET_SAMPLES)/h264/attachment631-small.mp4 -an -max_error_rate 0.96
 fate-h264-skip-nokey:                             CMD = framecrc -skip_frame 
nokey -i $(TARGET_SAMPLES)/h264/h264_intra_first-small.ts -vf scale -af 
aresample
 fate-h264-skip-nointra:                           CMD = framecrc -skip_frame 
nointra -i $(TARGET_SAMPLES)/h264/h264_intra_first-small.ts -vf scale -af 
aresample
+# slice data partitioning: A+B+C, and with partition C legitimately absent
+fate-h264-data-partitioning:                      CMD = framecrc -i 
$(TARGET_SAMPLES)/h264/data_partitioning.h264
+fate-h264-data-partitioning-ab:                   CMD = framecrc -i 
$(TARGET_SAMPLES)/h264/data_partitioning_ab.h264
+# constrained_intra_pred_flag=1, which changes the nC derivation (9.2.1)
+fate-h264-data-partitioning-cip:                  CMD = framecrc -bug 
h264_dp_nnz -i $(TARGET_SAMPLES)/h264/data_partitioning_cip.h264
+# same stream read the way 9.2.1 is written instead of the way JM does it; that
+# desynchronises the residual, so pin the threads to keep concealment stable
+fate-h264-data-partitioning-cip-strict:           CMD = threads=1 framecrc 
-bug 0 -i $(TARGET_SAMPLES)/h264/data_partitioning_cip.h264
 fate-h264-intra-refresh-recovery:                 CMD = framecrc -i 
$(TARGET_SAMPLES)/h264/intra_refresh.h264 -frames:v 10
 fate-h264-invalid-ref-mod:                        CMD = framecrc -i 
$(TARGET_SAMPLES)/h264/h264refframeregression.mp4 -an -frames 10 -pix_fmt 
yuv420p10le -vf scale
 fate-h264-lossless:                               CMD = framecrc -i 
$(TARGET_SAMPLES)/h264/lossless.h264
diff --git a/tests/ref/fate/h264-data-partitioning 
b/tests/ref/fate/h264-data-partitioning
new file mode 100644
index 0000000000..00a1b45f92
--- /dev/null
+++ b/tests/ref/fate/h264-data-partitioning
@@ -0,0 +1,15 @@
+#tb 0: 1/25
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 176x144
+#sar 0: 0/1
+0,          0,          0,        1,    38016, 0x1b6c95f8
+0,          1,          1,        1,    38016, 0x3321d0ef
+0,          2,          2,        1,    38016, 0x8ab31546
+0,          3,          3,        1,    38016, 0x978d5bc8
+0,          4,          4,        1,    38016, 0xe3c1d02b
+0,          5,          5,        1,    38016, 0x11bafd04
+0,          6,          6,        1,    38016, 0x8760741a
+0,          7,          7,        1,    38016, 0x565ba13f
+0,          8,          8,        1,    38016, 0xdf66f465
+0,          9,          9,        1,    38016, 0x54bf06b8
diff --git a/tests/ref/fate/h264-data-partitioning-ab 
b/tests/ref/fate/h264-data-partitioning-ab
new file mode 100644
index 0000000000..6a430edda5
--- /dev/null
+++ b/tests/ref/fate/h264-data-partitioning-ab
@@ -0,0 +1,15 @@
+#tb 0: 1/25
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 176x144
+#sar 0: 0/1
+0,          0,          0,        1,    38016, 0x1b6c95f8
+0,          1,          1,        1,    38016, 0xc732de4b
+0,          2,          2,        1,    38016, 0x34875d49
+0,          3,          3,        1,    38016, 0x76906edf
+0,          4,          4,        1,    38016, 0xe673e1a7
+0,          5,          5,        1,    38016, 0xc2f1f465
+0,          6,          6,        1,    38016, 0x08f49ac4
+0,          7,          7,        1,    38016, 0xee04b8ff
+0,          8,          8,        1,    38016, 0xf45202b2
+0,          9,          9,        1,    38016, 0x40051425
diff --git a/tests/ref/fate/h264-data-partitioning-cip 
b/tests/ref/fate/h264-data-partitioning-cip
new file mode 100644
index 0000000000..74f9ac0437
--- /dev/null
+++ b/tests/ref/fate/h264-data-partitioning-cip
@@ -0,0 +1,15 @@
+#tb 0: 1/25
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 176x144
+#sar 0: 0/1
+0,          0,          0,        1,    38016, 0x1b6c95f8
+0,          1,          1,        1,    38016, 0x63e2d92f
+0,          2,          2,        1,    38016, 0x6f631a0f
+0,          3,          3,        1,    38016, 0xfee663ea
+0,          4,          4,        1,    38016, 0x3866d66c
+0,          5,          5,        1,    38016, 0xa918f919
+0,          6,          6,        1,    38016, 0xda56794e
+0,          7,          7,        1,    38016, 0x53d9abfc
+0,          8,          8,        1,    38016, 0x2deff2ec
+0,          9,          9,        1,    38016, 0xae1c0e66
diff --git a/tests/ref/fate/h264-data-partitioning-cip-strict 
b/tests/ref/fate/h264-data-partitioning-cip-strict
new file mode 100644
index 0000000000..73e882dedc
--- /dev/null
+++ b/tests/ref/fate/h264-data-partitioning-cip-strict
@@ -0,0 +1,15 @@
+#tb 0: 1/25
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 176x144
+#sar 0: 0/1
+0,          0,          0,        1,    38016, 0x1b6c95f8
+0,          1,          1,        1,    38016, 0xd3d595d5
+0,          2,          2,        1,    38016, 0xea00960e
+0,          3,          3,        1,    38016, 0x9420960e
+0,          4,          4,        1,    38016, 0x79df960c
+0,          5,          5,        1,    38016, 0x76dc960b
+0,          6,          6,        1,    38016, 0x304b960b
+0,          7,          7,        1,    38016, 0x08ee960b
+0,          8,          8,        1,    38016, 0xf5a295cc
+0,          9,          9,        1,    38016, 0xf7b595cc

-- 
To stop receiving notification emails like this one, please contact
[email protected].
_______________________________________________
ffmpeg-cvslog mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to