1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

fate/jpeg2000: add JPEG 2000 tests using ITU/ISO conformance materials

Adds JPEG 2000 decoder tests using materials from the conformance suite specified in
Rec. ITU-T T.803 | ISO/IEC 15444-4.

The test materials are available at https://gitlab.com/wg1/htj2k-codestreams

Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com>
This commit is contained in:
Pierre-Anthony Lemieux 2023-04-14 12:14:43 -07:00
parent b9c42cdf8d
commit 7ecf1bff6d
No known key found for this signature in database
GPG Key ID: 698FA1F0F8D4EED4
16 changed files with 149 additions and 0 deletions

View File

@ -200,6 +200,7 @@ include $(SRC_PATH)/tests/fate/id3v2.mak
include $(SRC_PATH)/tests/fate/image.mak
include $(SRC_PATH)/tests/fate/imf.mak
include $(SRC_PATH)/tests/fate/indeo.mak
include $(SRC_PATH)/tests/fate/jpeg2000.mak
include $(SRC_PATH)/tests/fate/libavcodec.mak
include $(SRC_PATH)/tests/fate/libavdevice.mak
include $(SRC_PATH)/tests/fate/libavformat.mak

64
tests/fate/jpeg2000.mak Normal file
View File

@ -0,0 +1,64 @@
# The following tests are based on the conformance suite specified in
# Rec. ITU-T T.803 | ISO/IEC 15444-4 available at the following URLs:
# * https://gitlab.com/wg1/htj2k-codestreams
# * https://www.itu.int/rec/T-REC-T.803/en
# * https://www.iso.org/standard/81574.html
#
# Notes:
# * p0_06.j2k is not included because it uses a pixel format that is not
# supported (4:2:2:1)
# * p0_10.j2k is not included because errors are emitted during decoding and
# there are significant deviations from the reference image in the bottom-left
# quadrant
# * p0_13.j2k is not included because it uses a pixel format that is not
# supported (257 color channels)
# * p0_04.j2k and p0_05.j2k exceed the error thresholds specified in the
# conformance suite
# * p0_09.j2k matches the reference image exactly when bitexact is not used, but
# exceed the error thresholds specified in the conformance suite when bitexact
# is used
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_01
fate-jpeg2000dec-p0_01: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_01.j2k
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_02
fate-jpeg2000dec-p0_02: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_02.j2k
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_03
fate-jpeg2000dec-p0_03: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_03.j2k
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_04
fate-jpeg2000dec-p0_04: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_04.j2k
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_05
fate-jpeg2000dec-p0_05: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_05.j2k
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_07
fate-jpeg2000dec-p0_07: CMD = framecrc -flags +bitexact -auto_conversion_filters -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_07.j2k -pix_fmt rgb48le
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_08
fate-jpeg2000dec-p0_08: CMD = framecrc -flags +bitexact -auto_conversion_filters -lowres 1 -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_08.j2k -pix_fmt rgb48le
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_09
fate-jpeg2000dec-p0_09: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_09.j2k
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_11
fate-jpeg2000dec-p0_11: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_11.j2k
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_12
fate-jpeg2000dec-p0_12: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_12.j2k
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_14
fate-jpeg2000dec-p0_14: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_14.j2k
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_15
fate-jpeg2000dec-p0_15: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_15.j2k
FATE_JPEG2000DEC += fate-jpeg2000dec-p0_16
fate-jpeg2000dec-p0_16: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/codestreams_profile0/p0_16.j2k
FATE_JPEG2000DEC += fate-jpeg2000dec-ds0_ht_01_b11
fate-jpeg2000dec-ds0_ht_01_b11: CMD = framecrc -flags +bitexact -i $(TARGET_SAMPLES)/jpeg2000/itu-iso/htj2k_bsets_profile0/ds0_ht_01_b11.j2k
FATE_SAMPLES_FFMPEG += $(FATE_JPEG2000DEC)
fate-jpeg2000dec: $(FATE_JPEG2000DEC)

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 128x128
#sar 0: 0/1
0, 0, 0, 1, 16384, 0x44426324

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 128x128
#sar 0: 0/1
0, 0, 0, 1, 16384, 0x04a3647e

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 64x126
#sar 0: 0/1
0, 0, 0, 1, 8064, 0xd634c70c

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 256x256
#sar 0: 0/1
0, 0, 0, 1, 65536, 0x252408c0

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 640x480
#sar 0: 0/1
0, 0, 0, 1, 921600, 0x097d9665

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 1024x1024
#sar 0: 0/1
0, 0, 0, 1, 2621440, 0x081f5048

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 2048x2048
#sar 0: 0/1
0, 0, 0, 1, 25165824, 0x9685aad6

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 257x1536
#sar 0: 0/1
0, 0, 0, 1, 2368512, 0xece49ff9

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 17x37
#sar 0: 0/1
0, 0, 0, 1, 629, 0x5c9c389d

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 128x1
#sar 0: 0/1
0, 0, 0, 1, 128, 0xae9630db

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 3x5
#sar 0: 0/1
0, 0, 0, 1, 15, 0x2a170596

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 49x49
#sar 0: 0/1
0, 0, 0, 1, 7203, 0x61d40b41

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 256x256
#sar 0: 0/1
0, 0, 0, 1, 65536, 0x252408c0

View File

@ -0,0 +1,6 @@
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 128x128
#sar 0: 0/1
0, 0, 0, 1, 16384, 0x04a3647e