From b5bfecf0c38acb7f6d2127b480b729d56af287bf Mon Sep 17 00:00:00 2001
From: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Date: Wed, 2 Apr 2025 15:48:29 +0200
Subject: [PATCH 21/23] tests/fate/vcodec: Test "default" Huffman tables, too

Since 45eeb1f785d6c726181568db341bbf80b43e32c0
optimal Huffman tables are the default (without slice-threading).
This made the fate-vsynth*-mjpeg-{trell-,}-huffman tests
identical to their corresponding tests without "-huffman".

This is of course wasteful, so switch the two tests with
"-huffman" counterparts back to the default tables.
Also use one of these tests to test slice threaded encoding.
It has so far been untested.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 tests/fate/vcodec.mak                    |  4 +--
 tests/ref/seek/lavf-jpg                  |  8 ++---
 tests/ref/seek/vsynth_lena-mjpeg         | 40 ++++++++++++------------
 tests/ref/vsynth/vsynth1-mjpeg           |  4 +--
 tests/ref/vsynth/vsynth1-mjpeg-trell     |  8 ++---
 tests/ref/vsynth/vsynth2-mjpeg           |  4 +--
 tests/ref/vsynth/vsynth2-mjpeg-trell     |  8 ++---
 tests/ref/vsynth/vsynth3-mjpeg           |  4 +--
 tests/ref/vsynth/vsynth3-mjpeg-trell     |  8 ++---
 tests/ref/vsynth/vsynth_lena-mjpeg       |  4 +--
 tests/ref/vsynth/vsynth_lena-mjpeg-trell |  8 ++---
 11 files changed, 50 insertions(+), 50 deletions(-)

diff --git a/tests/fate/vcodec.mak b/tests/fate/vcodec.mak
index f433feac69..09e241127c 100644
--- a/tests/fate/vcodec.mak
+++ b/tests/fate/vcodec.mak
@@ -234,10 +234,10 @@ FATE_VCODEC-$(call ENCDEC, LJPEG MJPEG, AVI) += ljpeg
 fate-vsynth%-ljpeg:              ENCOPTS = -strict -1
 
 FATE_VCODEC_SCALE-$(call ENCDEC, MJPEG, AVI) += mjpeg mjpeg-422 mjpeg-444 mjpeg-trell mjpeg-huffman mjpeg-trell-huffman
-fate-vsynth%-mjpeg:                   ENCOPTS = -qscale 9 -pix_fmt yuvj420p
+fate-vsynth%-mjpeg:                   ENCOPTS = -qscale 9 -pix_fmt yuvj420p -huffman default -threads 5 -thread_type slice
 fate-vsynth%-mjpeg-422:               ENCOPTS = -qscale 9 -pix_fmt yuvj422p
 fate-vsynth%-mjpeg-444:               ENCOPTS = -qscale 9 -pix_fmt yuvj444p
-fate-vsynth%-mjpeg-trell:             ENCOPTS = -qscale 9 -pix_fmt yuvj420p -trellis 1
+fate-vsynth%-mjpeg-trell:             ENCOPTS = -qscale 9 -pix_fmt yuvj420p -trellis 1 -huffman default
 fate-vsynth%-mjpeg-huffman:           ENCOPTS = -qscale 9 -pix_fmt yuvj420p -huffman optimal
 fate-vsynth%-mjpeg-trell-huffman:     ENCOPTS = -qscale 9 -pix_fmt yuvj420p -trellis 1 -huffman optimal
 
diff --git a/tests/ref/seek/lavf-jpg b/tests/ref/seek/lavf-jpg
index 78e8255fac..c770155682 100644
--- a/tests/ref/seek/lavf-jpg
+++ b/tests/ref/seek/lavf-jpg
@@ -1,4 +1,4 @@
-ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:     -1 size: 25633
+ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:     -1 size: 25640
 ret:-EINVAL    st:-1 flags:0  ts:-1.000000
 ret:-EINVAL    st:-1 flags:1  ts: 1.894167
 ret:-EINVAL    st: 0 flags:0  ts: 0.800000
@@ -6,7 +6,7 @@ ret:-EINVAL    st: 0 flags:1  ts:-0.320000
 ret:-EINVAL    st:-1 flags:0  ts: 2.576668
 ret:-EINVAL    st:-1 flags:1  ts: 1.470835
 ret: 0         st: 0 flags:0  ts: 0.360000
-ret: 0         st: 0 flags:1 dts: 0.360000 pts: 0.360000 pos:     -1 size: 25312
+ret: 0         st: 0 flags:1 dts: 0.360000 pts: 0.360000 pos:     -1 size: 25309
 ret:-EINVAL    st: 0 flags:1  ts:-0.760000
 ret:-EINVAL    st:-1 flags:0  ts: 2.153336
 ret:-EINVAL    st:-1 flags:1  ts: 1.047503
@@ -18,7 +18,7 @@ ret:-EINVAL    st: 0 flags:0  ts:-0.480000
 ret:-EINVAL    st: 0 flags:1  ts: 2.400000
 ret:-EINVAL    st:-1 flags:0  ts: 1.306672
 ret: 0         st:-1 flags:1  ts: 0.200839
-ret: 0         st: 0 flags:1 dts: 0.200000 pts: 0.200000 pos:     -1 size: 25799
+ret: 0         st: 0 flags:1 dts: 0.200000 pts: 0.200000 pos:     -1 size: 25793
 ret:-EINVAL    st: 0 flags:0  ts:-0.920000
 ret:-EINVAL    st: 0 flags:1  ts: 2.000000
 ret:-EINVAL    st:-1 flags:0  ts: 0.883340
@@ -26,5 +26,5 @@ ret:-EINVAL    st:-1 flags:1  ts:-0.222493
 ret:-EINVAL    st: 0 flags:0  ts: 2.680000
 ret:-EINVAL    st: 0 flags:1  ts: 1.560000
 ret: 0         st:-1 flags:0  ts: 0.460008
-ret: 0         st: 0 flags:1 dts: 0.480000 pts: 0.480000 pos:     -1 size: 25489
+ret: 0         st: 0 flags:1 dts: 0.480000 pts: 0.480000 pos:     -1 size: 25506
 ret:-EINVAL    st:-1 flags:1  ts:-0.645825
diff --git a/tests/ref/seek/vsynth_lena-mjpeg b/tests/ref/seek/vsynth_lena-mjpeg
index b374fcd9ca..5fb3ee6ee4 100644
--- a/tests/ref/seek/vsynth_lena-mjpeg
+++ b/tests/ref/seek/vsynth_lena-mjpeg
@@ -1,46 +1,46 @@
-ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5652 size: 11222
+ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5652 size: 12162
 ret: 0         st:-1 flags:0  ts:-1.000000
-ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5652 size: 11222
+ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5652 size: 12162
 ret: 0         st:-1 flags:1  ts: 1.894167
-ret: 0         st: 0 flags:1 dts: 1.880000 pts: 1.880000 pos: 592358 size: 14068
+ret: 0         st: 0 flags:1 dts: 1.880000 pts: 1.880000 pos: 630752 size: 14882
 ret: 0         st: 0 flags:0  ts: 0.800000
-ret: 0         st: 0 flags:1 dts: 0.800000 pts: 0.800000 pos: 232624 size: 12259
+ret: 0         st: 0 flags:1 dts: 0.800000 pts: 0.800000 pos: 248748 size: 13032
 ret:-1         st: 0 flags:1  ts:-0.320000
 ret:-1         st:-1 flags:0  ts: 2.576668
 ret: 0         st:-1 flags:1  ts: 1.470835
-ret: 0         st: 0 flags:1 dts: 1.480000 pts: 1.480000 pos: 453092 size: 13736
+ret: 0         st: 0 flags:1 dts: 1.480000 pts: 1.480000 pos: 483058 size: 14588
 ret: 0         st: 0 flags:0  ts: 0.360000
-ret: 0         st: 0 flags:1 dts: 0.360000 pts: 0.360000 pos: 104126 size: 11212
+ret: 0         st: 0 flags:1 dts: 0.360000 pts: 0.360000 pos: 111546 size: 11997
 ret:-1         st: 0 flags:1  ts:-0.760000
 ret:-1         st:-1 flags:0  ts: 2.153336
 ret: 0         st:-1 flags:1  ts: 1.047503
-ret: 0         st: 0 flags:1 dts: 1.040000 pts: 1.040000 pos: 307356 size: 12720
+ret: 0         st: 0 flags:1 dts: 1.040000 pts: 1.040000 pos: 328288 size: 13537
 ret: 0         st: 0 flags:0  ts:-0.040000
-ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5652 size: 11222
+ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5652 size: 12162
 ret: 0         st: 0 flags:1  ts: 2.840000
-ret: 0         st: 0 flags:1 dts: 1.960000 pts: 1.960000 pos: 620522 size: 14138
+ret: 0         st: 0 flags:1 dts: 1.960000 pts: 1.960000 pos: 660542 size: 14951
 ret: 0         st:-1 flags:0  ts: 1.730004
-ret: 0         st: 0 flags:1 dts: 1.720000 pts: 1.720000 pos: 536240 size: 13969
+ret: 0         st: 0 flags:1 dts: 1.720000 pts: 1.720000 pos: 571292 size: 14812
 ret: 0         st:-1 flags:1  ts: 0.624171
-ret: 0         st: 0 flags:1 dts: 0.640000 pts: 0.640000 pos: 184488 size: 11963
+ret: 0         st: 0 flags:1 dts: 0.640000 pts: 0.640000 pos: 197392 size: 12793
 ret: 0         st: 0 flags:0  ts:-0.480000
-ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5652 size: 11222
+ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5652 size: 12162
 ret: 0         st: 0 flags:1  ts: 2.400000
-ret: 0         st: 0 flags:1 dts: 1.960000 pts: 1.960000 pos: 620522 size: 14138
+ret: 0         st: 0 flags:1 dts: 1.960000 pts: 1.960000 pos: 660542 size: 14951
 ret: 0         st:-1 flags:0  ts: 1.306672
-ret: 0         st: 0 flags:1 dts: 1.320000 pts: 1.320000 pos: 398920 size: 13343
+ret: 0         st: 0 flags:1 dts: 1.320000 pts: 1.320000 pos: 425512 size: 14182
 ret: 0         st:-1 flags:1  ts: 0.200839
-ret: 0         st: 0 flags:1 dts: 0.200000 pts: 0.200000 pos:  59914 size: 10975
+ret: 0         st: 0 flags:1 dts: 0.200000 pts: 0.200000 pos:  64152 size: 11780
 ret: 0         st: 0 flags:0  ts:-0.920000
-ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5652 size: 11222
+ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5652 size: 12162
 ret: 0         st: 0 flags:1  ts: 2.000000
-ret: 0         st: 0 flags:1 dts: 1.960000 pts: 1.960000 pos: 620522 size: 14138
+ret: 0         st: 0 flags:1 dts: 1.960000 pts: 1.960000 pos: 660542 size: 14951
 ret: 0         st:-1 flags:0  ts: 0.883340
-ret: 0         st: 0 flags:1 dts: 0.880000 pts: 0.880000 pos: 257176 size: 12411
+ret: 0         st: 0 flags:1 dts: 0.880000 pts: 0.880000 pos: 274872 size: 13185
 ret:-1         st:-1 flags:1  ts:-0.222493
 ret:-1         st: 0 flags:0  ts: 2.680000
 ret: 0         st: 0 flags:1  ts: 1.560000
-ret: 0         st: 0 flags:1 dts: 1.560000 pts: 1.560000 pos: 480696 size: 13840
+ret: 0         st: 0 flags:1 dts: 1.560000 pts: 1.560000 pos: 512354 size: 14672
 ret: 0         st:-1 flags:0  ts: 0.460008
-ret: 0         st: 0 flags:1 dts: 0.480000 pts: 0.480000 pos: 137932 size: 11451
+ret: 0         st: 0 flags:1 dts: 0.480000 pts: 0.480000 pos: 147710 size: 12225
 ret:-1         st:-1 flags:1  ts:-0.645825
diff --git a/tests/ref/vsynth/vsynth1-mjpeg b/tests/ref/vsynth/vsynth1-mjpeg
index b81d4eeb1a..fe63ca6c79 100644
--- a/tests/ref/vsynth/vsynth1-mjpeg
+++ b/tests/ref/vsynth/vsynth1-mjpeg
@@ -1,4 +1,4 @@
-76fde1dcc129b6f1f67f2b93cb2e145e *tests/data/fate/vsynth1-mjpeg.avi
-1391234 tests/data/fate/vsynth1-mjpeg.avi
+365e4d16bae64737ea1d3d338d2b127d *tests/data/fate/vsynth1-mjpeg.avi
+1517996 tests/data/fate/vsynth1-mjpeg.avi
 f46e58458ea57495a494650f7153829d *tests/data/fate/vsynth1-mjpeg.out.rawvideo
 stddev:    7.87 PSNR: 30.21 MAXDIFF:   63 bytes:  7603200/  7603200
diff --git a/tests/ref/vsynth/vsynth1-mjpeg-trell b/tests/ref/vsynth/vsynth1-mjpeg-trell
index 8375221988..19a6823864 100644
--- a/tests/ref/vsynth/vsynth1-mjpeg-trell
+++ b/tests/ref/vsynth/vsynth1-mjpeg-trell
@@ -1,4 +1,4 @@
-90b6f3d07eef09b96cfe6de0b9ae893d *tests/data/fate/vsynth1-mjpeg-trell.avi
-1360912 tests/data/fate/vsynth1-mjpeg-trell.avi
-548de4f6098cbc3d8b65574bb93faf09 *tests/data/fate/vsynth1-mjpeg-trell.out.rawvideo
-stddev:    7.67 PSNR: 30.42 MAXDIFF:   62 bytes:  7603200/  7603200
+fb6d9cbf5bb08daa30c12cd05a1e08c5 *tests/data/fate/vsynth1-mjpeg-trell.avi
+1454282 tests/data/fate/vsynth1-mjpeg-trell.avi
+10cdf1199f1de6b9618e82a36f656860 *tests/data/fate/vsynth1-mjpeg-trell.out.rawvideo
+stddev:    7.71 PSNR: 30.39 MAXDIFF:   63 bytes:  7603200/  7603200
diff --git a/tests/ref/vsynth/vsynth2-mjpeg b/tests/ref/vsynth/vsynth2-mjpeg
index bd9791c73f..8ba00ef52c 100644
--- a/tests/ref/vsynth/vsynth2-mjpeg
+++ b/tests/ref/vsynth/vsynth2-mjpeg
@@ -1,4 +1,4 @@
-fd9061a1055cf2018fc4de38dc0dcf1d *tests/data/fate/vsynth2-mjpeg.avi
-792756 tests/data/fate/vsynth2-mjpeg.avi
+5ded62861f470b66fc47bf56299626d3 *tests/data/fate/vsynth2-mjpeg.avi
+832994 tests/data/fate/vsynth2-mjpeg.avi
 fe498d9edaa947e435e4f353c194ef3d *tests/data/fate/vsynth2-mjpeg.out.rawvideo
 stddev:    4.87 PSNR: 34.37 MAXDIFF:   55 bytes:  7603200/  7603200
diff --git a/tests/ref/vsynth/vsynth2-mjpeg-trell b/tests/ref/vsynth/vsynth2-mjpeg-trell
index dca288e927..757cfb7ae8 100644
--- a/tests/ref/vsynth/vsynth2-mjpeg-trell
+++ b/tests/ref/vsynth/vsynth2-mjpeg-trell
@@ -1,4 +1,4 @@
-04a8a2d77a681f5781afdea8b6df367e *tests/data/fate/vsynth2-mjpeg-trell.avi
-734780 tests/data/fate/vsynth2-mjpeg-trell.avi
-8612dfee87e32268f6f533188a097785 *tests/data/fate/vsynth2-mjpeg-trell.out.rawvideo
-stddev:    5.03 PSNR: 34.10 MAXDIFF:   67 bytes:  7603200/  7603200
+8468487344bdb8dc067b9227db788c58 *tests/data/fate/vsynth2-mjpeg-trell.avi
+765928 tests/data/fate/vsynth2-mjpeg-trell.avi
+aae98b3de0ea17d057d8861f91d209ae *tests/data/fate/vsynth2-mjpeg-trell.out.rawvideo
+stddev:    5.03 PSNR: 34.09 MAXDIFF:   67 bytes:  7603200/  7603200
diff --git a/tests/ref/vsynth/vsynth3-mjpeg b/tests/ref/vsynth/vsynth3-mjpeg
index ed170d029f..6c209da39c 100644
--- a/tests/ref/vsynth/vsynth3-mjpeg
+++ b/tests/ref/vsynth/vsynth3-mjpeg
@@ -1,4 +1,4 @@
-d64096d2f87e910e6b3a4ee87b002d2d *tests/data/fate/vsynth3-mjpeg.avi
-48156 tests/data/fate/vsynth3-mjpeg.avi
+2d2e163b5c49f32354a54f09226a3b30 *tests/data/fate/vsynth3-mjpeg.avi
+65324 tests/data/fate/vsynth3-mjpeg.avi
 a6daba607898eb6e1a172c2368084a67 *tests/data/fate/vsynth3-mjpeg.out.rawvideo
 stddev:    8.61 PSNR: 29.43 MAXDIFF:   58 bytes:    86700/    86700
diff --git a/tests/ref/vsynth/vsynth3-mjpeg-trell b/tests/ref/vsynth/vsynth3-mjpeg-trell
index 79048a12cb..12fe120ca9 100644
--- a/tests/ref/vsynth/vsynth3-mjpeg-trell
+++ b/tests/ref/vsynth/vsynth3-mjpeg-trell
@@ -1,4 +1,4 @@
-56a71287275ab4cda4b62580b875437f *tests/data/fate/vsynth3-mjpeg-trell.avi
-47848 tests/data/fate/vsynth3-mjpeg-trell.avi
-07822517628b20d54621df666ea79af3 *tests/data/fate/vsynth3-mjpeg-trell.out.rawvideo
-stddev:    8.27 PSNR: 29.78 MAXDIFF:   55 bytes:    86700/    86700
+2c68c6bbbb8c78a779c123aaf78f0e23 *tests/data/fate/vsynth3-mjpeg-trell.avi
+63996 tests/data/fate/vsynth3-mjpeg-trell.avi
+dddf01bf0ef33be2492ba0eeb6262dd1 *tests/data/fate/vsynth3-mjpeg-trell.out.rawvideo
+stddev:    8.27 PSNR: 29.77 MAXDIFF:   61 bytes:    86700/    86700
diff --git a/tests/ref/vsynth/vsynth_lena-mjpeg b/tests/ref/vsynth/vsynth_lena-mjpeg
index 5737e71ab6..84e342d4e7 100644
--- a/tests/ref/vsynth/vsynth_lena-mjpeg
+++ b/tests/ref/vsynth/vsynth_lena-mjpeg
@@ -1,4 +1,4 @@
-eaf893d7b56dbc6cbb8a6da507f93926 *tests/data/fate/vsynth_lena-mjpeg.avi
-635468 tests/data/fate/vsynth_lena-mjpeg.avi
+230b2e5002e7d2d3b23790fc4e057600 *tests/data/fate/vsynth_lena-mjpeg.avi
+676302 tests/data/fate/vsynth_lena-mjpeg.avi
 095f88a721813c2a1c34b26303c1139a *tests/data/fate/vsynth_lena-mjpeg.out.rawvideo
 stddev:    4.33 PSNR: 35.40 MAXDIFF:   49 bytes:  7603200/  7603200
diff --git a/tests/ref/vsynth/vsynth_lena-mjpeg-trell b/tests/ref/vsynth/vsynth_lena-mjpeg-trell
index 88679a4c77..aee9aa92b9 100644
--- a/tests/ref/vsynth/vsynth_lena-mjpeg-trell
+++ b/tests/ref/vsynth/vsynth_lena-mjpeg-trell
@@ -1,4 +1,4 @@
-11855d1b59e8276db2ea2cf1719b9801 *tests/data/fate/vsynth_lena-mjpeg-trell.avi
-582520 tests/data/fate/vsynth_lena-mjpeg-trell.avi
-8c5c05e82a959ccc8b3c4ba8e4123bbe *tests/data/fate/vsynth_lena-mjpeg-trell.out.rawvideo
-stddev:    4.51 PSNR: 35.04 MAXDIFF:   60 bytes:  7603200/  7603200
+47bc34cf66d65e482e326512a7b8e17b *tests/data/fate/vsynth_lena-mjpeg-trell.avi
+613778 tests/data/fate/vsynth_lena-mjpeg-trell.avi
+d3eb3db7e2b74f2a16540c4c438cbb91 *tests/data/fate/vsynth_lena-mjpeg-trell.out.rawvideo
+stddev:    4.51 PSNR: 35.03 MAXDIFF:   60 bytes:  7603200/  7603200
-- 
2.45.2