From: Peter B <p...@das-werkstatt.com>

Signed-off-by: Luca Barbato <lu_z...@gentoo.org>
---
 tests/Makefile                           |   1 +
 tests/fate/ffv1.mak                      | 314 +++++++++++++++++++++++++++++++
 tests/ref/fate/ffv1-dec-v1-bff           |   0
 tests/ref/fate/ffv1-dec-v1-bgra          |   0
 tests/ref/fate/ffv1-dec-v1-defaults      |   0
 tests/ref/fate/ffv1-dec-v1-gray          |   0
 tests/ref/fate/ffv1-dec-v1-rgb32         |   0
 tests/ref/fate/ffv1-dec-v1-tff           |   0
 tests/ref/fate/ffv1-dec-v1-yuv410p       |   0
 tests/ref/fate/ffv1-dec-v1-yuv411p       |   0
 tests/ref/fate/ffv1-dec-v1-yuv420p       |   0
 tests/ref/fate/ffv1-dec-v1-yuv422p       |   0
 tests/ref/fate/ffv1-dec-v1-yuv444p       |   0
 tests/ref/fate/ffv1-dec-v3-bff           |   0
 tests/ref/fate/ffv1-dec-v3-defaults      |   0
 tests/ref/fate/ffv1-dec-v3-rgb32         |   0
 tests/ref/fate/ffv1-dec-v3-tff           |   0
 tests/ref/fate/ffv1-dec-v3-yuv410p       |   0
 tests/ref/fate/ffv1-dec-v3-yuv420p       |   0
 tests/ref/fate/ffv1-dec-v3-yuv420p10     |   0
 tests/ref/fate/ffv1-dec-v3-yuv420p16     |   0
 tests/ref/fate/ffv1-dec-v3-yuv420p9      |   0
 tests/ref/fate/ffv1-dec-v3-yuv422p       |   0
 tests/ref/fate/ffv1-dec-v3-yuv422p10     |   0
 tests/ref/fate/ffv1-dec-v3-yuv422p10_crc |   0
 tests/ref/fate/ffv1-dec-v3-yuv422p16     |   0
 tests/ref/fate/ffv1-dec-v3-yuv422p16_crc |   0
 tests/ref/fate/ffv1-dec-v3-yuv422p9      |   0
 tests/ref/fate/ffv1-dec-v3-yuv422p9_crc  |   0
 tests/ref/fate/ffv1-dec-v3-yuv422p_crc   |   0
 tests/ref/fate/ffv1-dec-v3-yuv422p_pass1 |   0
 tests/ref/fate/ffv1-dec-v3-yuv422p_pass2 |   0
 tests/ref/fate/ffv1-dec-v3-yuv444p       |   0
 tests/ref/fate/ffv1-dec-v3-yuv444p10     |   0
 tests/ref/fate/ffv1-dec-v3-yuv444p16     |   0
 tests/ref/fate/ffv1-dec-v3-yuv444p9      |   0
 tests/ref/fate/ffv1-enc-v1-bff           |   4 +
 tests/ref/fate/ffv1-enc-v1-bgra          |   4 +
 tests/ref/fate/ffv1-enc-v1-defaults      |   4 +
 tests/ref/fate/ffv1-enc-v1-gray          |   4 +
 tests/ref/fate/ffv1-enc-v1-rgb32         |   4 +
 tests/ref/fate/ffv1-enc-v1-tff           |   4 +
 tests/ref/fate/ffv1-enc-v1-yuv410p       |   4 +
 tests/ref/fate/ffv1-enc-v1-yuv411p       |   4 +
 tests/ref/fate/ffv1-enc-v1-yuv420p       |   4 +
 tests/ref/fate/ffv1-enc-v1-yuv422p       |   4 +
 tests/ref/fate/ffv1-enc-v1-yuv444p       |   4 +
 tests/ref/fate/ffv1-enc-v3-bff           |   4 +
 tests/ref/fate/ffv1-enc-v3-defaults      |   4 +
 tests/ref/fate/ffv1-enc-v3-rgb32         |   4 +
 tests/ref/fate/ffv1-enc-v3-tff           |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv410p       |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv420p       |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv420p10     |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv420p16     |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv420p9      |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv422p       |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv422p10     |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv422p10_crc |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv422p16     |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv422p16_crc |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv422p9      |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv422p9_crc  |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv422p_crc   |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv422p_pass1 |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv422p_pass2 |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv444p       |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv444p10     |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv444p16     |   4 +
 tests/ref/fate/ffv1-enc-v3-yuv444p9      |   4 +
 tests/ref/fate/ffv1-fuzzed1              |   5 +
 tests/ref/fate/ffv1-fuzzed2              |   5 +
 tests/ref/fate/ffv1-invalid1             |   0
 tests/ref/fate/ffv1-invalid2             |   0
 tests/ref/fate/ffv1-invalid3             |   0
 tests/ref/fate/ffv1-invalid4             |   0
 tests/ref/fate/ffv1-invalid5             |   0
 77 files changed, 461 insertions(+)
 create mode 100644 tests/fate/ffv1.mak
 create mode 100644 tests/ref/fate/ffv1-dec-v1-bff
 create mode 100644 tests/ref/fate/ffv1-dec-v1-bgra
 create mode 100644 tests/ref/fate/ffv1-dec-v1-defaults
 create mode 100644 tests/ref/fate/ffv1-dec-v1-gray
 create mode 100644 tests/ref/fate/ffv1-dec-v1-rgb32
 create mode 100644 tests/ref/fate/ffv1-dec-v1-tff
 create mode 100644 tests/ref/fate/ffv1-dec-v1-yuv410p
 create mode 100644 tests/ref/fate/ffv1-dec-v1-yuv411p
 create mode 100644 tests/ref/fate/ffv1-dec-v1-yuv420p
 create mode 100644 tests/ref/fate/ffv1-dec-v1-yuv422p
 create mode 100644 tests/ref/fate/ffv1-dec-v1-yuv444p
 create mode 100644 tests/ref/fate/ffv1-dec-v3-bff
 create mode 100644 tests/ref/fate/ffv1-dec-v3-defaults
 create mode 100644 tests/ref/fate/ffv1-dec-v3-rgb32
 create mode 100644 tests/ref/fate/ffv1-dec-v3-tff
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv410p
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv420p
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv420p10
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv420p16
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv420p9
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv422p
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv422p10
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv422p10_crc
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv422p16
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv422p16_crc
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv422p9
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv422p9_crc
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv422p_crc
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv422p_pass1
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv422p_pass2
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv444p
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv444p10
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv444p16
 create mode 100644 tests/ref/fate/ffv1-dec-v3-yuv444p9
 create mode 100644 tests/ref/fate/ffv1-enc-v1-bff
 create mode 100644 tests/ref/fate/ffv1-enc-v1-bgra
 create mode 100644 tests/ref/fate/ffv1-enc-v1-defaults
 create mode 100644 tests/ref/fate/ffv1-enc-v1-gray
 create mode 100644 tests/ref/fate/ffv1-enc-v1-rgb32
 create mode 100644 tests/ref/fate/ffv1-enc-v1-tff
 create mode 100644 tests/ref/fate/ffv1-enc-v1-yuv410p
 create mode 100644 tests/ref/fate/ffv1-enc-v1-yuv411p
 create mode 100644 tests/ref/fate/ffv1-enc-v1-yuv420p
 create mode 100644 tests/ref/fate/ffv1-enc-v1-yuv422p
 create mode 100644 tests/ref/fate/ffv1-enc-v1-yuv444p
 create mode 100644 tests/ref/fate/ffv1-enc-v3-bff
 create mode 100644 tests/ref/fate/ffv1-enc-v3-defaults
 create mode 100644 tests/ref/fate/ffv1-enc-v3-rgb32
 create mode 100644 tests/ref/fate/ffv1-enc-v3-tff
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv410p
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv420p
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv420p10
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv420p16
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv420p9
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv422p
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv422p10
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv422p10_crc
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv422p16
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv422p16_crc
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv422p9
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv422p9_crc
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv422p_crc
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv422p_pass1
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv422p_pass2
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv444p
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv444p10
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv444p16
 create mode 100644 tests/ref/fate/ffv1-enc-v3-yuv444p9
 create mode 100644 tests/ref/fate/ffv1-fuzzed1
 create mode 100644 tests/ref/fate/ffv1-fuzzed2
 create mode 100644 tests/ref/fate/ffv1-invalid1
 create mode 100644 tests/ref/fate/ffv1-invalid2
 create mode 100644 tests/ref/fate/ffv1-invalid3
 create mode 100644 tests/ref/fate/ffv1-invalid4
 create mode 100644 tests/ref/fate/ffv1-invalid5

diff --git a/tests/Makefile b/tests/Makefile
index 004b44c..97b82cb 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -78,6 +78,7 @@ include $(SRC_PATH)/tests/fate/filter-audio.mak
 include $(SRC_PATH)/tests/fate/filter-video.mak
 include $(SRC_PATH)/tests/fate/flac.mak
 include $(SRC_PATH)/tests/fate/fft.mak
+include $(SRC_PATH)/tests/fate/ffv1.mak
 include $(SRC_PATH)/tests/fate/h264.mak
 include $(SRC_PATH)/tests/fate/hevc.mak
 include $(SRC_PATH)/tests/fate/image.mak
diff --git a/tests/fate/ffv1.mak b/tests/fate/ffv1.mak
new file mode 100644
index 0000000..3626246
--- /dev/null
+++ b/tests/fate/ffv1.mak
@@ -0,0 +1,314 @@
+# This Makefile checks for $(CONFIG_...) variables being set, so we can
+# include/exclude tests accordingly:
+ifdef CONFIG_AVCONV
+FLAGS_FFV1_V3 = -strict experimental
+else
+FLAGS_FFV1_V3 =
+endif
+
+DEC_SRC = $(TARGET_PATH)/tests/data/fate
+
+fate-ffv1-enc-%: CODEC = $(word 2, $(subst -, ,$(@)))
+fate-ffv1-enc-%: FMT = avi
+fate-ffv1-enc-%: SRC = tests/data/vsynth1.yuv
+# Limit the duration of test videos to 4 frames at 25fps:
+fate-ffv1-enc-%: DUR = 0:00:00.160
+fate-ffv1-enc-%: CMD = enc_dec "rawvideo -s 352x288 -pix_fmt yuv420p 
$(RAWDECOPTS)" $(SRC) $(FMT) "-t $(DUR) -c $(CODEC) $(ENCOPTS)" rawvideo "-s 
352x288 -pix_fmt yuv420p -vsync 0 $(DECOPTS)" -keep "$(DECINOPTS)"
+
+
+FATE_FFV1_LEVEL1 =     v1-defaults \
+                       v1-gray \
+                       v1-rgb32 \
+                       v1-yuv410p \
+                       v1-yuv411p \
+                       v1-yuv420p \
+                       v1-yuv422p \
+                       v1-yuv444p \
+                       v1-bgra \
+                       v1-tff \
+                       v1-bff
+
+# Target-specific tests:
+ifdef CONFIG_FFMPEG
+FATE_FFV1_LEVEL1 +=    v1-bgr0 \
+                       v1-yuv440p \
+                       v1-yuva420p \
+                       v1-yuva422p \
+                       v1-yuva444p
+endif
+
+FATE_FFV1_LEVEL3 =     v3-defaults \
+                       v3-rgb32 \
+                       v3-yuv410p \
+                       v3-yuv420p \
+                       v3-yuv422p \
+                       v3-yuv444p \
+                       v3-yuv420p9 \
+                       v3-yuv422p9 \
+                       v3-yuv444p9 \
+                       v3-yuv420p10 \
+                       v3-yuv422p10 \
+                       v3-yuv444p10 \
+                       v3-yuv420p16 \
+                       v3-yuv422p16 \
+                       v3-yuv444p16 \
+                       v3-yuv422p_crc \
+                       v3-yuv422p9_crc \
+                       v3-yuv422p10_crc \
+                       v3-yuv422p16_crc \
+                       v3-yuv422p_pass1 \
+                       v3-yuv422p_pass2 \
+                       v3-tff \
+                       v3-bff
+
+# Target-specific tests:
+ifdef CONFIG_FFMPEG
+FATE_FFV1_LEVEL3 +=    v3-gray \
+                       v3-gray16 \
+                       v3-bgr0 \
+                       v3-gbrp9 \
+                       v3-gbrp10 \
+                       v3-gbrp12 \
+                       v3-gbrp14 \
+                       v3-yuva420p9 \
+                       v3-yuva422p9 \
+                       v3-yuva444p9 \
+                       v3-yuva420p10 \
+                       v3-yuva422p10 \
+                       v3-yuva444p10 \
+                       v3-yuva420p16 \
+                       v3-yuva422p16 \
+                       v3-yuva444p16
+endif
+
+
+FATE_FFV1 = $(FATE_FFV1_LEVEL1) \
+            $(FATE_FFV1_LEVEL3)
+
+
+# ------------ FFV1 - version 1
+###################################################
+#  Encoding:
+###################################################
+#  YUV (8bit)
+#  - This also iterates through all coder/context combinations.
+fate-ffv1-enc-v1-defaults:       ENCOPTS = -level 1
+fate-ffv1-enc-v1-yuv410p:        ENCOPTS = -level 1 -g 1 -coder 0 -context 0 
-pix_fmt yuv410p
+fate-ffv1-enc-v1-yuv411p:        ENCOPTS = -level 1 -g 1 -coder 0 -context 0 
-pix_fmt yuv411p
+fate-ffv1-enc-v1-yuv420p:        ENCOPTS = -level 1 -g 1 -coder 0 -context 1 
-pix_fmt yuv420p
+fate-ffv1-enc-v1-yuv422p:        ENCOPTS = -level 1 -g 1 -coder 1 -context 0 
-pix_fmt yuv422p
+fate-ffv1-enc-v1-yuv444p:        ENCOPTS = -level 1 -g 1 -coder 1 -context 1 
-pix_fmt yuv444p
+fate-ffv1-enc-v1-yuv440p:        ENCOPTS = -level 1 -g 1 -coder 1 -context 1 
-pix_fmt yuv440p
+#  Gray (8bit)
+fate-ffv1-enc-v1-gray:           ENCOPTS = -level 1 -g 1 -coder 0 -context 0 
-pix_fmt gray
+#  RGB (8bit)
+fate-ffv1-enc-v1-rgb32:          ENCOPTS = -level 1 -g 1 -coder 0 -context 0 
-pix_fmt rgb32
+fate-ffv1-enc-v1-bgr0:           ENCOPTS = -level 1 -g 1 -coder 0 -context 0 
-pix_fmt bgr0
+#  Alpha channel / transparency:
+fate-ffv1-enc-v1-bgra:           ENCOPTS = -level 1 -g 1 -coder 0 -context 0 
-pix_fmt bgra
+fate-ffv1-enc-v1-yuva420p:       ENCOPTS = -level 1 -g 1 -coder 0 -context 1 
-pix_fmt yuva420p
+fate-ffv1-enc-v1-yuva422p:       ENCOPTS = -level 1 -g 1 -coder 1 -context 0 
-pix_fmt yuva422p
+fate-ffv1-enc-v1-yuva444p:       ENCOPTS = -level 1 -g 1 -coder 1 -context 1 
-pix_fmt yuva444p
+# Interlaced:
+fate-ffv1-enc-v1-tff:            ENCOPTS = -s pal -level 1 -top 1 -pix_fmt 
yuv422p
+fate-ffv1-enc-v1-bff:            ENCOPTS = -s pal -level 1 -top 0 -pix_fmt 
yuv422p
+
+###################################################
+#  Decoding:
+###################################################
+#  YUV (8bit)
+fate-ffv1-dec-v1-defaults:       ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-defaults.avi} fate-ffv1-enc-v1-defaults
+fate-ffv1-dec-v1-yuv410p:        ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-yuv410p.avi} fate-ffv1-enc-v1-yuv410p
+fate-ffv1-dec-v1-yuv411p:        ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-yuv411p.avi} fate-ffv1-enc-v1-yuv411p
+fate-ffv1-dec-v1-yuv420p:        ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-yuv420p.avi} fate-ffv1-enc-v1-yuv420p
+fate-ffv1-dec-v1-yuv422p:        ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-yuv422p.avi} fate-ffv1-enc-v1-yuv422p
+fate-ffv1-dec-v1-yuv444p:        ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-yuv444p.avi} fate-ffv1-enc-v1-yuv444p
+fate-ffv1-dec-v1-yuv440p:        ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-yuv440p.avi} fate-ffv1-enc-v1-yuv440p
+#  Gray (8bit)
+fate-ffv1-dec-v1-gray:           ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-gray.avi} fate-ffv1-enc-v1-gray
+#  RGB (8bit)
+fate-ffv1-dec-v1-rgb32:          ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-rgb32.avi} fate-ffv1-enc-v1-rgb32
+fate-ffv1-dec-v1-bgr0:           ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-bgr0.avi} fate-ffv1-enc-v1-bgr0
+#  Alpha channel / transparency:
+fate-ffv1-dec-v1-bgra:           ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-bgra.avi} fate-ffv1-enc-v1-bgra
+fate-ffv1-dec-v1-yuva420p:       ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-yuva420p.avi} fate-ffv1-enc-v1-yuva420p
+fate-ffv1-dec-v1-yuva422p:       ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-yuva422p.avi} fate-ffv1-enc-v1-yuva422p
+fate-ffv1-dec-v1-yuva444p:       ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-yuva444p.avi} fate-ffv1-enc-v1-yuva444p
+# Interlaced:
+fate-ffv1-dec-v1-tff:            ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-tff.avi} fate-ffv1-enc-v1-tff
+fate-ffv1-dec-v1-bff:            ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v1-bff.avi} fate-ffv1-enc-v1-bff
+
+
+# ------------ FFV1 - version 3
+###################################################
+#  Encoding:
+###################################################
+#  - This also iterates through slice variations (4, 12, 24, 30).
+#
+fate-ffv1-enc-v3-defaults:       ENCOPTS = -level 3 $(FLAGS_FFV1_V3)
+#  YUV (8bit)
+#  - This also iterates through all coder/context combinations.
+fate-ffv1-enc-v3-yuv410p:        ENCOPTS = -level 3 -g 1 -coder 0 -context 0 
-slices 4 -slicecrc 0 -pix_fmt yuv410p $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuv420p:        ENCOPTS = -level 3 -g 1 -coder 0 -context 1 
-slices 12 -slicecrc 0 -pix_fmt yuv420p $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuv422p:        ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 24 -slicecrc 0 -pix_fmt yuv422p $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuv444p:        ENCOPTS = -level 3 -g 1 -coder 1 -context 1 
-slices 30 -slicecrc 0 -pix_fmt yuv444p $(FLAGS_FFV1_V3)
+#  YUV (9bit)
+fate-ffv1-enc-v3-yuv420p9:       ENCOPTS = -level 3 -g 1 -coder -1 -context 1 
-slices 24 -slicecrc 0 -pix_fmt yuv420p9 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuv422p9:       ENCOPTS = -level 3 -g 1 -coder 2 -context 0 
-slices 30 -slicecrc 0 -pix_fmt yuv422p9 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuv444p9:       ENCOPTS = -level 3 -g 1 -coder 1 -context 1 
-slices 4  -slicecrc 0 -pix_fmt yuv444p9 $(FLAGS_FFV1_V3)
+#  YUV (10bit)
+fate-ffv1-enc-v3-yuv420p10:      ENCOPTS = -level 3 -g 1 -coder 1 -context 1 
-slices 30 -slicecrc 0 -pix_fmt yuv420p10 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuv422p10:      ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 4  -slicecrc 0 -pix_fmt yuv422p10 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuv444p10:      ENCOPTS = -level 3 -g 1 -coder 1 -context 1 
-slices 12 -slicecrc 0 -pix_fmt yuv444p10 $(FLAGS_FFV1_V3)
+#  YUV (16bit)
+fate-ffv1-enc-v3-yuv420p16:      ENCOPTS = -level 3 -g 1 -coder 1 -context 1 
-slices 4  -slicecrc 0 -pix_fmt yuv420p16 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuv422p16:      ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 12 -slicecrc 0 -pix_fmt yuv422p16 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuv444p16:      ENCOPTS = -level 3 -g 1 -coder 1 -context 1 
-slices 24 -slicecrc 0 -pix_fmt yuv444p16 $(FLAGS_FFV1_V3)
+#  Gray
+fate-ffv1-enc-v3-gray:           ENCOPTS = -level 3 -g 1 -coder 0 -context 0 
-slices 24 -slicecrc 0 -pix_fmt gray $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-gray16:         ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 24 -slicecrc 0 -pix_fmt gray16 $(FLAGS_FFV1_V3)
+#  RGB
+fate-ffv1-enc-v3-rgb32:          ENCOPTS = -level 3 -g 1 -coder 0 -context 0 
-slices 24 -slicecrc 0 -pix_fmt rgb32 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-bgr0:           ENCOPTS = -level 3 -g 1 -coder 0 -context 0 
-slices 24 -slicecrc 0 -pix_fmt bgr0 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-gbrp9:          ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 24 -slicecrc 0 -pix_fmt gbrp9 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-gbrp10:         ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 24 -slicecrc 0 -pix_fmt gbrp10 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-gbrp12:         ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 24 -slicecrc 0 -pix_fmt gbrp12 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-gbrp14:         ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 24 -slicecrc 0 -pix_fmt gbrp14 $(FLAGS_FFV1_V3)
+
+# Interlaced:
+fate-ffv1-enc-v3-tff:            ENCOPTS = -s pal -level 3 -top 1 -pix_fmt 
yuv422p $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-bff:            ENCOPTS = -s pal -level 3 -top 0 -pix_fmt 
yuv422p $(FLAGS_FFV1_V3)
+
+# Slice CRC: On
+fate-ffv1-enc-v3-yuv422p_crc:    ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 30 -slicecrc 1 -pix_fmt yuv422p $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuv422p9_crc:   ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 30 -slicecrc 1 -pix_fmt yuv422p9 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuv422p10_crc:  ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 30 -slicecrc 1 -pix_fmt yuv422p10 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuv422p16_crc:  ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 30 -slicecrc 1 -pix_fmt yuv422p16 $(FLAGS_FFV1_V3)
+
+# Multipass:
+fate-ffv1-enc-v3-yuv422p_pass1:  ENCOPTS = -level 3 -an -pix_fmt yuv422p -pass 
1 -passlogfile $(DEC_SRC)/ffv1-multipass $(FLAGS_FFV1_V3)
+
+fate-ffv1-enc-v3-yuv422p_pass2:  ${ENCOPTS = -level 3 -pix_fmt yuv422p -pass 2 
-passlogfile $(DEC_SRC)/ffv1-multipass $(FLAGS_FFV1_V3)} 
fate-ffv1-enc-v3-yuv422p_pass1
+
+# Alpha channel / transparency:
+#  YUV-A (9bit)
+fate-ffv1-enc-v3-yuva420p9:      ENCOPTS = -level 3 -g 1 -coder 1 -context 1 
-slices 24 -slicecrc 0 -pix_fmt yuva420p9 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuva422p9:      ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 30 -slicecrc 0 -pix_fmt yuva422p9 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuva444p9:      ENCOPTS = -level 3 -g 1 -coder 1 -context 1 
-slices 4  -slicecrc 0 -pix_fmt yuva444p9 $(FLAGS_FFV1_V3)
+#  YUV-A (10bit)
+fate-ffv1-enc-v3-yuva420p10:     ENCOPTS = -level 3 -g 1 -coder 1 -context 1 
-slices 24 -slicecrc 0 -pix_fmt yuva420p10 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuva422p10:     ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 30 -slicecrc 0 -pix_fmt yuva422p10 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuva444p10:     ENCOPTS = -level 3 -g 1 -coder 1 -context 1 
-slices 4  -slicecrc 0 -pix_fmt yuva444p10 $(FLAGS_FFV1_V3)
+#  YUV-A (16bit)
+fate-ffv1-enc-v3-yuva420p16:     ENCOPTS = -level 3 -g 1 -coder 1 -context 1 
-slices 24 -slicecrc 0 -pix_fmt yuva420p16 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuva422p16:     ENCOPTS = -level 3 -g 1 -coder 1 -context 0 
-slices 30 -slicecrc 0 -pix_fmt yuva422p16 $(FLAGS_FFV1_V3)
+fate-ffv1-enc-v3-yuva444p16:     ENCOPTS = -level 3 -g 1 -coder 1 -context 1 
-slices 4  -slicecrc 0 -pix_fmt yuva444p16 $(FLAGS_FFV1_V3)
+
+
+###################################################
+#  Decoding:
+###################################################
+#
+fate-ffv1-dec-v3-defaults:       ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-defaults.avi} fate-ffv1-enc-v3-defaults
+#  YUV (8bit)
+fate-ffv1-dec-v3-yuv410p:        ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv410p.avi} fate-ffv1-enc-v3-yuv410p
+fate-ffv1-dec-v3-yuv420p:        ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv420p.avi} fate-ffv1-enc-v3-yuv420p
+fate-ffv1-dec-v3-yuv422p:        ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv422p.avi} fate-ffv1-enc-v3-yuv422p
+fate-ffv1-dec-v3-yuv444p:        ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv444p.avi} fate-ffv1-enc-v3-yuv444p
+#  YUV (9bit)
+fate-ffv1-dec-v3-yuv420p9:       ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv420p9.avi} fate-ffv1-enc-v3-yuv420p9
+fate-ffv1-dec-v3-yuv422p9:       ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv422p9.avi} fate-ffv1-enc-v3-yuv422p9
+fate-ffv1-dec-v3-yuv444p9:       ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv444p9.avi} fate-ffv1-enc-v3-yuv444p9
+#  YUV (10bit)
+fate-ffv1-dec-v3-yuv420p10:      ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv420p10.avi} fate-ffv1-enc-v3-yuv420p10
+fate-ffv1-dec-v3-yuv422p10:      ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv422p10.avi} fate-ffv1-enc-v3-yuv422p10
+fate-ffv1-dec-v3-yuv444p10:      ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv444p10.avi} fate-ffv1-enc-v3-yuv444p10
+#  YUV (16bit)
+fate-ffv1-dec-v3-yuv420p16:      ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv420p16.avi} fate-ffv1-enc-v3-yuv420p16
+fate-ffv1-dec-v3-yuv422p16:      ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv422p16.avi} fate-ffv1-enc-v3-yuv422p16
+fate-ffv1-dec-v3-yuv444p16:      ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv444p16.avi} fate-ffv1-enc-v3-yuv444p16
+#  Gray
+fate-ffv1-dec-v3-gray:           ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-gray.avi} fate-ffv1-enc-v3-gray
+fate-ffv1-dec-v3-gray16:         ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-gray16.avi} fate-ffv1-enc-v3-gray16
+#  RGB
+fate-ffv1-dec-v3-rgb32:          ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-rgb32.avi} fate-ffv1-enc-v3-rgb32
+fate-ffv1-dec-v3-bgr0:           ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-bgr0.avi} fate-ffv1-enc-v3-bgr0
+fate-ffv1-dec-v3-gbrp9:          ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-gbrp9.avi} fate-ffv1-enc-v3-gbrp9
+fate-ffv1-dec-v3-gbrp10:         ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-gbrp10.avi} fate-ffv1-enc-v3-gbrp10
+fate-ffv1-dec-v3-gbrp12:         ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-gbrp12.avi} fate-ffv1-enc-v3-gbrp12
+fate-ffv1-dec-v3-gbrp14:         ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-gbrp14.avi} fate-ffv1-enc-v3-gbrp14
+
+# Interlaced:
+fate-ffv1-dec-v3-tff:            ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-tff.avi} fate-ffv1-enc-v3-tff
+fate-ffv1-dec-v3-bff:            ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-bff.avi} fate-ffv1-enc-v3-bff
+
+# Slice CRC: On
+fate-ffv1-dec-v3-yuv422p_crc:    ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv422p_crc.avi} fate-ffv1-enc-v3-yuv422p_crc
+fate-ffv1-dec-v3-yuv422p9_crc:   ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv422p9_crc.avi} fate-ffv1-enc-v3-yuv422p9_crc
+fate-ffv1-dec-v3-yuv422p10_crc:  ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv422p10_crc.avi} fate-ffv1-enc-v3-yuv422p10_crc
+fate-ffv1-dec-v3-yuv422p16_crc:  ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv422p16_crc.avi} fate-ffv1-enc-v3-yuv422p16_crc
+
+# Multipass:
+fate-ffv1-dec-v3-yuv422p_pass1:  ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv422p_pass1.avi} fate-ffv1-enc-v3-yuv422p_pass1
+fate-ffv1-dec-v3-yuv422p_pass2:  $(CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuv422p_pass2.avi) fate-ffv1-enc-v3-yuv422p_pass2
+
+# Alpha channel / transparency:
+#  YUV (9bit)
+fate-ffv1-dec-v3-yuva420p9:      ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuva420p9.avi} fate-ffv1-enc-v3-yuva420p9
+fate-ffv1-dec-v3-yuva422p9:      ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuva422p9.avi} fate-ffv1-enc-v3-yuva422p9
+fate-ffv1-dec-v3-yuva444p9:      ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuva444p9.avi} fate-ffv1-enc-v3-yuva444p9
+#  YUV (10bit)
+fate-ffv1-dec-v3-yuva420p10:     ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuva420p10.avi} fate-ffv1-enc-v3-yuva420p10
+fate-ffv1-dec-v3-yuva422p10:     ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuva422p10.avi} fate-ffv1-enc-v3-yuva422p10
+fate-ffv1-dec-v3-yuva444p10:     ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuva444p10.avi} fate-ffv1-enc-v3-yuva444p10
+#  YUV (16bit)
+fate-ffv1-dec-v3-yuva420p16:     ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuva420p16.avi} fate-ffv1-enc-v3-yuva420p16
+fate-ffv1-dec-v3-yuva422p16:     ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuva422p16.avi} fate-ffv1-enc-v3-yuva422p16
+fate-ffv1-dec-v3-yuva444p16:     ${CMD = framecrc -i 
$(DEC_SRC)/ffv1-enc-v3-yuva444p16.avi} fate-ffv1-enc-v3-yuva444p16
+
+###################################################
+# Testing error resilience:
+###################################################
+#fate-ffv1-fuzzed1:               CMD = framecrc -i 
$(TARGET_SAMPLES)/ffv1/ffv1.3-yuv422p-fuzzed.avi
+#fate-ffv1-fuzzed2:               CMD = framecrc -i 
$(TARGET_SAMPLES)/ffv1/ffv1.3-yuv422p_crc-fuzzed.avi
+
+###################################################
+# Testing invalid arguments:
+###################################################
+#fate-ffv1-invalid1:              ENCOPTS = -coder 1 -context -1
+#fate-ffv1-invalid2:              ENCOPTS = -level 3 -slices 3
+#fate-ffv1-invalid3:              ENCOPTS = -pix_fmt gbrp16
+#fate-ffv1-invalid4:              ENCOPTS = -level 2
+#fate-ffv1-invalid5:              ENCOPTS = -level 3 -coder 0 -context 0 
-slices 24 -slicecrc 0 -pix_fmt gbrp9
+
+
+
+###################################################
+FATE_FFV1 := $(FATE_FFV1:%=fate-ffv1-enc-%) \
+             $(FATE_FFV1:%=fate-ffv1-dec-%) \
+
+#             fate-ffv1-invalid1 \
+#             fate-ffv1-invalid2 \
+#             fate-ffv1-invalid3 \
+#             fate-ffv1-invalid4 \
+#             fate-ffv1-invalid5 \
+#             fate-ffv1-fuzzed1 \
+#             fate-ffv1-fuzzed2
+
+FATE_FFV1_LEVEL1 := $(FATE_FFV1_LEVEL1:%=fate-ffv1-enc-%) \
+                    $(FATE_FFV1_LEVEL1:%=fate-ffv1-dec-%)
+FATE_FFV1_LEVEL3 := $(FATE_FFV1_LEVEL3:%=fate-ffv1-enc-%) \
+                    $(FATE_FFV1_LEVEL3:%=fate-ffv1-dec-%)
+
+FATE_FFV1-$(call ENCDEC, FFV1, AVI) += $(FATE_FFV1)
+FATE_FFV1_LEVEL1-$(call ENCDEC, FFV1, AVI) += $(FATE_FFV1_LEVEL1)
+FATE_FFV1_LEVEL3-$(call ENCDEC, FFV1, AVI) += $(FATE_FFV1_LEVEL3)
+
+FATE_SAMPLES_AVCONV += $(FATE_FFV1-yes)
+fate-ffv1: $(FATE_FFV1-yes)
+fate-ffv1.1: $(FATE_FFV1_LEVEL1-yes)
+fate-ffv1.3: $(FATE_FFV1_LEVEL3-yes)
+
+# Requires generating vsynth1.yuv as input source:
+$(FATE_FFV1-yes): tests/data/vsynth1.yuv
+
diff --git a/tests/ref/fate/ffv1-dec-v1-bff b/tests/ref/fate/ffv1-dec-v1-bff
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v1-bgra b/tests/ref/fate/ffv1-dec-v1-bgra
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v1-defaults 
b/tests/ref/fate/ffv1-dec-v1-defaults
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v1-gray b/tests/ref/fate/ffv1-dec-v1-gray
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v1-rgb32 b/tests/ref/fate/ffv1-dec-v1-rgb32
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v1-tff b/tests/ref/fate/ffv1-dec-v1-tff
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v1-yuv410p 
b/tests/ref/fate/ffv1-dec-v1-yuv410p
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v1-yuv411p 
b/tests/ref/fate/ffv1-dec-v1-yuv411p
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v1-yuv420p 
b/tests/ref/fate/ffv1-dec-v1-yuv420p
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v1-yuv422p 
b/tests/ref/fate/ffv1-dec-v1-yuv422p
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v1-yuv444p 
b/tests/ref/fate/ffv1-dec-v1-yuv444p
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-bff b/tests/ref/fate/ffv1-dec-v3-bff
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-defaults 
b/tests/ref/fate/ffv1-dec-v3-defaults
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-rgb32 b/tests/ref/fate/ffv1-dec-v3-rgb32
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-tff b/tests/ref/fate/ffv1-dec-v3-tff
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv410p 
b/tests/ref/fate/ffv1-dec-v3-yuv410p
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv420p 
b/tests/ref/fate/ffv1-dec-v3-yuv420p
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv420p10 
b/tests/ref/fate/ffv1-dec-v3-yuv420p10
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv420p16 
b/tests/ref/fate/ffv1-dec-v3-yuv420p16
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv420p9 
b/tests/ref/fate/ffv1-dec-v3-yuv420p9
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv422p 
b/tests/ref/fate/ffv1-dec-v3-yuv422p
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv422p10 
b/tests/ref/fate/ffv1-dec-v3-yuv422p10
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv422p10_crc 
b/tests/ref/fate/ffv1-dec-v3-yuv422p10_crc
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv422p16 
b/tests/ref/fate/ffv1-dec-v3-yuv422p16
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv422p16_crc 
b/tests/ref/fate/ffv1-dec-v3-yuv422p16_crc
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv422p9 
b/tests/ref/fate/ffv1-dec-v3-yuv422p9
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv422p9_crc 
b/tests/ref/fate/ffv1-dec-v3-yuv422p9_crc
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv422p_crc 
b/tests/ref/fate/ffv1-dec-v3-yuv422p_crc
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv422p_pass1 
b/tests/ref/fate/ffv1-dec-v3-yuv422p_pass1
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv422p_pass2 
b/tests/ref/fate/ffv1-dec-v3-yuv422p_pass2
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv444p 
b/tests/ref/fate/ffv1-dec-v3-yuv444p
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv444p10 
b/tests/ref/fate/ffv1-dec-v3-yuv444p10
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv444p16 
b/tests/ref/fate/ffv1-dec-v3-yuv444p16
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-dec-v3-yuv444p9 
b/tests/ref/fate/ffv1-dec-v3-yuv444p9
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-enc-v1-bff b/tests/ref/fate/ffv1-enc-v1-bff
new file mode 100644
index 0000000..e050482
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v1-bff
@@ -0,0 +1,4 @@
+ca220f499d4bf37cc062ccb2e4a8b853 *tests/data/fate/ffv1-enc-v1-bff.avi
+1103420 tests/data/fate/ffv1-enc-v1-bff.avi
+5ae298fe228fc3a27a02812e6fbfff81 *tests/data/fate/ffv1-enc-v1-bff.out.rawvideo
+stddev: 7922.96 PSNR: 18.35 MAXDIFF:65296 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v1-bgra b/tests/ref/fate/ffv1-enc-v1-bgra
new file mode 100644
index 0000000..bd03c4e
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v1-bgra
@@ -0,0 +1,4 @@
+c33c6371ba23733e2ba36dd2c09760c1 *tests/data/fate/ffv1-enc-v1-bgra.avi
+615682 tests/data/fate/ffv1-enc-v1-bgra.avi
+99918fb1e0aee3274ad4ed33891aa702 *tests/data/fate/ffv1-enc-v1-bgra.out.rawvideo
+stddev: 6828.22 PSNR: 19.64 MAXDIFF:65299 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v1-defaults 
b/tests/ref/fate/ffv1-enc-v1-defaults
new file mode 100644
index 0000000..8edbe6b
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v1-defaults
@@ -0,0 +1,4 @@
+986008fc22b6072110d3fd46d677e87a *tests/data/fate/ffv1-enc-v1-defaults.avi
+222924 tests/data/fate/ffv1-enc-v1-defaults.avi
+cba3121587145d6e079d762879a8895f 
*tests/data/fate/ffv1-enc-v1-defaults.out.rawvideo
+stddev:    0.00 PSNR:999.99 MAXDIFF:    0 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v1-gray b/tests/ref/fate/ffv1-enc-v1-gray
new file mode 100644
index 0000000..d6cad1d
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v1-gray
@@ -0,0 +1,4 @@
+c08c821b7965a20729744bfb91d659c7 *tests/data/fate/ffv1-enc-v1-gray.avi
+143520 tests/data/fate/ffv1-enc-v1-gray.avi
+3163c8149fce17b6a640d9f37953603a *tests/data/fate/ffv1-enc-v1-gray.out.rawvideo
+stddev:23295.44 PSNR:  8.98 MAXDIFF:65344 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v1-rgb32 b/tests/ref/fate/ffv1-enc-v1-rgb32
new file mode 100644
index 0000000..8fe0ca6
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v1-rgb32
@@ -0,0 +1,4 @@
+c33c6371ba23733e2ba36dd2c09760c1 *tests/data/fate/ffv1-enc-v1-rgb32.avi
+615682 tests/data/fate/ffv1-enc-v1-rgb32.avi
+99918fb1e0aee3274ad4ed33891aa702 
*tests/data/fate/ffv1-enc-v1-rgb32.out.rawvideo
+stddev: 6828.22 PSNR: 19.64 MAXDIFF:65299 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v1-tff b/tests/ref/fate/ffv1-enc-v1-tff
new file mode 100644
index 0000000..51fe35e
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v1-tff
@@ -0,0 +1,4 @@
+ca220f499d4bf37cc062ccb2e4a8b853 *tests/data/fate/ffv1-enc-v1-tff.avi
+1103420 tests/data/fate/ffv1-enc-v1-tff.avi
+5ae298fe228fc3a27a02812e6fbfff81 *tests/data/fate/ffv1-enc-v1-tff.out.rawvideo
+stddev: 7922.96 PSNR: 18.35 MAXDIFF:65296 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v1-yuv410p 
b/tests/ref/fate/ffv1-enc-v1-yuv410p
new file mode 100644
index 0000000..6ceb627
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v1-yuv410p
@@ -0,0 +1,4 @@
+5ba2345efd1bb89c4b12141aa83387e6 *tests/data/fate/ffv1-enc-v1-yuv410p.avi
+177502 tests/data/fate/ffv1-enc-v1-yuv410p.avi
+cec94d2837736d61e82623cccc164932 
*tests/data/fate/ffv1-enc-v1-yuv410p.out.rawvideo
+stddev: 9506.28 PSNR: 16.77 MAXDIFF:65299 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v1-yuv411p 
b/tests/ref/fate/ffv1-enc-v1-yuv411p
new file mode 100644
index 0000000..3cb179c
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v1-yuv411p
@@ -0,0 +1,4 @@
+24f95e41b1d3f8fa10f444ca377fc9bf *tests/data/fate/ffv1-enc-v1-yuv411p.avi
+239044 tests/data/fate/ffv1-enc-v1-yuv411p.avi
+4d40041ca4b40a7747729c5bb97df43e 
*tests/data/fate/ffv1-enc-v1-yuv411p.out.rawvideo
+stddev: 8125.90 PSNR: 18.13 MAXDIFF:65290 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v1-yuv420p 
b/tests/ref/fate/ffv1-enc-v1-yuv420p
new file mode 100644
index 0000000..03627b9
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v1-yuv420p
@@ -0,0 +1,4 @@
+485be361cbebf5f2751bc94c8b8d3fad *tests/data/fate/ffv1-enc-v1-yuv420p.avi
+365884 tests/data/fate/ffv1-enc-v1-yuv420p.avi
+cba3121587145d6e079d762879a8895f 
*tests/data/fate/ffv1-enc-v1-yuv420p.out.rawvideo
+stddev:    0.00 PSNR:999.99 MAXDIFF:    0 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v1-yuv422p 
b/tests/ref/fate/ffv1-enc-v1-yuv422p
new file mode 100644
index 0000000..7bc328b
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v1-yuv422p
@@ -0,0 +1,4 @@
+b269ccd2be9ffa538b1a7ace9daa7e79 *tests/data/fate/ffv1-enc-v1-yuv422p.avi
+272410 tests/data/fate/ffv1-enc-v1-yuv422p.avi
+545b2dd2ad17644a2d2bf45e9e0a4820 
*tests/data/fate/ffv1-enc-v1-yuv422p.out.rawvideo
+stddev: 4437.72 PSNR: 23.39 MAXDIFF:65290 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v1-yuv444p 
b/tests/ref/fate/ffv1-enc-v1-yuv444p
new file mode 100644
index 0000000..e6bdd53
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v1-yuv444p
@@ -0,0 +1,4 @@
+620cd25f293f80efb56f9d89d73c7d09 *tests/data/fate/ffv1-enc-v1-yuv444p.avi
+408320 tests/data/fate/ffv1-enc-v1-yuv444p.avi
+3e1daa647242517dfa81561817246ead 
*tests/data/fate/ffv1-enc-v1-yuv444p.out.rawvideo
+stddev: 5376.45 PSNR: 21.72 MAXDIFF:65300 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-bff b/tests/ref/fate/ffv1-enc-v3-bff
new file mode 100644
index 0000000..192cc49
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-bff
@@ -0,0 +1,4 @@
+d8dda2056dfcdfe95f0624e5c8967b76 *tests/data/fate/ffv1-enc-v3-bff.avi
+1105092 tests/data/fate/ffv1-enc-v3-bff.avi
+5ae298fe228fc3a27a02812e6fbfff81 *tests/data/fate/ffv1-enc-v3-bff.out.rawvideo
+stddev: 7922.96 PSNR: 18.35 MAXDIFF:65296 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-defaults 
b/tests/ref/fate/ffv1-enc-v3-defaults
new file mode 100644
index 0000000..c255226
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-defaults
@@ -0,0 +1,4 @@
+5844bd5eb72fd4cb8682eba0cad13653 *tests/data/fate/ffv1-enc-v3-defaults.avi
+227598 tests/data/fate/ffv1-enc-v3-defaults.avi
+cba3121587145d6e079d762879a8895f 
*tests/data/fate/ffv1-enc-v3-defaults.out.rawvideo
+stddev:    0.00 PSNR:999.99 MAXDIFF:    0 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-rgb32 b/tests/ref/fate/ffv1-enc-v3-rgb32
new file mode 100644
index 0000000..bb38d7b
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-rgb32
@@ -0,0 +1,4 @@
+33b6638e0ec61e5b1e7f1d9c4e819be0 *tests/data/fate/ffv1-enc-v3-rgb32.avi
+659576 tests/data/fate/ffv1-enc-v3-rgb32.avi
+99918fb1e0aee3274ad4ed33891aa702 
*tests/data/fate/ffv1-enc-v3-rgb32.out.rawvideo
+stddev: 6828.22 PSNR: 19.64 MAXDIFF:65299 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-tff b/tests/ref/fate/ffv1-enc-v3-tff
new file mode 100644
index 0000000..929f7bf
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-tff
@@ -0,0 +1,4 @@
+d8dda2056dfcdfe95f0624e5c8967b76 *tests/data/fate/ffv1-enc-v3-tff.avi
+1105092 tests/data/fate/ffv1-enc-v3-tff.avi
+5ae298fe228fc3a27a02812e6fbfff81 *tests/data/fate/ffv1-enc-v3-tff.out.rawvideo
+stddev: 7922.96 PSNR: 18.35 MAXDIFF:65296 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv410p 
b/tests/ref/fate/ffv1-enc-v3-yuv410p
new file mode 100644
index 0000000..063bd86
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv410p
@@ -0,0 +1,4 @@
+9300841f3a4c1ce37b9959b9467a5dac *tests/data/fate/ffv1-enc-v3-yuv410p.avi
+185080 tests/data/fate/ffv1-enc-v3-yuv410p.avi
+cec94d2837736d61e82623cccc164932 
*tests/data/fate/ffv1-enc-v3-yuv410p.out.rawvideo
+stddev: 9506.28 PSNR: 16.77 MAXDIFF:65299 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv420p 
b/tests/ref/fate/ffv1-enc-v3-yuv420p
new file mode 100644
index 0000000..7f212f0
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv420p
@@ -0,0 +1,4 @@
+2a35836d96bc28277106ed2e1b89d8a4 *tests/data/fate/ffv1-enc-v3-yuv420p.avi
+389200 tests/data/fate/ffv1-enc-v3-yuv420p.avi
+cba3121587145d6e079d762879a8895f 
*tests/data/fate/ffv1-enc-v3-yuv420p.out.rawvideo
+stddev:    0.00 PSNR:999.99 MAXDIFF:    0 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv420p10 
b/tests/ref/fate/ffv1-enc-v3-yuv420p10
new file mode 100644
index 0000000..d9bb23d
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv420p10
@@ -0,0 +1,4 @@
+6b8282ac947979f437351f91931fa066 *tests/data/fate/ffv1-enc-v3-yuv420p10.avi
+377734 tests/data/fate/ffv1-enc-v3-yuv420p10.avi
+e4b903bce007a7772c0a060416ae668e 
*tests/data/fate/ffv1-enc-v3-yuv420p10.out.rawvideo
+stddev:  124.61 PSNR: 54.42 MAXDIFF:  257 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv420p16 
b/tests/ref/fate/ffv1-enc-v3-yuv420p16
new file mode 100644
index 0000000..348fb53
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv420p16
@@ -0,0 +1,4 @@
+f3892ff2bbf2392e65c051d479c540ca *tests/data/fate/ffv1-enc-v3-yuv420p16.avi
+615368 tests/data/fate/ffv1-enc-v3-yuv420p16.avi
+3d2b0883b3b04d35210dc8366995cfbc 
*tests/data/fate/ffv1-enc-v3-yuv420p16.out.rawvideo
+stddev: 3882.29 PSNR: 24.55 MAXDIFF:65280 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv420p9 
b/tests/ref/fate/ffv1-enc-v3-yuv420p9
new file mode 100644
index 0000000..c3de692
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv420p9
@@ -0,0 +1,4 @@
+d18134077e7bc72db35dce71e8bc0bd3 *tests/data/fate/ffv1-enc-v3-yuv420p9.avi
+312552 tests/data/fate/ffv1-enc-v3-yuv420p9.avi
+e9d3847ce7f454a50add0f4b63dd9fa0 
*tests/data/fate/ffv1-enc-v3-yuv420p9.out.rawvideo
+stddev:  124.53 PSNR: 54.42 MAXDIFF:  256 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv422p 
b/tests/ref/fate/ffv1-enc-v3-yuv422p
new file mode 100644
index 0000000..0a848fd
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv422p
@@ -0,0 +1,4 @@
+c93a22a6b123d83df210a3fc3db705a2 *tests/data/fate/ffv1-enc-v3-yuv422p.avi
+316370 tests/data/fate/ffv1-enc-v3-yuv422p.avi
+545b2dd2ad17644a2d2bf45e9e0a4820 
*tests/data/fate/ffv1-enc-v3-yuv422p.out.rawvideo
+stddev: 4437.72 PSNR: 23.39 MAXDIFF:65290 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv422p10 
b/tests/ref/fate/ffv1-enc-v3-yuv422p10
new file mode 100644
index 0000000..4e7f4f8
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv422p10
@@ -0,0 +1,4 @@
+4fbef23684c9d42a1eb21da11287de07 *tests/data/fate/ffv1-enc-v3-yuv422p10.avi
+377546 tests/data/fate/ffv1-enc-v3-yuv422p10.avi
+fc2524a0004837fb11c7d0c3962f8889 
*tests/data/fate/ffv1-enc-v3-yuv422p10.out.rawvideo
+stddev: 4486.64 PSNR: 23.29 MAXDIFF:65289 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv422p10_crc 
b/tests/ref/fate/ffv1-enc-v3-yuv422p10_crc
new file mode 100644
index 0000000..0d44518
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv422p10_crc
@@ -0,0 +1,4 @@
+6f8fc4d512a76cee84cf326e2c260319 *tests/data/fate/ffv1-enc-v3-yuv422p10_crc.avi
+442206 tests/data/fate/ffv1-enc-v3-yuv422p10_crc.avi
+fc2524a0004837fb11c7d0c3962f8889 
*tests/data/fate/ffv1-enc-v3-yuv422p10_crc.out.rawvideo
+stddev: 4486.64 PSNR: 23.29 MAXDIFF:65289 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv422p16 
b/tests/ref/fate/ffv1-enc-v3-yuv422p16
new file mode 100644
index 0000000..a6828a5
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv422p16
@@ -0,0 +1,4 @@
+8756d5a1ca13d4494c1780c63adc1a52 *tests/data/fate/ffv1-enc-v3-yuv422p16.avi
+819030 tests/data/fate/ffv1-enc-v3-yuv422p16.avi
+392a5899d36d0a3e8370824c60ab1233 
*tests/data/fate/ffv1-enc-v3-yuv422p16.out.rawvideo
+stddev: 4482.76 PSNR: 23.30 MAXDIFF:65289 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv422p16_crc 
b/tests/ref/fate/ffv1-enc-v3-yuv422p16_crc
new file mode 100644
index 0000000..d38839e
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv422p16_crc
@@ -0,0 +1,4 @@
+494903bbb298c83d1fea4082b576590b *tests/data/fate/ffv1-enc-v3-yuv422p16_crc.avi
+872064 tests/data/fate/ffv1-enc-v3-yuv422p16_crc.avi
+392a5899d36d0a3e8370824c60ab1233 
*tests/data/fate/ffv1-enc-v3-yuv422p16_crc.out.rawvideo
+stddev: 4482.76 PSNR: 23.30 MAXDIFF:65289 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv422p9 
b/tests/ref/fate/ffv1-enc-v3-yuv422p9
new file mode 100644
index 0000000..9c42c6e
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv422p9
@@ -0,0 +1,4 @@
+fd3a4b79e4440959095b9d4d70bd7a41 *tests/data/fate/ffv1-enc-v3-yuv422p9.avi
+379024 tests/data/fate/ffv1-enc-v3-yuv422p9.avi
+cda73ae0e4e6f02292a619728ad03f84 
*tests/data/fate/ffv1-enc-v3-yuv422p9.out.rawvideo
+stddev: 4484.11 PSNR: 23.30 MAXDIFF:65290 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv422p9_crc 
b/tests/ref/fate/ffv1-enc-v3-yuv422p9_crc
new file mode 100644
index 0000000..bbcf333
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv422p9_crc
@@ -0,0 +1,4 @@
+f7904f9b392c5bfcc5c805d357f11b05 *tests/data/fate/ffv1-enc-v3-yuv422p9_crc.avi
+379624 tests/data/fate/ffv1-enc-v3-yuv422p9_crc.avi
+cda73ae0e4e6f02292a619728ad03f84 
*tests/data/fate/ffv1-enc-v3-yuv422p9_crc.out.rawvideo
+stddev: 4484.11 PSNR: 23.30 MAXDIFF:65290 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv422p_crc 
b/tests/ref/fate/ffv1-enc-v3-yuv422p_crc
new file mode 100644
index 0000000..87af828
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv422p_crc
@@ -0,0 +1,4 @@
+7dbadc61bb70be70b400c7afb40c5b77 *tests/data/fate/ffv1-enc-v3-yuv422p_crc.avi
+323156 tests/data/fate/ffv1-enc-v3-yuv422p_crc.avi
+545b2dd2ad17644a2d2bf45e9e0a4820 
*tests/data/fate/ffv1-enc-v3-yuv422p_crc.out.rawvideo
+stddev: 4437.72 PSNR: 23.39 MAXDIFF:65290 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv422p_pass1 
b/tests/ref/fate/ffv1-enc-v3-yuv422p_pass1
new file mode 100644
index 0000000..5b3ea86
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv422p_pass1
@@ -0,0 +1,4 @@
+235211e1106d4848011eb48ea3959eba *tests/data/fate/ffv1-enc-v3-yuv422p_pass1.avi
+298890 tests/data/fate/ffv1-enc-v3-yuv422p_pass1.avi
+545b2dd2ad17644a2d2bf45e9e0a4820 
*tests/data/fate/ffv1-enc-v3-yuv422p_pass1.out.rawvideo
+stddev: 4437.72 PSNR: 23.39 MAXDIFF:65290 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv422p_pass2 
b/tests/ref/fate/ffv1-enc-v3-yuv422p_pass2
new file mode 100644
index 0000000..277f4fa
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv422p_pass2
@@ -0,0 +1,4 @@
+986008fc22b6072110d3fd46d677e87a *tests/data/fate/ffv1-enc-v3-yuv422p_pass2.avi
+222924 tests/data/fate/ffv1-enc-v3-yuv422p_pass2.avi
+cba3121587145d6e079d762879a8895f 
*tests/data/fate/ffv1-enc-v3-yuv422p_pass2.out.rawvideo
+stddev:    0.00 PSNR:999.99 MAXDIFF:    0 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv444p 
b/tests/ref/fate/ffv1-enc-v3-yuv444p
new file mode 100644
index 0000000..1b7fa7f
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv444p
@@ -0,0 +1,4 @@
+585737ec71ba516ad94bb0cfe7973a45 *tests/data/fate/ffv1-enc-v3-yuv444p.avi
+482450 tests/data/fate/ffv1-enc-v3-yuv444p.avi
+3e1daa647242517dfa81561817246ead 
*tests/data/fate/ffv1-enc-v3-yuv444p.out.rawvideo
+stddev: 5376.45 PSNR: 21.72 MAXDIFF:65300 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv444p10 
b/tests/ref/fate/ffv1-enc-v3-yuv444p10
new file mode 100644
index 0000000..4cfe303
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv444p10
@@ -0,0 +1,4 @@
+c1115552432b0b68a314f33b874d7726 *tests/data/fate/ffv1-enc-v3-yuv444p10.avi
+689952 tests/data/fate/ffv1-enc-v3-yuv444p10.avi
+6147e60c2830e29433b6d583dc3aa449 
*tests/data/fate/ffv1-enc-v3-yuv444p10.out.rawvideo
+stddev: 5415.12 PSNR: 21.66 MAXDIFF:65297 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv444p16 
b/tests/ref/fate/ffv1-enc-v3-yuv444p16
new file mode 100644
index 0000000..f5d368d
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv444p16
@@ -0,0 +1,4 @@
+7d0ad4f6eeb4f454d28e839b31da181b *tests/data/fate/ffv1-enc-v3-yuv444p16.avi
+1649770 tests/data/fate/ffv1-enc-v3-yuv444p16.avi
+d34f4e9d1f5230543fb5f50269687cf4 
*tests/data/fate/ffv1-enc-v3-yuv444p16.out.rawvideo
+stddev: 5420.97 PSNR: 21.65 MAXDIFF:65297 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-enc-v3-yuv444p9 
b/tests/ref/fate/ffv1-enc-v3-yuv444p9
new file mode 100644
index 0000000..71b9c9f
--- /dev/null
+++ b/tests/ref/fate/ffv1-enc-v3-yuv444p9
@@ -0,0 +1,4 @@
+de86c37b2459e223c41fc7ee4257b9bd *tests/data/fate/ffv1-enc-v3-yuv444p9.avi
+517626 tests/data/fate/ffv1-enc-v3-yuv444p9.avi
+1eca72244fd740fc6534443d895e3298 
*tests/data/fate/ffv1-enc-v3-yuv444p9.out.rawvideo
+stddev: 5409.45 PSNR: 21.67 MAXDIFF:65297 bytes:  7603200/   608256
diff --git a/tests/ref/fate/ffv1-fuzzed1 b/tests/ref/fate/ffv1-fuzzed1
new file mode 100644
index 0000000..59b351c
--- /dev/null
+++ b/tests/ref/fate/ffv1-fuzzed1
@@ -0,0 +1,5 @@
+#tb 0: 1/25
+0,          0,          0,        1,   829440, 0xffe884fb
+0,          1,          1,        1,   829440, 0xfa3651f8
+0,          2,          2,        1,   829440, 0x81af0589
+0,          3,          3,        1,   829440, 0xbc227bb0
diff --git a/tests/ref/fate/ffv1-fuzzed2 b/tests/ref/fate/ffv1-fuzzed2
new file mode 100644
index 0000000..f684fae
--- /dev/null
+++ b/tests/ref/fate/ffv1-fuzzed2
@@ -0,0 +1,5 @@
+#tb 0: 1/25
+0,          0,          0,        1,   829440, 0xffe884fb
+0,          1,          1,        1,   829440, 0xfa3651f8
+0,          2,          2,        1,   829440, 0x0f29ccb9
+0,          3,          3,        1,   829440, 0xbc227bb0
diff --git a/tests/ref/fate/ffv1-invalid1 b/tests/ref/fate/ffv1-invalid1
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-invalid2 b/tests/ref/fate/ffv1-invalid2
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-invalid3 b/tests/ref/fate/ffv1-invalid3
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-invalid4 b/tests/ref/fate/ffv1-invalid4
new file mode 100644
index 0000000..e69de29
diff --git a/tests/ref/fate/ffv1-invalid5 b/tests/ref/fate/ffv1-invalid5
new file mode 100644
index 0000000..e69de29
-- 
1.8.5.1

_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to