aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Almer <jamrial@gmail.com>2024-10-21 09:32:11 -0300
committerJames Almer <jamrial@gmail.com>2024-11-02 15:01:31 -0300
commit40878dfb11eaa357ed5c09f610ea444106e8282b (patch)
tree69f3f5e3611c6c5b8731edfb77a21c356bdac06d
parent5f5421ec66f55e186763cf3441c609d6360cfd8e (diff)
downloadffmpeg-40878dfb11eaa357ed5c09f610ea444106e8282b.tar.gz
fate/pixfmts: test conversion of high bitdepth formats
Signed-off-by: James Almer <jamrial@gmail.com>
-rwxr-xr-xtests/fate-run.sh12
-rw-r--r--tests/fate/pixfmt.mak107
-rw-r--r--tests/ref/pixfmt/gbrp10-gbrp10be2
-rw-r--r--tests/ref/pixfmt/gbrp10-gbrp10le2
-rw-r--r--tests/ref/pixfmt/gbrp10-gray10be2
-rw-r--r--tests/ref/pixfmt/gbrp10-gray10le2
-rw-r--r--tests/ref/pixfmt/gbrp10-p010be2
-rw-r--r--tests/ref/pixfmt/gbrp10-p010le2
-rw-r--r--tests/ref/pixfmt/gbrp10-p210be2
-rw-r--r--tests/ref/pixfmt/gbrp10-p210le2
-rw-r--r--tests/ref/pixfmt/gbrp10-p410be2
-rw-r--r--tests/ref/pixfmt/gbrp10-p410le2
-rw-r--r--tests/ref/pixfmt/gbrp10-v30xle2
-rw-r--r--tests/ref/pixfmt/gbrp10-x2bgr10le2
-rw-r--r--tests/ref/pixfmt/gbrp10-x2rgb10le2
-rw-r--r--tests/ref/pixfmt/gbrp10-xv30le2
-rw-r--r--tests/ref/pixfmt/gbrp10-y210le2
-rw-r--r--tests/ref/pixfmt/gbrp10-yuv420p10be2
-rw-r--r--tests/ref/pixfmt/gbrp10-yuv420p10le2
-rw-r--r--tests/ref/pixfmt/gbrp10-yuv422p10be2
-rw-r--r--tests/ref/pixfmt/gbrp10-yuv422p10le2
-rw-r--r--tests/ref/pixfmt/gbrp10-yuv440p10be2
-rw-r--r--tests/ref/pixfmt/gbrp10-yuv440p10le2
-rw-r--r--tests/ref/pixfmt/gbrp10-yuv444p10be2
-rw-r--r--tests/ref/pixfmt/gbrp10-yuv444p10le2
-rw-r--r--tests/ref/pixfmt/gbrp12-gbrp12be2
-rw-r--r--tests/ref/pixfmt/gbrp12-gbrp12le2
-rw-r--r--tests/ref/pixfmt/gbrp12-gray12be2
-rw-r--r--tests/ref/pixfmt/gbrp12-gray12le2
-rw-r--r--tests/ref/pixfmt/gbrp12-p012be2
-rw-r--r--tests/ref/pixfmt/gbrp12-p012le2
-rw-r--r--tests/ref/pixfmt/gbrp12-p212be2
-rw-r--r--tests/ref/pixfmt/gbrp12-p212le2
-rw-r--r--tests/ref/pixfmt/gbrp12-p412be2
-rw-r--r--tests/ref/pixfmt/gbrp12-p412le2
-rw-r--r--tests/ref/pixfmt/gbrp12-xv36be2
-rw-r--r--tests/ref/pixfmt/gbrp12-xv36le2
-rw-r--r--tests/ref/pixfmt/gbrp12-y212le2
-rw-r--r--tests/ref/pixfmt/gbrp12-yuv420p12be2
-rw-r--r--tests/ref/pixfmt/gbrp12-yuv420p12le2
-rw-r--r--tests/ref/pixfmt/gbrp12-yuv422p12be2
-rw-r--r--tests/ref/pixfmt/gbrp12-yuv422p12le2
-rw-r--r--tests/ref/pixfmt/gbrp12-yuv440p12be2
-rw-r--r--tests/ref/pixfmt/gbrp12-yuv440p12le2
-rw-r--r--tests/ref/pixfmt/gbrp12-yuv444p12be2
-rw-r--r--tests/ref/pixfmt/gbrp12-yuv444p12le2
-rw-r--r--tests/ref/pixfmt/gbrp16-gbrp16be2
-rw-r--r--tests/ref/pixfmt/gbrp16-gbrp16le2
-rw-r--r--tests/ref/pixfmt/gbrp16-gray16be2
-rw-r--r--tests/ref/pixfmt/gbrp16-gray16le2
-rw-r--r--tests/ref/pixfmt/gbrp16-p016be2
-rw-r--r--tests/ref/pixfmt/gbrp16-p016le2
-rw-r--r--tests/ref/pixfmt/gbrp16-p216be2
-rw-r--r--tests/ref/pixfmt/gbrp16-p216le2
-rw-r--r--tests/ref/pixfmt/gbrp16-p416be2
-rw-r--r--tests/ref/pixfmt/gbrp16-p416le2
-rw-r--r--tests/ref/pixfmt/gbrp16-rgb482
-rw-r--r--tests/ref/pixfmt/gbrp16-xv48be2
-rw-r--r--tests/ref/pixfmt/gbrp16-xv48le2
-rw-r--r--tests/ref/pixfmt/gbrp16-y216le2
-rw-r--r--tests/ref/pixfmt/gbrp16-yuv420p16be2
-rw-r--r--tests/ref/pixfmt/gbrp16-yuv420p16le2
-rw-r--r--tests/ref/pixfmt/gbrp16-yuv422p16be2
-rw-r--r--tests/ref/pixfmt/gbrp16-yuv422p16le2
-rw-r--r--tests/ref/pixfmt/gbrp16-yuv444p16be2
-rw-r--r--tests/ref/pixfmt/gbrp16-yuv444p16le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-gbrp10be2
-rw-r--r--tests/ref/pixfmt/yuv444p10-gbrp10le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-gray10be2
-rw-r--r--tests/ref/pixfmt/yuv444p10-gray10le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-p010be2
-rw-r--r--tests/ref/pixfmt/yuv444p10-p010le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-p210be2
-rw-r--r--tests/ref/pixfmt/yuv444p10-p210le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-p410be2
-rw-r--r--tests/ref/pixfmt/yuv444p10-p410le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-v30xle2
-rw-r--r--tests/ref/pixfmt/yuv444p10-x2bgr10le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-x2rgb10le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-xv30le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-y210le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-yuv420p10be2
-rw-r--r--tests/ref/pixfmt/yuv444p10-yuv420p10le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-yuv422p10be2
-rw-r--r--tests/ref/pixfmt/yuv444p10-yuv422p10le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-yuv440p10be2
-rw-r--r--tests/ref/pixfmt/yuv444p10-yuv440p10le2
-rw-r--r--tests/ref/pixfmt/yuv444p10-yuv444p10be2
-rw-r--r--tests/ref/pixfmt/yuv444p10-yuv444p10le2
-rw-r--r--tests/ref/pixfmt/yuv444p12-gbrp12be2
-rw-r--r--tests/ref/pixfmt/yuv444p12-gbrp12le2
-rw-r--r--tests/ref/pixfmt/yuv444p12-gray12be2
-rw-r--r--tests/ref/pixfmt/yuv444p12-gray12le2
-rw-r--r--tests/ref/pixfmt/yuv444p12-p012be2
-rw-r--r--tests/ref/pixfmt/yuv444p12-p012le2
-rw-r--r--tests/ref/pixfmt/yuv444p12-p212be2
-rw-r--r--tests/ref/pixfmt/yuv444p12-p212le2
-rw-r--r--tests/ref/pixfmt/yuv444p12-p412be2
-rw-r--r--tests/ref/pixfmt/yuv444p12-p412le2
-rw-r--r--tests/ref/pixfmt/yuv444p12-xv36be2
-rw-r--r--tests/ref/pixfmt/yuv444p12-xv36le2
-rw-r--r--tests/ref/pixfmt/yuv444p12-y212le2
-rw-r--r--tests/ref/pixfmt/yuv444p12-yuv420p12be2
-rw-r--r--tests/ref/pixfmt/yuv444p12-yuv420p12le2
-rw-r--r--tests/ref/pixfmt/yuv444p12-yuv422p12be2
-rw-r--r--tests/ref/pixfmt/yuv444p12-yuv422p12le2
-rw-r--r--tests/ref/pixfmt/yuv444p12-yuv440p12be2
-rw-r--r--tests/ref/pixfmt/yuv444p12-yuv440p12le2
-rw-r--r--tests/ref/pixfmt/yuv444p12-yuv444p12be2
-rw-r--r--tests/ref/pixfmt/yuv444p12-yuv444p12le2
-rw-r--r--tests/ref/pixfmt/yuv444p16-gbrp16be2
-rw-r--r--tests/ref/pixfmt/yuv444p16-gbrp16le2
-rw-r--r--tests/ref/pixfmt/yuv444p16-gray16be2
-rw-r--r--tests/ref/pixfmt/yuv444p16-gray16le2
-rw-r--r--tests/ref/pixfmt/yuv444p16-p016be2
-rw-r--r--tests/ref/pixfmt/yuv444p16-p016le2
-rw-r--r--tests/ref/pixfmt/yuv444p16-p216be2
-rw-r--r--tests/ref/pixfmt/yuv444p16-p216le2
-rw-r--r--tests/ref/pixfmt/yuv444p16-p416be2
-rw-r--r--tests/ref/pixfmt/yuv444p16-p416le2
-rw-r--r--tests/ref/pixfmt/yuv444p16-rgb482
-rw-r--r--tests/ref/pixfmt/yuv444p16-xv48be2
-rw-r--r--tests/ref/pixfmt/yuv444p16-xv48le2
-rw-r--r--tests/ref/pixfmt/yuv444p16-y216le2
-rw-r--r--tests/ref/pixfmt/yuv444p16-yuv420p16be2
-rw-r--r--tests/ref/pixfmt/yuv444p16-yuv420p16le2
-rw-r--r--tests/ref/pixfmt/yuv444p16-yuv422p16be2
-rw-r--r--tests/ref/pixfmt/yuv444p16-yuv422p16le2
-rw-r--r--tests/ref/pixfmt/yuv444p16-yuv444p16be2
-rw-r--r--tests/ref/pixfmt/yuv444p16-yuv444p16le2
130 files changed, 373 insertions, 2 deletions
diff --git a/tests/fate-run.sh b/tests/fate-run.sh
index c371bd1c3c..2b8d535daf 100755
--- a/tests/fate-run.sh
+++ b/tests/fate-run.sh
@@ -503,6 +503,18 @@ pixfmt_conversion(){
$ENC_OPTS -f rawvideo -s 352x288 -pix_fmt yuv444p -color_range mpeg
}
+pixfmt_conversion_ext(){
+ prefix=$1
+ color_range="${test#pixfmt-}"
+ color_range=${color_range%-*}
+ conversion="${test#pixfmt-$color_range-}"
+ outdir="tests/data/pixfmt"
+ file=${outdir}/${color_range}-${conversion}.yuv
+ cleanfiles="$cleanfiles $file"
+ do_avconv $file $DEC_OPTS -lavfi ${prefix}testsrc=s=352x288,format=${color_range},scale,format=$conversion \
+ $ENC_OPTS -t 1 -f rawvideo -s 352x288 -pix_fmt ${color_range}le -color_range mpeg
+}
+
pixdesc(){
pix_fmt=${test#filter-pixdesc-}
label=${test#filter-}
diff --git a/tests/fate/pixfmt.mak b/tests/fate/pixfmt.mak
index 715a4763d4..34fc8cc29e 100644
--- a/tests/fate/pixfmt.mak
+++ b/tests/fate/pixfmt.mak
@@ -25,5 +25,108 @@ $(FATE_PIXFMT): CMD = pixfmt_conversion
$(FATE_PIXFMT): REF = $(SRC_PATH)/tests/ref/pixfmt/$(@:fate-pixfmt-%=%)
$(FATE_PIXFMT): $(VREF)
-FATE_AVCONV += $(FATE_PIXFMT)
-fate-pixfmt: $(FATE_PIXFMT)
+PIXFMT_10_LIST = gray10le \
+ gray10be \
+ yuv420p10le \
+ yuv420p10be \
+ yuv422p10le \
+ yuv422p10be \
+ yuv440p10le \
+ yuv440p10be \
+ yuv444p10le \
+ yuv444p10be \
+ y210le \
+ p010le \
+ p010be \
+ p210le \
+ p210be \
+ p410le \
+ p410be \
+ v30xle \
+ xv30le \
+ x2rgb10le \
+ x2bgr10le \
+ gbrp10le \
+ gbrp10be \
+
+FATE_PIXFMT_10-YUV-$(call ALLYES, SCALE_FILTER YUVTESTSRC_FILTER LAVFI_INDEV) += $(PIXFMT_10_LIST)
+FATE_PIXFMT_10-RGB-$(call ALLYES, SCALE_FILTER RGBTESTSRC_FILTER LAVFI_INDEV) += $(PIXFMT_10_LIST)
+
+FATE_PIXFMT_10-YUV := $(FATE_PIXFMT_10-YUV-yes:%=fate-pixfmt-yuv444p10-%)
+FATE_PIXFMT_10-RGB := $(FATE_PIXFMT_10-RGB-yes:%=fate-pixfmt-gbrp10-%)
+
+$(FATE_PIXFMT_10-YUV): CMD = pixfmt_conversion_ext "yuv"
+$(FATE_PIXFMT_10-RGB): CMD = pixfmt_conversion_ext "rgb"
+
+FATE_PIXFMT_10 := $(FATE_PIXFMT_10-YUV) $(FATE_PIXFMT_10-RGB)
+$(FATE_PIXFMT_10): REF = $(SRC_PATH)/tests/ref/pixfmt/$(@:fate-pixfmt-%=%)
+
+PIXFMT_12_LIST = gray12le \
+ gray12be \
+ yuv420p12le \
+ yuv420p12be \
+ yuv422p12le \
+ yuv422p12be \
+ yuv440p12le \
+ yuv440p12be \
+ yuv444p12le \
+ yuv444p12be \
+ y212le \
+ p012le \
+ p012be \
+ p212le \
+ p212be \
+ p412le \
+ p412be \
+ xv36le \
+ xv36be \
+ gbrp12le \
+ gbrp12be \
+
+FATE_PIXFMT_12-YUV-$(call ALLYES, SCALE_FILTER YUVTESTSRC_FILTER LAVFI_INDEV) += $(PIXFMT_12_LIST)
+FATE_PIXFMT_12-RGB-$(call ALLYES, SCALE_FILTER RGBTESTSRC_FILTER LAVFI_INDEV) += $(PIXFMT_12_LIST)
+
+FATE_PIXFMT_12-YUV := $(FATE_PIXFMT_12-YUV-yes:%=fate-pixfmt-yuv444p12-%)
+FATE_PIXFMT_12-RGB := $(FATE_PIXFMT_12-RGB-yes:%=fate-pixfmt-gbrp12-%)
+
+$(FATE_PIXFMT_12-YUV): CMD = pixfmt_conversion_ext "yuv"
+$(FATE_PIXFMT_12-RGB): CMD = pixfmt_conversion_ext "rgb"
+
+FATE_PIXFMT_12 := $(FATE_PIXFMT_12-YUV) $(FATE_PIXFMT_12-RGB)
+$(FATE_PIXFMT_12): REF = $(SRC_PATH)/tests/ref/pixfmt/$(@:fate-pixfmt-%=%)
+
+PIXFMT_16_LIST = gray16le \
+ gray16be \
+ yuv420p16le \
+ yuv420p16be \
+ yuv422p16le \
+ yuv422p16be \
+ yuv444p16le \
+ yuv444p16be \
+ y216le \
+ p016le \
+ p016be \
+ p216le \
+ p216be \
+ p416le \
+ p416be \
+ xv48le \
+ xv48be \
+ rgb48 \
+ gbrp16le \
+ gbrp16be \
+
+FATE_PIXFMT_16-YUV-$(call ALLYES, SCALE_FILTER YUVTESTSRC_FILTER LAVFI_INDEV) += $(PIXFMT_16_LIST)
+FATE_PIXFMT_16-RGB-$(call ALLYES, SCALE_FILTER RGBTESTSRC_FILTER LAVFI_INDEV) += $(PIXFMT_16_LIST)
+
+FATE_PIXFMT_16-YUV := $(FATE_PIXFMT_16-YUV-yes:%=fate-pixfmt-yuv444p16-%)
+FATE_PIXFMT_16-RGB := $(FATE_PIXFMT_16-RGB-yes:%=fate-pixfmt-gbrp16-%)
+
+$(FATE_PIXFMT_16-YUV): CMD = pixfmt_conversion_ext "yuv"
+$(FATE_PIXFMT_16-RGB): CMD = pixfmt_conversion_ext "rgb"
+
+FATE_PIXFMT_16 := $(FATE_PIXFMT_16-YUV) $(FATE_PIXFMT_16-RGB)
+$(FATE_PIXFMT_16): REF = $(SRC_PATH)/tests/ref/pixfmt/$(@:fate-pixfmt-%=%)
+
+FATE_AVCONV += $(FATE_PIXFMT) $(FATE_PIXFMT_8) $(FATE_PIXFMT_10) $(FATE_PIXFMT_12) $(FATE_PIXFMT_16)
+fate-pixfmt: $(FATE_PIXFMT) $(FATE_PIXFMT_8) $(FATE_PIXFMT_10) $(FATE_PIXFMT_12) $(FATE_PIXFMT_16)
diff --git a/tests/ref/pixfmt/gbrp10-gbrp10be b/tests/ref/pixfmt/gbrp10-gbrp10be
new file mode 100644
index 0000000000..7e7ff2646a
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-gbrp10be
@@ -0,0 +1,2 @@
+1f9cc212a4081b6e35811df461b18fec *tests/data/pixfmt/gbrp10-gbrp10be.yuv
+15206400 tests/data/pixfmt/gbrp10-gbrp10be.yuv
diff --git a/tests/ref/pixfmt/gbrp10-gbrp10le b/tests/ref/pixfmt/gbrp10-gbrp10le
new file mode 100644
index 0000000000..5de4490ae4
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-gbrp10le
@@ -0,0 +1,2 @@
+1f9cc212a4081b6e35811df461b18fec *tests/data/pixfmt/gbrp10-gbrp10le.yuv
+15206400 tests/data/pixfmt/gbrp10-gbrp10le.yuv
diff --git a/tests/ref/pixfmt/gbrp10-gray10be b/tests/ref/pixfmt/gbrp10-gray10be
new file mode 100644
index 0000000000..29653181d1
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-gray10be
@@ -0,0 +1,2 @@
+3d81484df522da621f2735c53bc3856b *tests/data/pixfmt/gbrp10-gray10be.yuv
+15206400 tests/data/pixfmt/gbrp10-gray10be.yuv
diff --git a/tests/ref/pixfmt/gbrp10-gray10le b/tests/ref/pixfmt/gbrp10-gray10le
new file mode 100644
index 0000000000..4647ba0bd7
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-gray10le
@@ -0,0 +1,2 @@
+3d81484df522da621f2735c53bc3856b *tests/data/pixfmt/gbrp10-gray10le.yuv
+15206400 tests/data/pixfmt/gbrp10-gray10le.yuv
diff --git a/tests/ref/pixfmt/gbrp10-p010be b/tests/ref/pixfmt/gbrp10-p010be
new file mode 100644
index 0000000000..92cb1acb22
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-p010be
@@ -0,0 +1,2 @@
+361fa84042e8618d322a3c1cbd0a5824 *tests/data/pixfmt/gbrp10-p010be.yuv
+15206400 tests/data/pixfmt/gbrp10-p010be.yuv
diff --git a/tests/ref/pixfmt/gbrp10-p010le b/tests/ref/pixfmt/gbrp10-p010le
new file mode 100644
index 0000000000..245915ca09
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-p010le
@@ -0,0 +1,2 @@
+361fa84042e8618d322a3c1cbd0a5824 *tests/data/pixfmt/gbrp10-p010le.yuv
+15206400 tests/data/pixfmt/gbrp10-p010le.yuv
diff --git a/tests/ref/pixfmt/gbrp10-p210be b/tests/ref/pixfmt/gbrp10-p210be
new file mode 100644
index 0000000000..361a7dd4a9
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-p210be
@@ -0,0 +1,2 @@
+d3ae9cee6bae0df1bf830014bd07d2ed *tests/data/pixfmt/gbrp10-p210be.yuv
+15206400 tests/data/pixfmt/gbrp10-p210be.yuv
diff --git a/tests/ref/pixfmt/gbrp10-p210le b/tests/ref/pixfmt/gbrp10-p210le
new file mode 100644
index 0000000000..c9ba107cf6
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-p210le
@@ -0,0 +1,2 @@
+d3ae9cee6bae0df1bf830014bd07d2ed *tests/data/pixfmt/gbrp10-p210le.yuv
+15206400 tests/data/pixfmt/gbrp10-p210le.yuv
diff --git a/tests/ref/pixfmt/gbrp10-p410be b/tests/ref/pixfmt/gbrp10-p410be
new file mode 100644
index 0000000000..739095e659
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-p410be
@@ -0,0 +1,2 @@
+1015f3ddc2979b399cc7d260d53bca21 *tests/data/pixfmt/gbrp10-p410be.yuv
+15206400 tests/data/pixfmt/gbrp10-p410be.yuv
diff --git a/tests/ref/pixfmt/gbrp10-p410le b/tests/ref/pixfmt/gbrp10-p410le
new file mode 100644
index 0000000000..cb4819a589
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-p410le
@@ -0,0 +1,2 @@
+1015f3ddc2979b399cc7d260d53bca21 *tests/data/pixfmt/gbrp10-p410le.yuv
+15206400 tests/data/pixfmt/gbrp10-p410le.yuv
diff --git a/tests/ref/pixfmt/gbrp10-v30xle b/tests/ref/pixfmt/gbrp10-v30xle
new file mode 100644
index 0000000000..5319954f06
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-v30xle
@@ -0,0 +1,2 @@
+1015f3ddc2979b399cc7d260d53bca21 *tests/data/pixfmt/gbrp10-v30xle.yuv
+15206400 tests/data/pixfmt/gbrp10-v30xle.yuv
diff --git a/tests/ref/pixfmt/gbrp10-x2bgr10le b/tests/ref/pixfmt/gbrp10-x2bgr10le
new file mode 100644
index 0000000000..51e9c5e4f0
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-x2bgr10le
@@ -0,0 +1,2 @@
+909448714837e324484d85f3da37e2ba *tests/data/pixfmt/gbrp10-x2bgr10le.yuv
+15206400 tests/data/pixfmt/gbrp10-x2bgr10le.yuv
diff --git a/tests/ref/pixfmt/gbrp10-x2rgb10le b/tests/ref/pixfmt/gbrp10-x2rgb10le
new file mode 100644
index 0000000000..4cd95358df
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-x2rgb10le
@@ -0,0 +1,2 @@
+909448714837e324484d85f3da37e2ba *tests/data/pixfmt/gbrp10-x2rgb10le.yuv
+15206400 tests/data/pixfmt/gbrp10-x2rgb10le.yuv
diff --git a/tests/ref/pixfmt/gbrp10-xv30le b/tests/ref/pixfmt/gbrp10-xv30le
new file mode 100644
index 0000000000..5faade6380
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-xv30le
@@ -0,0 +1,2 @@
+1015f3ddc2979b399cc7d260d53bca21 *tests/data/pixfmt/gbrp10-xv30le.yuv
+15206400 tests/data/pixfmt/gbrp10-xv30le.yuv
diff --git a/tests/ref/pixfmt/gbrp10-y210le b/tests/ref/pixfmt/gbrp10-y210le
new file mode 100644
index 0000000000..d6d5ea9ef1
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-y210le
@@ -0,0 +1,2 @@
+d3ae9cee6bae0df1bf830014bd07d2ed *tests/data/pixfmt/gbrp10-y210le.yuv
+15206400 tests/data/pixfmt/gbrp10-y210le.yuv
diff --git a/tests/ref/pixfmt/gbrp10-yuv420p10be b/tests/ref/pixfmt/gbrp10-yuv420p10be
new file mode 100644
index 0000000000..f64dc69359
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-yuv420p10be
@@ -0,0 +1,2 @@
+361fa84042e8618d322a3c1cbd0a5824 *tests/data/pixfmt/gbrp10-yuv420p10be.yuv
+15206400 tests/data/pixfmt/gbrp10-yuv420p10be.yuv
diff --git a/tests/ref/pixfmt/gbrp10-yuv420p10le b/tests/ref/pixfmt/gbrp10-yuv420p10le
new file mode 100644
index 0000000000..0388935a5e
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-yuv420p10le
@@ -0,0 +1,2 @@
+361fa84042e8618d322a3c1cbd0a5824 *tests/data/pixfmt/gbrp10-yuv420p10le.yuv
+15206400 tests/data/pixfmt/gbrp10-yuv420p10le.yuv
diff --git a/tests/ref/pixfmt/gbrp10-yuv422p10be b/tests/ref/pixfmt/gbrp10-yuv422p10be
new file mode 100644
index 0000000000..9df13b6cd5
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-yuv422p10be
@@ -0,0 +1,2 @@
+d3ae9cee6bae0df1bf830014bd07d2ed *tests/data/pixfmt/gbrp10-yuv422p10be.yuv
+15206400 tests/data/pixfmt/gbrp10-yuv422p10be.yuv
diff --git a/tests/ref/pixfmt/gbrp10-yuv422p10le b/tests/ref/pixfmt/gbrp10-yuv422p10le
new file mode 100644
index 0000000000..4ea0f589ec
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-yuv422p10le
@@ -0,0 +1,2 @@
+d3ae9cee6bae0df1bf830014bd07d2ed *tests/data/pixfmt/gbrp10-yuv422p10le.yuv
+15206400 tests/data/pixfmt/gbrp10-yuv422p10le.yuv
diff --git a/tests/ref/pixfmt/gbrp10-yuv440p10be b/tests/ref/pixfmt/gbrp10-yuv440p10be
new file mode 100644
index 0000000000..6fe1ec1016
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-yuv440p10be
@@ -0,0 +1,2 @@
+81cd02c0a12bc263aea2a79068dcb971 *tests/data/pixfmt/gbrp10-yuv440p10be.yuv
+15206400 tests/data/pixfmt/gbrp10-yuv440p10be.yuv
diff --git a/tests/ref/pixfmt/gbrp10-yuv440p10le b/tests/ref/pixfmt/gbrp10-yuv440p10le
new file mode 100644
index 0000000000..77f6ad5cf3
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-yuv440p10le
@@ -0,0 +1,2 @@
+81cd02c0a12bc263aea2a79068dcb971 *tests/data/pixfmt/gbrp10-yuv440p10le.yuv
+15206400 tests/data/pixfmt/gbrp10-yuv440p10le.yuv
diff --git a/tests/ref/pixfmt/gbrp10-yuv444p10be b/tests/ref/pixfmt/gbrp10-yuv444p10be
new file mode 100644
index 0000000000..ac9772f0fb
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-yuv444p10be
@@ -0,0 +1,2 @@
+1015f3ddc2979b399cc7d260d53bca21 *tests/data/pixfmt/gbrp10-yuv444p10be.yuv
+15206400 tests/data/pixfmt/gbrp10-yuv444p10be.yuv
diff --git a/tests/ref/pixfmt/gbrp10-yuv444p10le b/tests/ref/pixfmt/gbrp10-yuv444p10le
new file mode 100644
index 0000000000..96816190c2
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp10-yuv444p10le
@@ -0,0 +1,2 @@
+1015f3ddc2979b399cc7d260d53bca21 *tests/data/pixfmt/gbrp10-yuv444p10le.yuv
+15206400 tests/data/pixfmt/gbrp10-yuv444p10le.yuv
diff --git a/tests/ref/pixfmt/gbrp12-gbrp12be b/tests/ref/pixfmt/gbrp12-gbrp12be
new file mode 100644
index 0000000000..21e2b4953b
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-gbrp12be
@@ -0,0 +1,2 @@
+29ab3d9be7c7e05ff55143bc2b74c21a *tests/data/pixfmt/gbrp12-gbrp12be.yuv
+15206400 tests/data/pixfmt/gbrp12-gbrp12be.yuv
diff --git a/tests/ref/pixfmt/gbrp12-gbrp12le b/tests/ref/pixfmt/gbrp12-gbrp12le
new file mode 100644
index 0000000000..dd20160c78
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-gbrp12le
@@ -0,0 +1,2 @@
+29ab3d9be7c7e05ff55143bc2b74c21a *tests/data/pixfmt/gbrp12-gbrp12le.yuv
+15206400 tests/data/pixfmt/gbrp12-gbrp12le.yuv
diff --git a/tests/ref/pixfmt/gbrp12-gray12be b/tests/ref/pixfmt/gbrp12-gray12be
new file mode 100644
index 0000000000..9f3a24acb0
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-gray12be
@@ -0,0 +1,2 @@
+62c995d8da784f0011905f54c9f20450 *tests/data/pixfmt/gbrp12-gray12be.yuv
+15206400 tests/data/pixfmt/gbrp12-gray12be.yuv
diff --git a/tests/ref/pixfmt/gbrp12-gray12le b/tests/ref/pixfmt/gbrp12-gray12le
new file mode 100644
index 0000000000..d93ee4c774
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-gray12le
@@ -0,0 +1,2 @@
+62c995d8da784f0011905f54c9f20450 *tests/data/pixfmt/gbrp12-gray12le.yuv
+15206400 tests/data/pixfmt/gbrp12-gray12le.yuv
diff --git a/tests/ref/pixfmt/gbrp12-p012be b/tests/ref/pixfmt/gbrp12-p012be
new file mode 100644
index 0000000000..2cd1cc3d76
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-p012be
@@ -0,0 +1,2 @@
+a6f253ad594c7c2d2b3b8e9aff0a429d *tests/data/pixfmt/gbrp12-p012be.yuv
+15206400 tests/data/pixfmt/gbrp12-p012be.yuv
diff --git a/tests/ref/pixfmt/gbrp12-p012le b/tests/ref/pixfmt/gbrp12-p012le
new file mode 100644
index 0000000000..aee94d2686
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-p012le
@@ -0,0 +1,2 @@
+a6f253ad594c7c2d2b3b8e9aff0a429d *tests/data/pixfmt/gbrp12-p012le.yuv
+15206400 tests/data/pixfmt/gbrp12-p012le.yuv
diff --git a/tests/ref/pixfmt/gbrp12-p212be b/tests/ref/pixfmt/gbrp12-p212be
new file mode 100644
index 0000000000..93ce9bf6d5
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-p212be
@@ -0,0 +1,2 @@
+1e7495fe1fc4b4215dfd426e27833847 *tests/data/pixfmt/gbrp12-p212be.yuv
+15206400 tests/data/pixfmt/gbrp12-p212be.yuv
diff --git a/tests/ref/pixfmt/gbrp12-p212le b/tests/ref/pixfmt/gbrp12-p212le
new file mode 100644
index 0000000000..47d82ea8fa
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-p212le
@@ -0,0 +1,2 @@
+1e7495fe1fc4b4215dfd426e27833847 *tests/data/pixfmt/gbrp12-p212le.yuv
+15206400 tests/data/pixfmt/gbrp12-p212le.yuv
diff --git a/tests/ref/pixfmt/gbrp12-p412be b/tests/ref/pixfmt/gbrp12-p412be
new file mode 100644
index 0000000000..86ac92bbec
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-p412be
@@ -0,0 +1,2 @@
+6ff4167f711069638f0b2db840bdeb32 *tests/data/pixfmt/gbrp12-p412be.yuv
+15206400 tests/data/pixfmt/gbrp12-p412be.yuv
diff --git a/tests/ref/pixfmt/gbrp12-p412le b/tests/ref/pixfmt/gbrp12-p412le
new file mode 100644
index 0000000000..f8f36b4822
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-p412le
@@ -0,0 +1,2 @@
+6ff4167f711069638f0b2db840bdeb32 *tests/data/pixfmt/gbrp12-p412le.yuv
+15206400 tests/data/pixfmt/gbrp12-p412le.yuv
diff --git a/tests/ref/pixfmt/gbrp12-xv36be b/tests/ref/pixfmt/gbrp12-xv36be
new file mode 100644
index 0000000000..f3c8a866a6
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-xv36be
@@ -0,0 +1,2 @@
+6ff4167f711069638f0b2db840bdeb32 *tests/data/pixfmt/gbrp12-xv36be.yuv
+15206400 tests/data/pixfmt/gbrp12-xv36be.yuv
diff --git a/tests/ref/pixfmt/gbrp12-xv36le b/tests/ref/pixfmt/gbrp12-xv36le
new file mode 100644
index 0000000000..9b167cdc10
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-xv36le
@@ -0,0 +1,2 @@
+6ff4167f711069638f0b2db840bdeb32 *tests/data/pixfmt/gbrp12-xv36le.yuv
+15206400 tests/data/pixfmt/gbrp12-xv36le.yuv
diff --git a/tests/ref/pixfmt/gbrp12-y212le b/tests/ref/pixfmt/gbrp12-y212le
new file mode 100644
index 0000000000..210e34b25c
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-y212le
@@ -0,0 +1,2 @@
+1e7495fe1fc4b4215dfd426e27833847 *tests/data/pixfmt/gbrp12-y212le.yuv
+15206400 tests/data/pixfmt/gbrp12-y212le.yuv
diff --git a/tests/ref/pixfmt/gbrp12-yuv420p12be b/tests/ref/pixfmt/gbrp12-yuv420p12be
new file mode 100644
index 0000000000..6c4a4ba37d
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-yuv420p12be
@@ -0,0 +1,2 @@
+a6f253ad594c7c2d2b3b8e9aff0a429d *tests/data/pixfmt/gbrp12-yuv420p12be.yuv
+15206400 tests/data/pixfmt/gbrp12-yuv420p12be.yuv
diff --git a/tests/ref/pixfmt/gbrp12-yuv420p12le b/tests/ref/pixfmt/gbrp12-yuv420p12le
new file mode 100644
index 0000000000..605f45e9cf
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-yuv420p12le
@@ -0,0 +1,2 @@
+a6f253ad594c7c2d2b3b8e9aff0a429d *tests/data/pixfmt/gbrp12-yuv420p12le.yuv
+15206400 tests/data/pixfmt/gbrp12-yuv420p12le.yuv
diff --git a/tests/ref/pixfmt/gbrp12-yuv422p12be b/tests/ref/pixfmt/gbrp12-yuv422p12be
new file mode 100644
index 0000000000..5230acb7b2
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-yuv422p12be
@@ -0,0 +1,2 @@
+1e7495fe1fc4b4215dfd426e27833847 *tests/data/pixfmt/gbrp12-yuv422p12be.yuv
+15206400 tests/data/pixfmt/gbrp12-yuv422p12be.yuv
diff --git a/tests/ref/pixfmt/gbrp12-yuv422p12le b/tests/ref/pixfmt/gbrp12-yuv422p12le
new file mode 100644
index 0000000000..6fbaa45483
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-yuv422p12le
@@ -0,0 +1,2 @@
+1e7495fe1fc4b4215dfd426e27833847 *tests/data/pixfmt/gbrp12-yuv422p12le.yuv
+15206400 tests/data/pixfmt/gbrp12-yuv422p12le.yuv
diff --git a/tests/ref/pixfmt/gbrp12-yuv440p12be b/tests/ref/pixfmt/gbrp12-yuv440p12be
new file mode 100644
index 0000000000..c86662cb9d
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-yuv440p12be
@@ -0,0 +1,2 @@
+2530f4bda2e79ba6f5bb45084fab4839 *tests/data/pixfmt/gbrp12-yuv440p12be.yuv
+15206400 tests/data/pixfmt/gbrp12-yuv440p12be.yuv
diff --git a/tests/ref/pixfmt/gbrp12-yuv440p12le b/tests/ref/pixfmt/gbrp12-yuv440p12le
new file mode 100644
index 0000000000..5310be659b
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-yuv440p12le
@@ -0,0 +1,2 @@
+2530f4bda2e79ba6f5bb45084fab4839 *tests/data/pixfmt/gbrp12-yuv440p12le.yuv
+15206400 tests/data/pixfmt/gbrp12-yuv440p12le.yuv
diff --git a/tests/ref/pixfmt/gbrp12-yuv444p12be b/tests/ref/pixfmt/gbrp12-yuv444p12be
new file mode 100644
index 0000000000..98be5bcf66
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-yuv444p12be
@@ -0,0 +1,2 @@
+6ff4167f711069638f0b2db840bdeb32 *tests/data/pixfmt/gbrp12-yuv444p12be.yuv
+15206400 tests/data/pixfmt/gbrp12-yuv444p12be.yuv
diff --git a/tests/ref/pixfmt/gbrp12-yuv444p12le b/tests/ref/pixfmt/gbrp12-yuv444p12le
new file mode 100644
index 0000000000..203695bc3b
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp12-yuv444p12le
@@ -0,0 +1,2 @@
+6ff4167f711069638f0b2db840bdeb32 *tests/data/pixfmt/gbrp12-yuv444p12le.yuv
+15206400 tests/data/pixfmt/gbrp12-yuv444p12le.yuv
diff --git a/tests/ref/pixfmt/gbrp16-gbrp16be b/tests/ref/pixfmt/gbrp16-gbrp16be
new file mode 100644
index 0000000000..bc07a26502
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-gbrp16be
@@ -0,0 +1,2 @@
+94062696eb0b5295e51e7011402df9f7 *tests/data/pixfmt/gbrp16-gbrp16be.yuv
+15206400 tests/data/pixfmt/gbrp16-gbrp16be.yuv
diff --git a/tests/ref/pixfmt/gbrp16-gbrp16le b/tests/ref/pixfmt/gbrp16-gbrp16le
new file mode 100644
index 0000000000..9649cea62d
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-gbrp16le
@@ -0,0 +1,2 @@
+94062696eb0b5295e51e7011402df9f7 *tests/data/pixfmt/gbrp16-gbrp16le.yuv
+15206400 tests/data/pixfmt/gbrp16-gbrp16le.yuv
diff --git a/tests/ref/pixfmt/gbrp16-gray16be b/tests/ref/pixfmt/gbrp16-gray16be
new file mode 100644
index 0000000000..281b8c20a9
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-gray16be
@@ -0,0 +1,2 @@
+a0ba643a2c0e151cf57fc5a669119c30 *tests/data/pixfmt/gbrp16-gray16be.yuv
+15206400 tests/data/pixfmt/gbrp16-gray16be.yuv
diff --git a/tests/ref/pixfmt/gbrp16-gray16le b/tests/ref/pixfmt/gbrp16-gray16le
new file mode 100644
index 0000000000..c245416cf5
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-gray16le
@@ -0,0 +1,2 @@
+a0ba643a2c0e151cf57fc5a669119c30 *tests/data/pixfmt/gbrp16-gray16le.yuv
+15206400 tests/data/pixfmt/gbrp16-gray16le.yuv
diff --git a/tests/ref/pixfmt/gbrp16-p016be b/tests/ref/pixfmt/gbrp16-p016be
new file mode 100644
index 0000000000..073020b595
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-p016be
@@ -0,0 +1,2 @@
+1c9911a8f978eee6e6c512e9889645d2 *tests/data/pixfmt/gbrp16-p016be.yuv
+15206400 tests/data/pixfmt/gbrp16-p016be.yuv
diff --git a/tests/ref/pixfmt/gbrp16-p016le b/tests/ref/pixfmt/gbrp16-p016le
new file mode 100644
index 0000000000..469352c9eb
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-p016le
@@ -0,0 +1,2 @@
+1c9911a8f978eee6e6c512e9889645d2 *tests/data/pixfmt/gbrp16-p016le.yuv
+15206400 tests/data/pixfmt/gbrp16-p016le.yuv
diff --git a/tests/ref/pixfmt/gbrp16-p216be b/tests/ref/pixfmt/gbrp16-p216be
new file mode 100644
index 0000000000..1aefc347ca
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-p216be
@@ -0,0 +1,2 @@
+9935ba7a76d9a0c3585c839daddc6ae2 *tests/data/pixfmt/gbrp16-p216be.yuv
+15206400 tests/data/pixfmt/gbrp16-p216be.yuv
diff --git a/tests/ref/pixfmt/gbrp16-p216le b/tests/ref/pixfmt/gbrp16-p216le
new file mode 100644
index 0000000000..44fb3b0972
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-p216le
@@ -0,0 +1,2 @@
+9935ba7a76d9a0c3585c839daddc6ae2 *tests/data/pixfmt/gbrp16-p216le.yuv
+15206400 tests/data/pixfmt/gbrp16-p216le.yuv
diff --git a/tests/ref/pixfmt/gbrp16-p416be b/tests/ref/pixfmt/gbrp16-p416be
new file mode 100644
index 0000000000..abf1ff9c64
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-p416be
@@ -0,0 +1,2 @@
+f3d24ec5ed4834335c8b67bbaa76eb7a *tests/data/pixfmt/gbrp16-p416be.yuv
+15206400 tests/data/pixfmt/gbrp16-p416be.yuv
diff --git a/tests/ref/pixfmt/gbrp16-p416le b/tests/ref/pixfmt/gbrp16-p416le
new file mode 100644
index 0000000000..cd1d0315e0
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-p416le
@@ -0,0 +1,2 @@
+f3d24ec5ed4834335c8b67bbaa76eb7a *tests/data/pixfmt/gbrp16-p416le.yuv
+15206400 tests/data/pixfmt/gbrp16-p416le.yuv
diff --git a/tests/ref/pixfmt/gbrp16-rgb48 b/tests/ref/pixfmt/gbrp16-rgb48
new file mode 100644
index 0000000000..1c081cdfc8
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-rgb48
@@ -0,0 +1,2 @@
+94062696eb0b5295e51e7011402df9f7 *tests/data/pixfmt/gbrp16-rgb48.yuv
+15206400 tests/data/pixfmt/gbrp16-rgb48.yuv
diff --git a/tests/ref/pixfmt/gbrp16-xv48be b/tests/ref/pixfmt/gbrp16-xv48be
new file mode 100644
index 0000000000..613f75e735
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-xv48be
@@ -0,0 +1,2 @@
+f3d24ec5ed4834335c8b67bbaa76eb7a *tests/data/pixfmt/gbrp16-xv48be.yuv
+15206400 tests/data/pixfmt/gbrp16-xv48be.yuv
diff --git a/tests/ref/pixfmt/gbrp16-xv48le b/tests/ref/pixfmt/gbrp16-xv48le
new file mode 100644
index 0000000000..7d3a19ca5f
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-xv48le
@@ -0,0 +1,2 @@
+f3d24ec5ed4834335c8b67bbaa76eb7a *tests/data/pixfmt/gbrp16-xv48le.yuv
+15206400 tests/data/pixfmt/gbrp16-xv48le.yuv
diff --git a/tests/ref/pixfmt/gbrp16-y216le b/tests/ref/pixfmt/gbrp16-y216le
new file mode 100644
index 0000000000..ea7b4b1caf
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-y216le
@@ -0,0 +1,2 @@
+9935ba7a76d9a0c3585c839daddc6ae2 *tests/data/pixfmt/gbrp16-y216le.yuv
+15206400 tests/data/pixfmt/gbrp16-y216le.yuv
diff --git a/tests/ref/pixfmt/gbrp16-yuv420p16be b/tests/ref/pixfmt/gbrp16-yuv420p16be
new file mode 100644
index 0000000000..886453b2c1
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-yuv420p16be
@@ -0,0 +1,2 @@
+1c9911a8f978eee6e6c512e9889645d2 *tests/data/pixfmt/gbrp16-yuv420p16be.yuv
+15206400 tests/data/pixfmt/gbrp16-yuv420p16be.yuv
diff --git a/tests/ref/pixfmt/gbrp16-yuv420p16le b/tests/ref/pixfmt/gbrp16-yuv420p16le
new file mode 100644
index 0000000000..06e940335e
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-yuv420p16le
@@ -0,0 +1,2 @@
+1c9911a8f978eee6e6c512e9889645d2 *tests/data/pixfmt/gbrp16-yuv420p16le.yuv
+15206400 tests/data/pixfmt/gbrp16-yuv420p16le.yuv
diff --git a/tests/ref/pixfmt/gbrp16-yuv422p16be b/tests/ref/pixfmt/gbrp16-yuv422p16be
new file mode 100644
index 0000000000..06d75642ca
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-yuv422p16be
@@ -0,0 +1,2 @@
+9935ba7a76d9a0c3585c839daddc6ae2 *tests/data/pixfmt/gbrp16-yuv422p16be.yuv
+15206400 tests/data/pixfmt/gbrp16-yuv422p16be.yuv
diff --git a/tests/ref/pixfmt/gbrp16-yuv422p16le b/tests/ref/pixfmt/gbrp16-yuv422p16le
new file mode 100644
index 0000000000..32249956b8
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-yuv422p16le
@@ -0,0 +1,2 @@
+9935ba7a76d9a0c3585c839daddc6ae2 *tests/data/pixfmt/gbrp16-yuv422p16le.yuv
+15206400 tests/data/pixfmt/gbrp16-yuv422p16le.yuv
diff --git a/tests/ref/pixfmt/gbrp16-yuv444p16be b/tests/ref/pixfmt/gbrp16-yuv444p16be
new file mode 100644
index 0000000000..e41ff37c35
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-yuv444p16be
@@ -0,0 +1,2 @@
+f3d24ec5ed4834335c8b67bbaa76eb7a *tests/data/pixfmt/gbrp16-yuv444p16be.yuv
+15206400 tests/data/pixfmt/gbrp16-yuv444p16be.yuv
diff --git a/tests/ref/pixfmt/gbrp16-yuv444p16le b/tests/ref/pixfmt/gbrp16-yuv444p16le
new file mode 100644
index 0000000000..47f512a193
--- /dev/null
+++ b/tests/ref/pixfmt/gbrp16-yuv444p16le
@@ -0,0 +1,2 @@
+f3d24ec5ed4834335c8b67bbaa76eb7a *tests/data/pixfmt/gbrp16-yuv444p16le.yuv
+15206400 tests/data/pixfmt/gbrp16-yuv444p16le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-gbrp10be b/tests/ref/pixfmt/yuv444p10-gbrp10be
new file mode 100644
index 0000000000..8cd1c8fc1a
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-gbrp10be
@@ -0,0 +1,2 @@
+6cdf9b72bd78858e6c67fa13073e12fd *tests/data/pixfmt/yuv444p10-gbrp10be.yuv
+15206400 tests/data/pixfmt/yuv444p10-gbrp10be.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-gbrp10le b/tests/ref/pixfmt/yuv444p10-gbrp10le
new file mode 100644
index 0000000000..bc049518a6
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-gbrp10le
@@ -0,0 +1,2 @@
+6cdf9b72bd78858e6c67fa13073e12fd *tests/data/pixfmt/yuv444p10-gbrp10le.yuv
+15206400 tests/data/pixfmt/yuv444p10-gbrp10le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-gray10be b/tests/ref/pixfmt/yuv444p10-gray10be
new file mode 100644
index 0000000000..d45640de98
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-gray10be
@@ -0,0 +1,2 @@
+8aa2787bccc6bb606b6465ca7807c916 *tests/data/pixfmt/yuv444p10-gray10be.yuv
+15206400 tests/data/pixfmt/yuv444p10-gray10be.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-gray10le b/tests/ref/pixfmt/yuv444p10-gray10le
new file mode 100644
index 0000000000..588267084b
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-gray10le
@@ -0,0 +1,2 @@
+8aa2787bccc6bb606b6465ca7807c916 *tests/data/pixfmt/yuv444p10-gray10le.yuv
+15206400 tests/data/pixfmt/yuv444p10-gray10le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-p010be b/tests/ref/pixfmt/yuv444p10-p010be
new file mode 100644
index 0000000000..64a5e57af7
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-p010be
@@ -0,0 +1,2 @@
+1854c7f0ebae45a92a5932eeae5a7b0c *tests/data/pixfmt/yuv444p10-p010be.yuv
+15206400 tests/data/pixfmt/yuv444p10-p010be.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-p010le b/tests/ref/pixfmt/yuv444p10-p010le
new file mode 100644
index 0000000000..7bd01959ee
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-p010le
@@ -0,0 +1,2 @@
+1854c7f0ebae45a92a5932eeae5a7b0c *tests/data/pixfmt/yuv444p10-p010le.yuv
+15206400 tests/data/pixfmt/yuv444p10-p010le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-p210be b/tests/ref/pixfmt/yuv444p10-p210be
new file mode 100644
index 0000000000..4e016b536d
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-p210be
@@ -0,0 +1,2 @@
+97f489a1f7e4f6537dd3b137368991d3 *tests/data/pixfmt/yuv444p10-p210be.yuv
+15206400 tests/data/pixfmt/yuv444p10-p210be.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-p210le b/tests/ref/pixfmt/yuv444p10-p210le
new file mode 100644
index 0000000000..ef6298a61d
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-p210le
@@ -0,0 +1,2 @@
+97f489a1f7e4f6537dd3b137368991d3 *tests/data/pixfmt/yuv444p10-p210le.yuv
+15206400 tests/data/pixfmt/yuv444p10-p210le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-p410be b/tests/ref/pixfmt/yuv444p10-p410be
new file mode 100644
index 0000000000..a371dc06ba
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-p410be
@@ -0,0 +1,2 @@
+c9f69deda55dd67c78c6e1e819b0bc52 *tests/data/pixfmt/yuv444p10-p410be.yuv
+15206400 tests/data/pixfmt/yuv444p10-p410be.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-p410le b/tests/ref/pixfmt/yuv444p10-p410le
new file mode 100644
index 0000000000..f246300ded
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-p410le
@@ -0,0 +1,2 @@
+c9f69deda55dd67c78c6e1e819b0bc52 *tests/data/pixfmt/yuv444p10-p410le.yuv
+15206400 tests/data/pixfmt/yuv444p10-p410le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-v30xle b/tests/ref/pixfmt/yuv444p10-v30xle
new file mode 100644
index 0000000000..19538786d6
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-v30xle
@@ -0,0 +1,2 @@
+c9f69deda55dd67c78c6e1e819b0bc52 *tests/data/pixfmt/yuv444p10-v30xle.yuv
+15206400 tests/data/pixfmt/yuv444p10-v30xle.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-x2bgr10le b/tests/ref/pixfmt/yuv444p10-x2bgr10le
new file mode 100644
index 0000000000..d98555b9eb
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-x2bgr10le
@@ -0,0 +1,2 @@
+bd94a74eca76673fd6ada31dbce543dc *tests/data/pixfmt/yuv444p10-x2bgr10le.yuv
+15206400 tests/data/pixfmt/yuv444p10-x2bgr10le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-x2rgb10le b/tests/ref/pixfmt/yuv444p10-x2rgb10le
new file mode 100644
index 0000000000..d2c3bb66f0
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-x2rgb10le
@@ -0,0 +1,2 @@
+bd94a74eca76673fd6ada31dbce543dc *tests/data/pixfmt/yuv444p10-x2rgb10le.yuv
+15206400 tests/data/pixfmt/yuv444p10-x2rgb10le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-xv30le b/tests/ref/pixfmt/yuv444p10-xv30le
new file mode 100644
index 0000000000..738a0dacfa
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-xv30le
@@ -0,0 +1,2 @@
+c9f69deda55dd67c78c6e1e819b0bc52 *tests/data/pixfmt/yuv444p10-xv30le.yuv
+15206400 tests/data/pixfmt/yuv444p10-xv30le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-y210le b/tests/ref/pixfmt/yuv444p10-y210le
new file mode 100644
index 0000000000..79af5fa517
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-y210le
@@ -0,0 +1,2 @@
+97f489a1f7e4f6537dd3b137368991d3 *tests/data/pixfmt/yuv444p10-y210le.yuv
+15206400 tests/data/pixfmt/yuv444p10-y210le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-yuv420p10be b/tests/ref/pixfmt/yuv444p10-yuv420p10be
new file mode 100644
index 0000000000..637fdfa0cb
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-yuv420p10be
@@ -0,0 +1,2 @@
+1854c7f0ebae45a92a5932eeae5a7b0c *tests/data/pixfmt/yuv444p10-yuv420p10be.yuv
+15206400 tests/data/pixfmt/yuv444p10-yuv420p10be.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-yuv420p10le b/tests/ref/pixfmt/yuv444p10-yuv420p10le
new file mode 100644
index 0000000000..e2b79fd949
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-yuv420p10le
@@ -0,0 +1,2 @@
+1854c7f0ebae45a92a5932eeae5a7b0c *tests/data/pixfmt/yuv444p10-yuv420p10le.yuv
+15206400 tests/data/pixfmt/yuv444p10-yuv420p10le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-yuv422p10be b/tests/ref/pixfmt/yuv444p10-yuv422p10be
new file mode 100644
index 0000000000..cdf8133aff
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-yuv422p10be
@@ -0,0 +1,2 @@
+97f489a1f7e4f6537dd3b137368991d3 *tests/data/pixfmt/yuv444p10-yuv422p10be.yuv
+15206400 tests/data/pixfmt/yuv444p10-yuv422p10be.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-yuv422p10le b/tests/ref/pixfmt/yuv444p10-yuv422p10le
new file mode 100644
index 0000000000..7c25e76dac
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-yuv422p10le
@@ -0,0 +1,2 @@
+97f489a1f7e4f6537dd3b137368991d3 *tests/data/pixfmt/yuv444p10-yuv422p10le.yuv
+15206400 tests/data/pixfmt/yuv444p10-yuv422p10le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-yuv440p10be b/tests/ref/pixfmt/yuv444p10-yuv440p10be
new file mode 100644
index 0000000000..f58b5cc116
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-yuv440p10be
@@ -0,0 +1,2 @@
+71571ea8895dee2019133bb732e420ae *tests/data/pixfmt/yuv444p10-yuv440p10be.yuv
+15206400 tests/data/pixfmt/yuv444p10-yuv440p10be.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-yuv440p10le b/tests/ref/pixfmt/yuv444p10-yuv440p10le
new file mode 100644
index 0000000000..1384a736d6
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-yuv440p10le
@@ -0,0 +1,2 @@
+71571ea8895dee2019133bb732e420ae *tests/data/pixfmt/yuv444p10-yuv440p10le.yuv
+15206400 tests/data/pixfmt/yuv444p10-yuv440p10le.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-yuv444p10be b/tests/ref/pixfmt/yuv444p10-yuv444p10be
new file mode 100644
index 0000000000..bf02f994c8
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-yuv444p10be
@@ -0,0 +1,2 @@
+c9f69deda55dd67c78c6e1e819b0bc52 *tests/data/pixfmt/yuv444p10-yuv444p10be.yuv
+15206400 tests/data/pixfmt/yuv444p10-yuv444p10be.yuv
diff --git a/tests/ref/pixfmt/yuv444p10-yuv444p10le b/tests/ref/pixfmt/yuv444p10-yuv444p10le
new file mode 100644
index 0000000000..06752134a1
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p10-yuv444p10le
@@ -0,0 +1,2 @@
+c9f69deda55dd67c78c6e1e819b0bc52 *tests/data/pixfmt/yuv444p10-yuv444p10le.yuv
+15206400 tests/data/pixfmt/yuv444p10-yuv444p10le.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-gbrp12be b/tests/ref/pixfmt/yuv444p12-gbrp12be
new file mode 100644
index 0000000000..60476d9191
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-gbrp12be
@@ -0,0 +1,2 @@
+01115c63e1c29a441d7b7ed195b772b6 *tests/data/pixfmt/yuv444p12-gbrp12be.yuv
+15206400 tests/data/pixfmt/yuv444p12-gbrp12be.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-gbrp12le b/tests/ref/pixfmt/yuv444p12-gbrp12le
new file mode 100644
index 0000000000..d0bae89d7c
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-gbrp12le
@@ -0,0 +1,2 @@
+01115c63e1c29a441d7b7ed195b772b6 *tests/data/pixfmt/yuv444p12-gbrp12le.yuv
+15206400 tests/data/pixfmt/yuv444p12-gbrp12le.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-gray12be b/tests/ref/pixfmt/yuv444p12-gray12be
new file mode 100644
index 0000000000..163dc5af81
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-gray12be
@@ -0,0 +1,2 @@
+4169bcb673a2d53639d3a68f9f65f164 *tests/data/pixfmt/yuv444p12-gray12be.yuv
+15206400 tests/data/pixfmt/yuv444p12-gray12be.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-gray12le b/tests/ref/pixfmt/yuv444p12-gray12le
new file mode 100644
index 0000000000..3697e91f03
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-gray12le
@@ -0,0 +1,2 @@
+4169bcb673a2d53639d3a68f9f65f164 *tests/data/pixfmt/yuv444p12-gray12le.yuv
+15206400 tests/data/pixfmt/yuv444p12-gray12le.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-p012be b/tests/ref/pixfmt/yuv444p12-p012be
new file mode 100644
index 0000000000..e83f4a0a01
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-p012be
@@ -0,0 +1,2 @@
+7dcb29fa938b1ef3dcf7022df2269430 *tests/data/pixfmt/yuv444p12-p012be.yuv
+15206400 tests/data/pixfmt/yuv444p12-p012be.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-p012le b/tests/ref/pixfmt/yuv444p12-p012le
new file mode 100644
index 0000000000..fde77c54da
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-p012le
@@ -0,0 +1,2 @@
+7dcb29fa938b1ef3dcf7022df2269430 *tests/data/pixfmt/yuv444p12-p012le.yuv
+15206400 tests/data/pixfmt/yuv444p12-p012le.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-p212be b/tests/ref/pixfmt/yuv444p12-p212be
new file mode 100644
index 0000000000..33b14ac082
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-p212be
@@ -0,0 +1,2 @@
+57776acbfc159f077df11ef9b686603d *tests/data/pixfmt/yuv444p12-p212be.yuv
+15206400 tests/data/pixfmt/yuv444p12-p212be.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-p212le b/tests/ref/pixfmt/yuv444p12-p212le
new file mode 100644
index 0000000000..290f2f5a0b
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-p212le
@@ -0,0 +1,2 @@
+57776acbfc159f077df11ef9b686603d *tests/data/pixfmt/yuv444p12-p212le.yuv
+15206400 tests/data/pixfmt/yuv444p12-p212le.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-p412be b/tests/ref/pixfmt/yuv444p12-p412be
new file mode 100644
index 0000000000..fa8e65f961
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-p412be
@@ -0,0 +1,2 @@
+5d600b24fcb10ff30d9ea1bdd0df87d0 *tests/data/pixfmt/yuv444p12-p412be.yuv
+15206400 tests/data/pixfmt/yuv444p12-p412be.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-p412le b/tests/ref/pixfmt/yuv444p12-p412le
new file mode 100644
index 0000000000..ab55dcb40f
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-p412le
@@ -0,0 +1,2 @@
+5d600b24fcb10ff30d9ea1bdd0df87d0 *tests/data/pixfmt/yuv444p12-p412le.yuv
+15206400 tests/data/pixfmt/yuv444p12-p412le.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-xv36be b/tests/ref/pixfmt/yuv444p12-xv36be
new file mode 100644
index 0000000000..dd41d3f76a
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-xv36be
@@ -0,0 +1,2 @@
+5d600b24fcb10ff30d9ea1bdd0df87d0 *tests/data/pixfmt/yuv444p12-xv36be.yuv
+15206400 tests/data/pixfmt/yuv444p12-xv36be.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-xv36le b/tests/ref/pixfmt/yuv444p12-xv36le
new file mode 100644
index 0000000000..adb25de9df
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-xv36le
@@ -0,0 +1,2 @@
+5d600b24fcb10ff30d9ea1bdd0df87d0 *tests/data/pixfmt/yuv444p12-xv36le.yuv
+15206400 tests/data/pixfmt/yuv444p12-xv36le.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-y212le b/tests/ref/pixfmt/yuv444p12-y212le
new file mode 100644
index 0000000000..daaf60e4c2
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-y212le
@@ -0,0 +1,2 @@
+57776acbfc159f077df11ef9b686603d *tests/data/pixfmt/yuv444p12-y212le.yuv
+15206400 tests/data/pixfmt/yuv444p12-y212le.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-yuv420p12be b/tests/ref/pixfmt/yuv444p12-yuv420p12be
new file mode 100644
index 0000000000..72a844b185
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-yuv420p12be
@@ -0,0 +1,2 @@
+7dcb29fa938b1ef3dcf7022df2269430 *tests/data/pixfmt/yuv444p12-yuv420p12be.yuv
+15206400 tests/data/pixfmt/yuv444p12-yuv420p12be.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-yuv420p12le b/tests/ref/pixfmt/yuv444p12-yuv420p12le
new file mode 100644
index 0000000000..5081515e78
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-yuv420p12le
@@ -0,0 +1,2 @@
+7dcb29fa938b1ef3dcf7022df2269430 *tests/data/pixfmt/yuv444p12-yuv420p12le.yuv
+15206400 tests/data/pixfmt/yuv444p12-yuv420p12le.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-yuv422p12be b/tests/ref/pixfmt/yuv444p12-yuv422p12be
new file mode 100644
index 0000000000..40879d3953
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-yuv422p12be
@@ -0,0 +1,2 @@
+57776acbfc159f077df11ef9b686603d *tests/data/pixfmt/yuv444p12-yuv422p12be.yuv
+15206400 tests/data/pixfmt/yuv444p12-yuv422p12be.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-yuv422p12le b/tests/ref/pixfmt/yuv444p12-yuv422p12le
new file mode 100644
index 0000000000..f97d1d6312
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-yuv422p12le
@@ -0,0 +1,2 @@
+57776acbfc159f077df11ef9b686603d *tests/data/pixfmt/yuv444p12-yuv422p12le.yuv
+15206400 tests/data/pixfmt/yuv444p12-yuv422p12le.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-yuv440p12be b/tests/ref/pixfmt/yuv444p12-yuv440p12be
new file mode 100644
index 0000000000..230722edcf
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-yuv440p12be
@@ -0,0 +1,2 @@
+dcd6cd61183333de9906cf8fbd2a1623 *tests/data/pixfmt/yuv444p12-yuv440p12be.yuv
+15206400 tests/data/pixfmt/yuv444p12-yuv440p12be.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-yuv440p12le b/tests/ref/pixfmt/yuv444p12-yuv440p12le
new file mode 100644
index 0000000000..6e937d2742
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-yuv440p12le
@@ -0,0 +1,2 @@
+dcd6cd61183333de9906cf8fbd2a1623 *tests/data/pixfmt/yuv444p12-yuv440p12le.yuv
+15206400 tests/data/pixfmt/yuv444p12-yuv440p12le.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-yuv444p12be b/tests/ref/pixfmt/yuv444p12-yuv444p12be
new file mode 100644
index 0000000000..cb110f176e
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-yuv444p12be
@@ -0,0 +1,2 @@
+5d600b24fcb10ff30d9ea1bdd0df87d0 *tests/data/pixfmt/yuv444p12-yuv444p12be.yuv
+15206400 tests/data/pixfmt/yuv444p12-yuv444p12be.yuv
diff --git a/tests/ref/pixfmt/yuv444p12-yuv444p12le b/tests/ref/pixfmt/yuv444p12-yuv444p12le
new file mode 100644
index 0000000000..e10a8c68d2
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p12-yuv444p12le
@@ -0,0 +1,2 @@
+5d600b24fcb10ff30d9ea1bdd0df87d0 *tests/data/pixfmt/yuv444p12-yuv444p12le.yuv
+15206400 tests/data/pixfmt/yuv444p12-yuv444p12le.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-gbrp16be b/tests/ref/pixfmt/yuv444p16-gbrp16be
new file mode 100644
index 0000000000..05192a384e
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-gbrp16be
@@ -0,0 +1,2 @@
+e17e9f40deb2a9163f97c9bd86d6fa90 *tests/data/pixfmt/yuv444p16-gbrp16be.yuv
+15206400 tests/data/pixfmt/yuv444p16-gbrp16be.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-gbrp16le b/tests/ref/pixfmt/yuv444p16-gbrp16le
new file mode 100644
index 0000000000..47597e2cb0
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-gbrp16le
@@ -0,0 +1,2 @@
+e17e9f40deb2a9163f97c9bd86d6fa90 *tests/data/pixfmt/yuv444p16-gbrp16le.yuv
+15206400 tests/data/pixfmt/yuv444p16-gbrp16le.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-gray16be b/tests/ref/pixfmt/yuv444p16-gray16be
new file mode 100644
index 0000000000..fea9148f20
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-gray16be
@@ -0,0 +1,2 @@
+2f340cbc906e7a5b9311639bc7836995 *tests/data/pixfmt/yuv444p16-gray16be.yuv
+15206400 tests/data/pixfmt/yuv444p16-gray16be.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-gray16le b/tests/ref/pixfmt/yuv444p16-gray16le
new file mode 100644
index 0000000000..97a992167f
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-gray16le
@@ -0,0 +1,2 @@
+2f340cbc906e7a5b9311639bc7836995 *tests/data/pixfmt/yuv444p16-gray16le.yuv
+15206400 tests/data/pixfmt/yuv444p16-gray16le.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-p016be b/tests/ref/pixfmt/yuv444p16-p016be
new file mode 100644
index 0000000000..a46d23edc8
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-p016be
@@ -0,0 +1,2 @@
+1127a969920eb7057dbe38cc3152ba82 *tests/data/pixfmt/yuv444p16-p016be.yuv
+15206400 tests/data/pixfmt/yuv444p16-p016be.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-p016le b/tests/ref/pixfmt/yuv444p16-p016le
new file mode 100644
index 0000000000..82b2c705be
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-p016le
@@ -0,0 +1,2 @@
+1127a969920eb7057dbe38cc3152ba82 *tests/data/pixfmt/yuv444p16-p016le.yuv
+15206400 tests/data/pixfmt/yuv444p16-p016le.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-p216be b/tests/ref/pixfmt/yuv444p16-p216be
new file mode 100644
index 0000000000..72c2edb248
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-p216be
@@ -0,0 +1,2 @@
+f7c3efb4677ee80055314b7f0716dfd8 *tests/data/pixfmt/yuv444p16-p216be.yuv
+15206400 tests/data/pixfmt/yuv444p16-p216be.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-p216le b/tests/ref/pixfmt/yuv444p16-p216le
new file mode 100644
index 0000000000..7798bb6e58
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-p216le
@@ -0,0 +1,2 @@
+f7c3efb4677ee80055314b7f0716dfd8 *tests/data/pixfmt/yuv444p16-p216le.yuv
+15206400 tests/data/pixfmt/yuv444p16-p216le.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-p416be b/tests/ref/pixfmt/yuv444p16-p416be
new file mode 100644
index 0000000000..f6d404c3b3
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-p416be
@@ -0,0 +1,2 @@
+6f12c480f7c1c8f996e84bbd44278bfb *tests/data/pixfmt/yuv444p16-p416be.yuv
+15206400 tests/data/pixfmt/yuv444p16-p416be.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-p416le b/tests/ref/pixfmt/yuv444p16-p416le
new file mode 100644
index 0000000000..7d93b79450
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-p416le
@@ -0,0 +1,2 @@
+6f12c480f7c1c8f996e84bbd44278bfb *tests/data/pixfmt/yuv444p16-p416le.yuv
+15206400 tests/data/pixfmt/yuv444p16-p416le.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-rgb48 b/tests/ref/pixfmt/yuv444p16-rgb48
new file mode 100644
index 0000000000..32daac769f
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-rgb48
@@ -0,0 +1,2 @@
+e17e9f40deb2a9163f97c9bd86d6fa90 *tests/data/pixfmt/yuv444p16-rgb48.yuv
+15206400 tests/data/pixfmt/yuv444p16-rgb48.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-xv48be b/tests/ref/pixfmt/yuv444p16-xv48be
new file mode 100644
index 0000000000..a04abf086c
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-xv48be
@@ -0,0 +1,2 @@
+6f12c480f7c1c8f996e84bbd44278bfb *tests/data/pixfmt/yuv444p16-xv48be.yuv
+15206400 tests/data/pixfmt/yuv444p16-xv48be.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-xv48le b/tests/ref/pixfmt/yuv444p16-xv48le
new file mode 100644
index 0000000000..e6e2fd1dc5
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-xv48le
@@ -0,0 +1,2 @@
+6f12c480f7c1c8f996e84bbd44278bfb *tests/data/pixfmt/yuv444p16-xv48le.yuv
+15206400 tests/data/pixfmt/yuv444p16-xv48le.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-y216le b/tests/ref/pixfmt/yuv444p16-y216le
new file mode 100644
index 0000000000..7880b445d0
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-y216le
@@ -0,0 +1,2 @@
+f7c3efb4677ee80055314b7f0716dfd8 *tests/data/pixfmt/yuv444p16-y216le.yuv
+15206400 tests/data/pixfmt/yuv444p16-y216le.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-yuv420p16be b/tests/ref/pixfmt/yuv444p16-yuv420p16be
new file mode 100644
index 0000000000..be5050dc4f
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-yuv420p16be
@@ -0,0 +1,2 @@
+1127a969920eb7057dbe38cc3152ba82 *tests/data/pixfmt/yuv444p16-yuv420p16be.yuv
+15206400 tests/data/pixfmt/yuv444p16-yuv420p16be.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-yuv420p16le b/tests/ref/pixfmt/yuv444p16-yuv420p16le
new file mode 100644
index 0000000000..4d858df471
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-yuv420p16le
@@ -0,0 +1,2 @@
+1127a969920eb7057dbe38cc3152ba82 *tests/data/pixfmt/yuv444p16-yuv420p16le.yuv
+15206400 tests/data/pixfmt/yuv444p16-yuv420p16le.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-yuv422p16be b/tests/ref/pixfmt/yuv444p16-yuv422p16be
new file mode 100644
index 0000000000..15aa8b4992
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-yuv422p16be
@@ -0,0 +1,2 @@
+f7c3efb4677ee80055314b7f0716dfd8 *tests/data/pixfmt/yuv444p16-yuv422p16be.yuv
+15206400 tests/data/pixfmt/yuv444p16-yuv422p16be.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-yuv422p16le b/tests/ref/pixfmt/yuv444p16-yuv422p16le
new file mode 100644
index 0000000000..c1e2494b03
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-yuv422p16le
@@ -0,0 +1,2 @@
+f7c3efb4677ee80055314b7f0716dfd8 *tests/data/pixfmt/yuv444p16-yuv422p16le.yuv
+15206400 tests/data/pixfmt/yuv444p16-yuv422p16le.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-yuv444p16be b/tests/ref/pixfmt/yuv444p16-yuv444p16be
new file mode 100644
index 0000000000..b4ead84fbd
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-yuv444p16be
@@ -0,0 +1,2 @@
+6f12c480f7c1c8f996e84bbd44278bfb *tests/data/pixfmt/yuv444p16-yuv444p16be.yuv
+15206400 tests/data/pixfmt/yuv444p16-yuv444p16be.yuv
diff --git a/tests/ref/pixfmt/yuv444p16-yuv444p16le b/tests/ref/pixfmt/yuv444p16-yuv444p16le
new file mode 100644
index 0000000000..a3bacfd020
--- /dev/null
+++ b/tests/ref/pixfmt/yuv444p16-yuv444p16le
@@ -0,0 +1,2 @@
+6f12c480f7c1c8f996e84bbd44278bfb *tests/data/pixfmt/yuv444p16-yuv444p16le.yuv
+15206400 tests/data/pixfmt/yuv444p16-yuv444p16le.yuv