Commit 4be0bdb101 for ffmpeg

commit 4be0bdb101776b4e4fe7cf212c2b88e7304f68ff
Author: Michael Niedermayer <michael@niedermayer.cc>
Date:   Tue Sep 22 23:09:22 2026 +0000

    fate/filter: add xfade endpoint regression tests

    xfade had no FATE coverage at all. Add small sample-free framecrc tests
    for the six transitions whose transition endpoint frames (progress == 1
    or progress == 0) read out of bounds before the fix (slideleft, slideup,
    revealleft, revealup, squeezeh, squeezev), one 16-bit variant, and one
    case with duration=0 that made progress NaN.

    All tests fail on the unfixed code and pass with the fix.

    Assisted-by: Fairy

diff --git a/tests/fate/filter-video.mak b/tests/fate/filter-video.mak
index 564c970e60..ebbc0a7d1c 100644
--- a/tests/fate/filter-video.mak
+++ b/tests/fate/filter-video.mak
@@ -985,6 +985,30 @@ FATE_FILTER-$(call ALLYES, TESTSRC2_FILTER SPLIT_FILTER AVGBLUR_FILTER        \
 FATE_FILTER-$(call FILTERFRAMECRC, TESTSRC SCALE PREMULTIPLY, LAVFI_INDEV) += fate-filter-scale-premultiply
 fate-filter-scale-premultiply: CMD = framecrc -auto_conversion_filters -lavfi "testsrc,format=rgba,setparams=alpha_mode=premultiplied,format=rgba:alpha_modes=straight" -frames:v 10

+FATE_FILTER-$(call FILTERFRAMECRC, COLOR XFADE FORMAT) += fate-filter-xfade-slideleft
+fate-filter-xfade-slideleft: CMD = framecrc -filter_complex "color=c=red:s=8x8:r=8:d=4,format=yuv444p[a];color=c=0x0000ff:s=8x8:r=8:d=4,format=yuv444p[b];[a][b]xfade=transition=slideleft:offset=1:duration=2"
+
+FATE_FILTER-$(call FILTERFRAMECRC, COLOR XFADE FORMAT) += fate-filter-xfade-slideup
+fate-filter-xfade-slideup: CMD = framecrc -filter_complex "color=c=red:s=8x8:r=8:d=4,format=yuv444p[a];color=c=0x0000ff:s=8x8:r=8:d=4,format=yuv444p[b];[a][b]xfade=transition=slideup:offset=1:duration=2"
+
+FATE_FILTER-$(call FILTERFRAMECRC, COLOR XFADE FORMAT) += fate-filter-xfade-revealleft
+fate-filter-xfade-revealleft: CMD = framecrc -filter_complex "color=c=red:s=8x8:r=8:d=4,format=yuv444p[a];color=c=0x0000ff:s=8x8:r=8:d=4,format=yuv444p[b];[a][b]xfade=transition=revealleft:offset=1:duration=2"
+
+FATE_FILTER-$(call FILTERFRAMECRC, COLOR XFADE FORMAT) += fate-filter-xfade-revealup
+fate-filter-xfade-revealup: CMD = framecrc -filter_complex "color=c=red:s=8x8:r=8:d=4,format=yuv444p[a];color=c=0x0000ff:s=8x8:r=8:d=4,format=yuv444p[b];[a][b]xfade=transition=revealup:offset=1:duration=2"
+
+FATE_FILTER-$(call FILTERFRAMECRC, COLOR XFADE FORMAT) += fate-filter-xfade-squeezeh
+fate-filter-xfade-squeezeh: CMD = framecrc -filter_complex "color=c=red:s=8x8:r=8:d=4,format=yuv444p[a];color=c=0x0000ff:s=8x8:r=8:d=4,format=yuv444p[b];[a][b]xfade=transition=squeezeh:offset=1:duration=2"
+
+FATE_FILTER-$(call FILTERFRAMECRC, COLOR XFADE FORMAT) += fate-filter-xfade-squeezev
+fate-filter-xfade-squeezev: CMD = framecrc -filter_complex "color=c=red:s=8x8:r=8:d=4,format=yuv444p[a];color=c=0x0000ff:s=8x8:r=8:d=4,format=yuv444p[b];[a][b]xfade=transition=squeezev:offset=1:duration=2"
+
+FATE_FILTER-$(call FILTERFRAMECRC, COLOR XFADE FORMAT SCALE) += fate-filter-xfade-slideup16
+fate-filter-xfade-slideup16: CMD = framecrc -filter_complex "color=c=red:s=8x8:r=8:d=4,format=yuv444p16le,scale,format=yuv444p16[a];color=c=0x0000ff:s=8x8:r=8:d=4,format=yuv444p16le,scale,format=yuv444p16[b];[a][b]xfade=transition=slideup:offset=1:duration=2,scale" -pix_fmt yuv444p16le
+
+FATE_FILTER-$(call FILTERFRAMECRC, COLOR XFADE FORMAT) += fate-filter-xfade-duration0
+fate-filter-xfade-duration0: CMD = framecrc -filter_complex "color=c=red:s=8x8:r=8:d=4,format=yuv444p[a];color=c=0x0000ff:s=8x8:r=8:d=4,format=yuv444p[b];[a][b]xfade=transition=squeezeh:offset=1:duration=0"
+
 FATE_SAMPLES_FFPROBE += $(FATE_METADATA_FILTER-yes)
 FATE_SAMPLES_FFMPEG += $(FATE_FILTER_SAMPLES-yes)
 FATE_FFPROBE += $(FATE_FILTER_FFPROBE-yes)
diff --git a/tests/ref/fate/filter-xfade-duration0 b/tests/ref/fate/filter-xfade-duration0
new file mode 100644
index 0000000000..c517dace6d
--- /dev/null
+++ b/tests/ref/fate/filter-xfade-duration0
@@ -0,0 +1,45 @@
+#tb 0: 1/8
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 8x8
+#sar 0: 1/1
+0,          0,          0,        1,      192, 0xcd0466c0
+0,          1,          1,        1,      192, 0xcd0466c0
+0,          2,          2,        1,      192, 0xcd0466c0
+0,          3,          3,        1,      192, 0xcd0466c0
+0,          4,          4,        1,      192, 0xcd0466c0
+0,          5,          5,        1,      192, 0xcd0466c0
+0,          6,          6,        1,      192, 0xcd0466c0
+0,          7,          7,        1,      192, 0xcd0466c0
+0,          8,          8,        1,      192, 0xcd0466c0
+0,          9,          9,        1,      192, 0x8ac061c0
+0,         10,         10,        1,      192, 0x8ac061c0
+0,         11,         11,        1,      192, 0x8ac061c0
+0,         12,         12,        1,      192, 0x8ac061c0
+0,         13,         13,        1,      192, 0x8ac061c0
+0,         14,         14,        1,      192, 0x8ac061c0
+0,         15,         15,        1,      192, 0x8ac061c0
+0,         16,         16,        1,      192, 0x8ac061c0
+0,         17,         17,        1,      192, 0x8ac061c0
+0,         18,         18,        1,      192, 0x8ac061c0
+0,         19,         19,        1,      192, 0x8ac061c0
+0,         20,         20,        1,      192, 0x8ac061c0
+0,         21,         21,        1,      192, 0x8ac061c0
+0,         22,         22,        1,      192, 0x8ac061c0
+0,         23,         23,        1,      192, 0x8ac061c0
+0,         24,         24,        1,      192, 0x8ac061c0
+0,         25,         25,        1,      192, 0x8ac061c0
+0,         26,         26,        1,      192, 0x8ac061c0
+0,         27,         27,        1,      192, 0x8ac061c0
+0,         28,         28,        1,      192, 0x8ac061c0
+0,         29,         29,        1,      192, 0x8ac061c0
+0,         30,         30,        1,      192, 0x8ac061c0
+0,         31,         31,        1,      192, 0x8ac061c0
+0,         32,         32,        1,      192, 0x8ac061c0
+0,         33,         33,        1,      192, 0x8ac061c0
+0,         34,         34,        1,      192, 0x8ac061c0
+0,         35,         35,        1,      192, 0x8ac061c0
+0,         36,         36,        1,      192, 0x8ac061c0
+0,         37,         37,        1,      192, 0x8ac061c0
+0,         38,         38,        1,      192, 0x8ac061c0
+0,         39,         39,        1,      192, 0x8ac061c0
diff --git a/tests/ref/fate/filter-xfade-revealleft b/tests/ref/fate/filter-xfade-revealleft
new file mode 100644
index 0000000000..9255b8742d
--- /dev/null
+++ b/tests/ref/fate/filter-xfade-revealleft
@@ -0,0 +1,45 @@
+#tb 0: 1/8
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 8x8
+#sar 0: 1/1
+0,          0,          0,        1,      192, 0xcd0466c0
+0,          1,          1,        1,      192, 0xcd0466c0
+0,          2,          2,        1,      192, 0xcd0466c0
+0,          3,          3,        1,      192, 0xcd0466c0
+0,          4,          4,        1,      192, 0xcd0466c0
+0,          5,          5,        1,      192, 0xcd0466c0
+0,          6,          6,        1,      192, 0xcd0466c0
+0,          7,          7,        1,      192, 0xcd0466c0
+0,          8,          8,        1,      192, 0xcd0466c0
+0,          9,          9,        1,      192, 0x46f36620
+0,         10,         10,        1,      192, 0x46f36620
+0,         11,         11,        1,      192, 0xc0336580
+0,         12,         12,        1,      192, 0xc0336580
+0,         13,         13,        1,      192, 0x38e264e0
+0,         14,         14,        1,      192, 0x38e264e0
+0,         15,         15,        1,      192, 0xb0e26440
+0,         16,         16,        1,      192, 0xb0e26440
+0,         17,         17,        1,      192, 0x285163a0
+0,         18,         18,        1,      192, 0x285163a0
+0,         19,         19,        1,      192, 0x9f116300
+0,         20,         20,        1,      192, 0x9f116300
+0,         21,         21,        1,      192, 0x15406260
+0,         22,         22,        1,      192, 0x15406260
+0,         23,         23,        1,      192, 0x8ac061c0
+0,         24,         24,        1,      192, 0x8ac061c0
+0,         25,         25,        1,      192, 0x8ac061c0
+0,         26,         26,        1,      192, 0x8ac061c0
+0,         27,         27,        1,      192, 0x8ac061c0
+0,         28,         28,        1,      192, 0x8ac061c0
+0,         29,         29,        1,      192, 0x8ac061c0
+0,         30,         30,        1,      192, 0x8ac061c0
+0,         31,         31,        1,      192, 0x8ac061c0
+0,         32,         32,        1,      192, 0x8ac061c0
+0,         33,         33,        1,      192, 0x8ac061c0
+0,         34,         34,        1,      192, 0x8ac061c0
+0,         35,         35,        1,      192, 0x8ac061c0
+0,         36,         36,        1,      192, 0x8ac061c0
+0,         37,         37,        1,      192, 0x8ac061c0
+0,         38,         38,        1,      192, 0x8ac061c0
+0,         39,         39,        1,      192, 0x8ac061c0
diff --git a/tests/ref/fate/filter-xfade-revealup b/tests/ref/fate/filter-xfade-revealup
new file mode 100644
index 0000000000..70c4958e31
--- /dev/null
+++ b/tests/ref/fate/filter-xfade-revealup
@@ -0,0 +1,45 @@
+#tb 0: 1/8
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 8x8
+#sar 0: 1/1
+0,          0,          0,        1,      192, 0xcd0466c0
+0,          1,          1,        1,      192, 0xcd0466c0
+0,          2,          2,        1,      192, 0xcd0466c0
+0,          3,          3,        1,      192, 0xcd0466c0
+0,          4,          4,        1,      192, 0xcd0466c0
+0,          5,          5,        1,      192, 0xcd0466c0
+0,          6,          6,        1,      192, 0xcd0466c0
+0,          7,          7,        1,      192, 0xcd0466c0
+0,          8,          8,        1,      192, 0xcd0466c0
+0,          9,          9,        1,      192, 0x56436620
+0,         10,         10,        1,      192, 0x56436620
+0,         11,         11,        1,      192, 0xda736580
+0,         12,         12,        1,      192, 0xda736580
+0,         13,         13,        1,      192, 0x59b264e0
+0,         14,         14,        1,      192, 0x59b264e0
+0,         15,         15,        1,      192, 0xd3e26440
+0,         16,         16,        1,      192, 0xd3e26440
+0,         17,         17,        1,      192, 0x492163a0
+0,         18,         18,        1,      192, 0x492163a0
+0,         19,         19,        1,      192, 0xb9516300
+0,         20,         20,        1,      192, 0xb9516300
+0,         21,         21,        1,      192, 0x24906260
+0,         22,         22,        1,      192, 0x24906260
+0,         23,         23,        1,      192, 0x8ac061c0
+0,         24,         24,        1,      192, 0x8ac061c0
+0,         25,         25,        1,      192, 0x8ac061c0
+0,         26,         26,        1,      192, 0x8ac061c0
+0,         27,         27,        1,      192, 0x8ac061c0
+0,         28,         28,        1,      192, 0x8ac061c0
+0,         29,         29,        1,      192, 0x8ac061c0
+0,         30,         30,        1,      192, 0x8ac061c0
+0,         31,         31,        1,      192, 0x8ac061c0
+0,         32,         32,        1,      192, 0x8ac061c0
+0,         33,         33,        1,      192, 0x8ac061c0
+0,         34,         34,        1,      192, 0x8ac061c0
+0,         35,         35,        1,      192, 0x8ac061c0
+0,         36,         36,        1,      192, 0x8ac061c0
+0,         37,         37,        1,      192, 0x8ac061c0
+0,         38,         38,        1,      192, 0x8ac061c0
+0,         39,         39,        1,      192, 0x8ac061c0
diff --git a/tests/ref/fate/filter-xfade-slideleft b/tests/ref/fate/filter-xfade-slideleft
new file mode 100644
index 0000000000..9255b8742d
--- /dev/null
+++ b/tests/ref/fate/filter-xfade-slideleft
@@ -0,0 +1,45 @@
+#tb 0: 1/8
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 8x8
+#sar 0: 1/1
+0,          0,          0,        1,      192, 0xcd0466c0
+0,          1,          1,        1,      192, 0xcd0466c0
+0,          2,          2,        1,      192, 0xcd0466c0
+0,          3,          3,        1,      192, 0xcd0466c0
+0,          4,          4,        1,      192, 0xcd0466c0
+0,          5,          5,        1,      192, 0xcd0466c0
+0,          6,          6,        1,      192, 0xcd0466c0
+0,          7,          7,        1,      192, 0xcd0466c0
+0,          8,          8,        1,      192, 0xcd0466c0
+0,          9,          9,        1,      192, 0x46f36620
+0,         10,         10,        1,      192, 0x46f36620
+0,         11,         11,        1,      192, 0xc0336580
+0,         12,         12,        1,      192, 0xc0336580
+0,         13,         13,        1,      192, 0x38e264e0
+0,         14,         14,        1,      192, 0x38e264e0
+0,         15,         15,        1,      192, 0xb0e26440
+0,         16,         16,        1,      192, 0xb0e26440
+0,         17,         17,        1,      192, 0x285163a0
+0,         18,         18,        1,      192, 0x285163a0
+0,         19,         19,        1,      192, 0x9f116300
+0,         20,         20,        1,      192, 0x9f116300
+0,         21,         21,        1,      192, 0x15406260
+0,         22,         22,        1,      192, 0x15406260
+0,         23,         23,        1,      192, 0x8ac061c0
+0,         24,         24,        1,      192, 0x8ac061c0
+0,         25,         25,        1,      192, 0x8ac061c0
+0,         26,         26,        1,      192, 0x8ac061c0
+0,         27,         27,        1,      192, 0x8ac061c0
+0,         28,         28,        1,      192, 0x8ac061c0
+0,         29,         29,        1,      192, 0x8ac061c0
+0,         30,         30,        1,      192, 0x8ac061c0
+0,         31,         31,        1,      192, 0x8ac061c0
+0,         32,         32,        1,      192, 0x8ac061c0
+0,         33,         33,        1,      192, 0x8ac061c0
+0,         34,         34,        1,      192, 0x8ac061c0
+0,         35,         35,        1,      192, 0x8ac061c0
+0,         36,         36,        1,      192, 0x8ac061c0
+0,         37,         37,        1,      192, 0x8ac061c0
+0,         38,         38,        1,      192, 0x8ac061c0
+0,         39,         39,        1,      192, 0x8ac061c0
diff --git a/tests/ref/fate/filter-xfade-slideup b/tests/ref/fate/filter-xfade-slideup
new file mode 100644
index 0000000000..70c4958e31
--- /dev/null
+++ b/tests/ref/fate/filter-xfade-slideup
@@ -0,0 +1,45 @@
+#tb 0: 1/8
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 8x8
+#sar 0: 1/1
+0,          0,          0,        1,      192, 0xcd0466c0
+0,          1,          1,        1,      192, 0xcd0466c0
+0,          2,          2,        1,      192, 0xcd0466c0
+0,          3,          3,        1,      192, 0xcd0466c0
+0,          4,          4,        1,      192, 0xcd0466c0
+0,          5,          5,        1,      192, 0xcd0466c0
+0,          6,          6,        1,      192, 0xcd0466c0
+0,          7,          7,        1,      192, 0xcd0466c0
+0,          8,          8,        1,      192, 0xcd0466c0
+0,          9,          9,        1,      192, 0x56436620
+0,         10,         10,        1,      192, 0x56436620
+0,         11,         11,        1,      192, 0xda736580
+0,         12,         12,        1,      192, 0xda736580
+0,         13,         13,        1,      192, 0x59b264e0
+0,         14,         14,        1,      192, 0x59b264e0
+0,         15,         15,        1,      192, 0xd3e26440
+0,         16,         16,        1,      192, 0xd3e26440
+0,         17,         17,        1,      192, 0x492163a0
+0,         18,         18,        1,      192, 0x492163a0
+0,         19,         19,        1,      192, 0xb9516300
+0,         20,         20,        1,      192, 0xb9516300
+0,         21,         21,        1,      192, 0x24906260
+0,         22,         22,        1,      192, 0x24906260
+0,         23,         23,        1,      192, 0x8ac061c0
+0,         24,         24,        1,      192, 0x8ac061c0
+0,         25,         25,        1,      192, 0x8ac061c0
+0,         26,         26,        1,      192, 0x8ac061c0
+0,         27,         27,        1,      192, 0x8ac061c0
+0,         28,         28,        1,      192, 0x8ac061c0
+0,         29,         29,        1,      192, 0x8ac061c0
+0,         30,         30,        1,      192, 0x8ac061c0
+0,         31,         31,        1,      192, 0x8ac061c0
+0,         32,         32,        1,      192, 0x8ac061c0
+0,         33,         33,        1,      192, 0x8ac061c0
+0,         34,         34,        1,      192, 0x8ac061c0
+0,         35,         35,        1,      192, 0x8ac061c0
+0,         36,         36,        1,      192, 0x8ac061c0
+0,         37,         37,        1,      192, 0x8ac061c0
+0,         38,         38,        1,      192, 0x8ac061c0
+0,         39,         39,        1,      192, 0x8ac061c0
diff --git a/tests/ref/fate/filter-xfade-slideup16 b/tests/ref/fate/filter-xfade-slideup16
new file mode 100644
index 0000000000..cbc85cd1b4
--- /dev/null
+++ b/tests/ref/fate/filter-xfade-slideup16
@@ -0,0 +1,45 @@
+#tb 0: 1/8
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 8x8
+#sar 0: 1/1
+0,          0,          0,        1,      384, 0x7c4df980
+0,          1,          1,        1,      384, 0x7c4df980
+0,          2,          2,        1,      384, 0x7c4df980
+0,          3,          3,        1,      384, 0x7c4df980
+0,          4,          4,        1,      384, 0x7c4df980
+0,          5,          5,        1,      384, 0x7c4df980
+0,          6,          6,        1,      384, 0x7c4df980
+0,          7,          7,        1,      384, 0x7c4df980
+0,          8,          8,        1,      384, 0x7c4df980
+0,          9,          9,        1,      384, 0x6600f0c0
+0,         10,         10,        1,      384, 0x6600f0c0
+0,         11,         11,        1,      384, 0xc3a4e800
+0,         12,         12,        1,      384, 0xc3a4e800
+0,         13,         13,        1,      384, 0x9548df40
+0,         14,         14,        1,      384, 0x9548df40
+0,         15,         15,        1,      384, 0xdaddd680
+0,         16,         16,        1,      384, 0xdaddd680
+0,         17,         17,        1,      384, 0x9472cdc0
+0,         18,         18,        1,      384, 0x9472cdc0
+0,         19,         19,        1,      384, 0xc1f8c500
+0,         20,         20,        1,      384, 0xc1f8c500
+0,         21,         21,        1,      384, 0x637ebc40
+0,         22,         22,        1,      384, 0x637ebc40
+0,         23,         23,        1,      384, 0x78f5b380
+0,         24,         24,        1,      384, 0x78f5b380
+0,         25,         25,        1,      384, 0x78f5b380
+0,         26,         26,        1,      384, 0x78f5b380
+0,         27,         27,        1,      384, 0x78f5b380
+0,         28,         28,        1,      384, 0x78f5b380
+0,         29,         29,        1,      384, 0x78f5b380
+0,         30,         30,        1,      384, 0x78f5b380
+0,         31,         31,        1,      384, 0x78f5b380
+0,         32,         32,        1,      384, 0x78f5b380
+0,         33,         33,        1,      384, 0x78f5b380
+0,         34,         34,        1,      384, 0x78f5b380
+0,         35,         35,        1,      384, 0x78f5b380
+0,         36,         36,        1,      384, 0x78f5b380
+0,         37,         37,        1,      384, 0x78f5b380
+0,         38,         38,        1,      384, 0x78f5b380
+0,         39,         39,        1,      384, 0x78f5b380
diff --git a/tests/ref/fate/filter-xfade-squeezeh b/tests/ref/fate/filter-xfade-squeezeh
new file mode 100644
index 0000000000..73bb0152c0
--- /dev/null
+++ b/tests/ref/fate/filter-xfade-squeezeh
@@ -0,0 +1,45 @@
+#tb 0: 1/8
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 8x8
+#sar 0: 1/1
+0,          0,          0,        1,      192, 0xcd0466c0
+0,          1,          1,        1,      192, 0xcd0466c0
+0,          2,          2,        1,      192, 0xcd0466c0
+0,          3,          3,        1,      192, 0xcd0466c0
+0,          4,          4,        1,      192, 0xcd0466c0
+0,          5,          5,        1,      192, 0xcd0466c0
+0,          6,          6,        1,      192, 0xcd0466c0
+0,          7,          7,        1,      192, 0xcd0466c0
+0,          8,          8,        1,      192, 0xcd0466c0
+0,          9,          9,        1,      192, 0x33436620
+0,         10,         10,        1,      192, 0x33436620
+0,         11,         11,        1,      192, 0x33436620
+0,         12,         12,        1,      192, 0x33436620
+0,         13,         13,        1,      192, 0x27b264e0
+0,         14,         14,        1,      192, 0x27b264e0
+0,         15,         15,        1,      192, 0x27b264e0
+0,         16,         16,        1,      192, 0x27b264e0
+0,         17,         17,        1,      192, 0x1c2163a0
+0,         18,         18,        1,      192, 0x1c2163a0
+0,         19,         19,        1,      192, 0x1c2163a0
+0,         20,         20,        1,      192, 0x1c2163a0
+0,         21,         21,        1,      192, 0x10906260
+0,         22,         22,        1,      192, 0x10906260
+0,         23,         23,        1,      192, 0x10906260
+0,         24,         24,        1,      192, 0x8ac061c0
+0,         25,         25,        1,      192, 0x8ac061c0
+0,         26,         26,        1,      192, 0x8ac061c0
+0,         27,         27,        1,      192, 0x8ac061c0
+0,         28,         28,        1,      192, 0x8ac061c0
+0,         29,         29,        1,      192, 0x8ac061c0
+0,         30,         30,        1,      192, 0x8ac061c0
+0,         31,         31,        1,      192, 0x8ac061c0
+0,         32,         32,        1,      192, 0x8ac061c0
+0,         33,         33,        1,      192, 0x8ac061c0
+0,         34,         34,        1,      192, 0x8ac061c0
+0,         35,         35,        1,      192, 0x8ac061c0
+0,         36,         36,        1,      192, 0x8ac061c0
+0,         37,         37,        1,      192, 0x8ac061c0
+0,         38,         38,        1,      192, 0x8ac061c0
+0,         39,         39,        1,      192, 0x8ac061c0
diff --git a/tests/ref/fate/filter-xfade-squeezev b/tests/ref/fate/filter-xfade-squeezev
new file mode 100644
index 0000000000..a1c4432c1c
--- /dev/null
+++ b/tests/ref/fate/filter-xfade-squeezev
@@ -0,0 +1,45 @@
+#tb 0: 1/8
+#media_type 0: video
+#codec_id 0: rawvideo
+#dimensions 0: 8x8
+#sar 0: 1/1
+0,          0,          0,        1,      192, 0xcd0466c0
+0,          1,          1,        1,      192, 0xcd0466c0
+0,          2,          2,        1,      192, 0xcd0466c0
+0,          3,          3,        1,      192, 0xcd0466c0
+0,          4,          4,        1,      192, 0xcd0466c0
+0,          5,          5,        1,      192, 0xcd0466c0
+0,          6,          6,        1,      192, 0xcd0466c0
+0,          7,          7,        1,      192, 0xcd0466c0
+0,          8,          8,        1,      192, 0xcd0466c0
+0,          9,          9,        1,      192, 0x42936620
+0,         10,         10,        1,      192, 0x42936620
+0,         11,         11,        1,      192, 0x42936620
+0,         12,         12,        1,      192, 0x42936620
+0,         13,         13,        1,      192, 0x32a264e0
+0,         14,         14,        1,      192, 0x32a264e0
+0,         15,         15,        1,      192, 0x32a264e0
+0,         16,         16,        1,      192, 0x32a264e0
+0,         17,         17,        1,      192, 0x22b163a0
+0,         18,         18,        1,      192, 0x22b163a0
+0,         19,         19,        1,      192, 0x22b163a0
+0,         20,         20,        1,      192, 0x22b163a0
+0,         21,         21,        1,      192, 0x12c06260
+0,         22,         22,        1,      192, 0x12c06260
+0,         23,         23,        1,      192, 0x12c06260
+0,         24,         24,        1,      192, 0x8ac061c0
+0,         25,         25,        1,      192, 0x8ac061c0
+0,         26,         26,        1,      192, 0x8ac061c0
+0,         27,         27,        1,      192, 0x8ac061c0
+0,         28,         28,        1,      192, 0x8ac061c0
+0,         29,         29,        1,      192, 0x8ac061c0
+0,         30,         30,        1,      192, 0x8ac061c0
+0,         31,         31,        1,      192, 0x8ac061c0
+0,         32,         32,        1,      192, 0x8ac061c0
+0,         33,         33,        1,      192, 0x8ac061c0
+0,         34,         34,        1,      192, 0x8ac061c0
+0,         35,         35,        1,      192, 0x8ac061c0
+0,         36,         36,        1,      192, 0x8ac061c0
+0,         37,         37,        1,      192, 0x8ac061c0
+0,         38,         38,        1,      192, 0x8ac061c0
+0,         39,         39,        1,      192, 0x8ac061c0