[FFmpeg-devel] [PATCH] fate: Add tests for QOA decoder

Cosmin Stejerean cosmin at cosmin.at
Sat Dec 2 22:51:10 EET 2023


From: Cosmin Stejerean <cosmin at cosmin.at>

---
 tests/Makefile         |   1 +
 tests/fate/qoa.mak     |  12 ++++
 tests/ref/fate/qoa-152 |  13 ++++
 tests/ref/fate/qoa-278 | 135 +++++++++++++++++++++++++++++++++++++++++
 tests/ref/fate/qoa-303 |  35 +++++++++++
 5 files changed, 196 insertions(+)
 create mode 100644 tests/fate/qoa.mak
 create mode 100644 tests/ref/fate/qoa-152
 create mode 100644 tests/ref/fate/qoa-278
 create mode 100644 tests/ref/fate/qoa-303

diff --git a/tests/Makefile b/tests/Makefile
index f03cf20d8e..444c09b3de 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -226,6 +226,7 @@ include $(SRC_PATH)/tests/fate/pixfmt.mak
 include $(SRC_PATH)/tests/fate/pixlet.mak
 include $(SRC_PATH)/tests/fate/probe.mak
 include $(SRC_PATH)/tests/fate/prores.mak
+include $(SRC_PATH)/tests/fate/qoa.mak
 include $(SRC_PATH)/tests/fate/qt.mak
 include $(SRC_PATH)/tests/fate/qtrle.mak
 include $(SRC_PATH)/tests/fate/real.mak
diff --git a/tests/fate/qoa.mak b/tests/fate/qoa.mak
new file mode 100644
index 0000000000..2e20ee5ee1
--- /dev/null
+++ b/tests/fate/qoa.mak
@@ -0,0 +1,12 @@
+FATE_QOA-$(call DEMDEC, QOA, QOA) += fate-qoa-152
+fate-qoa-152: CMD = framecrc -i $(TARGET_SAMPLES)/qoa/coin_48_1_152.qoa
+
+FATE_QOA-$(call DEMDEC, QOA, QOA) += fate-qoa-278
+fate-qoa-278: CMD = framecrc -i $(TARGET_SAMPLES)/qoa/vibra_44_2_278.qoa
+
+FATE_QOA-$(call DEMDEC, QOA, QOA) += fate-qoa-303
+fate-qoa-303: CMD = framecrc -i $(TARGET_SAMPLES)/qoa/banjo_48_2_303.qoa
+
+fate-qoa: fate-qoa-152 fate-qoa-278 fate-qoa-303
+
+FATE_SAMPLES_AUDIO += $(FATE_QOA-yes)
diff --git a/tests/ref/fate/qoa-152 b/tests/ref/fate/qoa-152
new file mode 100644
index 0000000000..62fb6ecdf3
--- /dev/null
+++ b/tests/ref/fate/qoa-152
@@ -0,0 +1,13 @@
+#tb 0: 1/48000
+#media_type 0: audio
+#codec_id 0: pcm_s16le
+#sample_rate 0: 48000
+#channel_layout_name 0: mono
+0,          0,          0,     5120,    10240, 0xa687046e
+0,       5120,       5120,     5120,    10240, 0xa75bd341
+0,      10240,      10240,     5120,    10240, 0x6a59cebe
+0,      15360,      15360,     5120,    10240, 0x04771262
+0,      20480,      20480,     5120,    10240, 0x3cefe573
+0,      25600,      25600,     5120,    10240, 0xba329e6b
+0,      30720,      30720,     5120,    10240, 0x6fabfff0
+0,      35840,      35840,     3591,     7182, 0x3fb1ae86
diff --git a/tests/ref/fate/qoa-278 b/tests/ref/fate/qoa-278
new file mode 100644
index 0000000000..63f4f4abae
--- /dev/null
+++ b/tests/ref/fate/qoa-278
@@ -0,0 +1,135 @@
+#tb 0: 1/44100
+#media_type 0: audio
+#codec_id 0: pcm_s16le
+#sample_rate 0: 44100
+#channel_layout_name 0: stereo
+0,          0,          0,     5120,    20480, 0xc51f1bf2
+0,       5120,       5120,     5120,    20480, 0xcace16a8
+0,      10240,      10240,     5120,    20480, 0x39311aac
+0,      15360,      15360,     5120,    20480, 0xce741aaa
+0,      20480,      20480,     5120,    20480, 0xbe47c7c2
+0,      25600,      25600,     5120,    20480, 0xcc7790fa
+0,      30720,      30720,     5120,    20480, 0x4be97965
+0,      35840,      35840,     5120,    20480, 0x7bfe4b0e
+0,      40960,      40960,     5120,    20480, 0xf99889c4
+0,      46080,      46080,     5120,    20480, 0x66092d82
+0,      51200,      51200,     5120,    20480, 0x34b5d044
+0,      56320,      56320,     5120,    20480, 0xba76964e
+0,      61440,      61440,     5120,    20480, 0x82f88eb2
+0,      66560,      66560,     5120,    20480, 0xb5b9c3f3
+0,      71680,      71680,     5120,    20480, 0x24e87a1d
+0,      76800,      76800,     5120,    20480, 0xfa1743f2
+0,      81920,      81920,     5120,    20480, 0x0d9a42ff
+0,      87040,      87040,     5120,    20480, 0x43494a02
+0,      92160,      92160,     5120,    20480, 0x4cfeb13e
+0,      97280,      97280,     5120,    20480, 0xc7aace4d
+0,     102400,     102400,     5120,    20480, 0xc435715d
+0,     107520,     107520,     5120,    20480, 0x4321403b
+0,     112640,     112640,     5120,    20480, 0xaea959b8
+0,     117760,     117760,     5120,    20480, 0x796c9b96
+0,     122880,     122880,     5120,    20480, 0x3a036bf1
+0,     128000,     128000,     5120,    20480, 0xd5cb30d6
+0,     133120,     133120,     5120,    20480, 0x8921cd54
+0,     138240,     138240,     5120,    20480, 0x2c3ddc88
+0,     143360,     143360,     5120,    20480, 0x17b6d52f
+0,     148480,     148480,     5120,    20480, 0x8f6cb3fa
+0,     153600,     153600,     5120,    20480, 0xd8428d98
+0,     158720,     158720,     5120,    20480, 0xc295b551
+0,     163840,     163840,     5120,    20480, 0x5fcb3d7a
+0,     168960,     168960,     5120,    20480, 0xe31f5663
+0,     174080,     174080,     5120,    20480, 0x9ef8364a
+0,     179200,     179200,     5120,    20480, 0x8a256b59
+0,     184320,     184320,     5120,    20480, 0xcde4dc9a
+0,     189440,     189440,     5120,    20480, 0xf6f8259b
+0,     194560,     194560,     5120,    20480, 0x8c61f88c
+0,     199680,     199680,     5120,    20480, 0x89888a7e
+0,     204800,     204800,     5120,    20480, 0x8d02e3a4
+0,     209920,     209920,     5120,    20480, 0xdc025b99
+0,     215040,     215040,     5120,    20480, 0x889d5d9c
+0,     220160,     220160,     5120,    20480, 0xb4e207bf
+0,     225280,     225280,     5120,    20480, 0x97d26057
+0,     230400,     230400,     5120,    20480, 0x06d343e0
+0,     235520,     235520,     5120,    20480, 0xee5cb4d7
+0,     240640,     240640,     5120,    20480, 0xd77aaba1
+0,     245760,     245760,     5120,    20480, 0x50be91e2
+0,     250880,     250880,     5120,    20480, 0xa4cc1684
+0,     256000,     256000,     5120,    20480, 0x03db1aaa
+0,     261120,     261120,     5120,    20480, 0x39311aac
+0,     266240,     266240,     5120,    20480, 0x2be1deea
+0,     271360,     271360,     5120,    20480, 0xcff1fe99
+0,     276480,     276480,     5120,    20480, 0x9555025c
+0,     281600,     281600,     5120,    20480, 0x03db1aab
+0,     286720,     286720,     5120,    20480, 0x32ddf604
+0,     291840,     291840,     5120,    20480, 0x0feb78bc
+0,     296960,     296960,     5120,    20480, 0x097b6fed
+0,     302080,     302080,     5120,    20480, 0x8dd92c0e
+0,     307200,     307200,     5120,    20480, 0x15837d2c
+0,     312320,     312320,     5120,    20480, 0x14b6f42c
+0,     317440,     317440,     5120,    20480, 0x8fd7c7b9
+0,     322560,     322560,     5120,    20480, 0xc2fd6a99
+0,     327680,     327680,     5120,    20480, 0xca62966a
+0,     332800,     332800,     5120,    20480, 0x5295bc50
+0,     337920,     337920,     5120,    20480, 0x08de5407
+0,     343040,     343040,     5120,    20480, 0x04da3252
+0,     348160,     348160,     5120,    20480, 0xba1739be
+0,     353280,     353280,     5120,    20480, 0xe1b65fa1
+0,     358400,     358400,     5120,    20480, 0x50edbaba
+0,     363520,     363520,     5120,    20480, 0xd388cac9
+0,     368640,     368640,     5120,    20480, 0x0b9e62a8
+0,     373760,     373760,     5120,    20480, 0xd1612db1
+0,     378880,     378880,     5120,    20480, 0x1c155978
+0,     384000,     384000,     5120,    20480, 0x88688216
+0,     389120,     389120,     5120,    20480, 0x938175d2
+0,     394240,     394240,     5120,    20480, 0x6495327b
+0,     399360,     399360,     5120,    20480, 0xb723b8d3
+0,     404480,     404480,     5120,    20480, 0xcd02c6b9
+0,     409600,     409600,     5120,    20480, 0xd5a5b84d
+0,     414720,     414720,     5120,    20480, 0x5b4bc1e7
+0,     419840,     419840,     5120,    20480, 0xcd177723
+0,     424960,     424960,     5120,    20480, 0xd782dc2d
+0,     430080,     430080,     5120,    20480, 0xff672f1c
+0,     435200,     435200,     5120,    20480, 0x6d92711d
+0,     440320,     440320,     5120,    20480, 0x73d02edb
+0,     445440,     445440,     5120,    20480, 0x41e37eaf
+0,     450560,     450560,     5120,    20480, 0x5076de72
+0,     455680,     455680,     5120,    20480, 0xcd1f2533
+0,     460800,     460800,     5120,    20480, 0x633e0375
+0,     465920,     465920,     5120,    20480, 0x13829a77
+0,     471040,     471040,     5120,    20480, 0x3ec5c8d5
+0,     476160,     476160,     5120,    20480, 0xbc3f6b6b
+0,     481280,     481280,     5120,    20480, 0x7bc5414e
+0,     486400,     486400,     5120,    20480, 0x99d03b6d
+0,     491520,     491520,     5120,    20480, 0xf02c454a
+0,     496640,     496640,     5120,    20480, 0x576f2b91
+0,     501760,     501760,     5120,    20480, 0x1b0bd80f
+0,     506880,     506880,     5120,    20480, 0xb1445331
+0,     512000,     512000,     5120,    20480, 0x607110ad
+0,     517120,     517120,     5120,    20480, 0x168a17b9
+0,     522240,     522240,     5120,    20480, 0x03db1aab
+0,     527360,     527360,     5120,    20480, 0xe9201aaa
+0,     532480,     532480,     5120,    20480, 0x2ad659db
+0,     537600,     537600,     5120,    20480, 0x1eaf2398
+0,     542720,     542720,     5120,    20480, 0x95c646ac
+0,     547840,     547840,     5120,    20480, 0x7d0d1c55
+0,     552960,     552960,     5120,    20480, 0x97b91c55
+0,     558080,     558080,     5120,    20480, 0xb2631c56
+0,     563200,     563200,     5120,    20480, 0x7d0d1c55
+0,     568320,     568320,     5120,    20480, 0x97b91c55
+0,     573440,     573440,     5120,    20480, 0xb2631c56
+0,     578560,     578560,     5120,    20480, 0x7d0d1c55
+0,     583680,     583680,     5120,    20480, 0x97b91c55
+0,     588800,     588800,     5120,    20480, 0xb2631c56
+0,     593920,     593920,     5120,    20480, 0x7d0d1c55
+0,     599040,     599040,     5120,    20480, 0x97b91c55
+0,     604160,     604160,     5120,    20480, 0xb2631c56
+0,     609280,     609280,     5120,    20480, 0x7d0d1c55
+0,     614400,     614400,     5120,    20480, 0x97b91c55
+0,     619520,     619520,     5120,    20480, 0xb2631c56
+0,     624640,     624640,     5120,    20480, 0x7d0d1c55
+0,     629760,     629760,     5120,    20480, 0x97b91c55
+0,     634880,     634880,     5120,    20480, 0xb2631c56
+0,     640000,     640000,     5120,    20480, 0x7d0d1c55
+0,     645120,     645120,     5120,    20480, 0x97b91c55
+0,     650240,     650240,     5120,    20480, 0xb2631c56
+0,     655360,     655360,     5120,    20480, 0x7d0d1c55
+0,     660480,     660480,     1020,     4080, 0xfd6c05a5
diff --git a/tests/ref/fate/qoa-303 b/tests/ref/fate/qoa-303
new file mode 100644
index 0000000000..a913989c56
--- /dev/null
+++ b/tests/ref/fate/qoa-303
@@ -0,0 +1,35 @@
+#tb 0: 1/48000
+#media_type 0: audio
+#codec_id 0: pcm_s16le
+#sample_rate 0: 48000
+#channel_layout_name 0: stereo
+0,          0,          0,     5120,    20480, 0xdf2a75f9
+0,       5120,       5120,     5120,    20480, 0xc795a74d
+0,      10240,      10240,     5120,    20480, 0x811c7f80
+0,      15360,      15360,     5120,    20480, 0x526ae46a
+0,      20480,      20480,     5120,    20480, 0xf6c0f8a3
+0,      25600,      25600,     5120,    20480, 0x5132a80d
+0,      30720,      30720,     5120,    20480, 0x21094859
+0,      35840,      35840,     5120,    20480, 0xd1e17d71
+0,      40960,      40960,     5120,    20480, 0x8e7f3bf3
+0,      46080,      46080,     5120,    20480, 0x9ac6e033
+0,      51200,      51200,     5120,    20480, 0x26c08453
+0,      56320,      56320,     5120,    20480, 0x2f379d09
+0,      61440,      61440,     5120,    20480, 0x7152f6b6
+0,      66560,      66560,     5120,    20480, 0x381c44ea
+0,      71680,      71680,     5120,    20480, 0xfe8ba205
+0,      76800,      76800,     5120,    20480, 0xebbf593b
+0,      81920,      81920,     5120,    20480, 0x30672f9b
+0,      87040,      87040,     5120,    20480, 0x553021d3
+0,      92160,      92160,     5120,    20480, 0x9e2b135d
+0,      97280,      97280,     5120,    20480, 0x9c419431
+0,     102400,     102400,     5120,    20480, 0x30e7988b
+0,     107520,     107520,     5120,    20480, 0xa48f824b
+0,     112640,     112640,     5120,    20480, 0xfb72eef4
+0,     117760,     117760,     5120,    20480, 0x2b9065c2
+0,     122880,     122880,     5120,    20480, 0x0d9e0f0f
+0,     128000,     128000,     5120,    20480, 0x068eef81
+0,     133120,     133120,     5120,    20480, 0xc1ae69f2
+0,     138240,     138240,     5120,    20480, 0xbdf90ed2
+0,     143360,     143360,     5120,    20480, 0xd071f1ea
+0,     148480,     148480,     2140,     8560, 0xf64370aa
-- 
2.42.1



More information about the ffmpeg-devel mailing list