diff --git a/pyproject.toml b/pyproject.toml index c5ce43b..151f68f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -55,8 +55,8 @@ packages = ["fluster", "fluster.decoders"] "test_suites/h264/JVT-AVC_V1.json", "test_suites/h264/JVT-FR-EXT.json", "test_suites/h264/JVT-MVC.json", - "test_suites/h264/JVT-Professional_profiles.json", - "test_suites/h264/JVT-SVC.json" + "test_suites/h264/JVT-Professional_profiles_V1.json", + "test_suites/h264/JVT-SVC_V1.json" ] "share/fluster/test_suites/h265" = [ "test_suites/h265/JCT-VC-3D-HEVC.json", diff --git a/scripts/gen_jvt.py b/scripts/gen_jvt.py index 421c8d3..fb30933 100755 --- a/scripts/gen_jvt.py +++ b/scripts/gen_jvt.py @@ -47,7 +47,7 @@ ] MD5_EXTS = ["yuv_2.md5", "yuv.md5", ".md5", "md5.txt", "md5sum.txt"] MD5_EXCLUDES = [".bin.md5", "bit.md5"] -RAW_EXTS = ["nogray.yuv", ".yuv", ".qcif"] +RAW_EXTS = ["nogray.yuv", ".yuv", ".YUV", ".qcif"] class HREFParser(HTMLParser): @@ -193,6 +193,29 @@ def generate(self, download, jobs): else: raise key_err + exceptions_checksum = [ + # Output checksum of all below test vectors from JVT-FRExt has to be calculated by means of + # executing a run with the reference decoder, `fluster.py -f ...` + "alphaconformanceG", # Raw reference files are split streams and give false checksum value + "FREH10-1", + "FREH10-2", + "Hi422FR1_SONY_A", + "Hi422FR2_SONY_A", + "Hi422FR3_SONY_A", + "Hi422FR4_SONY_A", + "Hi422FR6_SONY_A", + "Hi422FR7_SONY_A", + "Hi422FR8_SONY_A", + "Hi422FR9_SONY_A", + "Hi422FREXT16_SONY_A", + "Hi422FREXT17_SONY_A", + "Hi422FREXT18_SONY_A", + "Hi422FREXT19_SONY_A", + ] + + if test_vector.name in exceptions_checksum: + continue + if self.name not in ( "Professional_profiles", "MVC", @@ -283,6 +306,16 @@ def remove_r1_from_path(path): ) generator.generate(not args.skip_download, args.jobs) + generator = JVTGenerator( + "FRExt", + "JVT-FR-EXT", + Codec.H264, + "JVT Fidelity Range Extension test suite", + H264_URL, + True, + ) + generator.generate(not args.skip_download, args.jobs) + generator = JVTGenerator( "MVC", "JVT-MVC", @@ -294,20 +327,20 @@ def remove_r1_from_path(path): generator.generate(not args.skip_download, args.jobs) generator = JVTGenerator( - "SVC", - "JVT-SVC", + "Professional_profiles", + "JVT-Professional_profiles_V1", Codec.H264, - "JVT Scalable Video Coding test suite", + "JVT Professional Profiles test suite", H264_URL, True, ) generator.generate(not args.skip_download, args.jobs) generator = JVTGenerator( - "Professional_profiles", - "JVT-Professional_profiles", + "SVC", + "JVT-SVC_V1", Codec.H264, - "JVT Professional Profiles test suite", + "JVT Scalable Video Coding test suite", H264_URL, True, ) diff --git a/test_suites/h264/JVT-FR-EXT.json b/test_suites/h264/JVT-FR-EXT.json index 3f4cb9e..14a2551 100644 --- a/test_suites/h264/JVT-FR-EXT.json +++ b/test_suites/h264/JVT-FR-EXT.json @@ -1,7 +1,7 @@ { "name": "JVT-FR-EXT", "codec": "H.264", - "description": "JVT Fidelity Range Extensions", + "description": "JVT Fidelity Range Extension test suite", "test_vectors": [ { "name": "alphaconformanceG", diff --git a/test_suites/h264/JVT-Professional_profiles.json b/test_suites/h264/JVT-Professional_profiles_V1.json similarity index 99% rename from test_suites/h264/JVT-Professional_profiles.json rename to test_suites/h264/JVT-Professional_profiles_V1.json index 1311fb6..9598333 100644 --- a/test_suites/h264/JVT-Professional_profiles.json +++ b/test_suites/h264/JVT-Professional_profiles_V1.json @@ -1,5 +1,5 @@ { - "name": "JVT-Professional_profiles", + "name": "JVT-Professional_profiles_V1", "codec": "H.264", "description": "JVT Professional Profiles test suite", "test_vectors": [ diff --git a/test_suites/h264/JVT-SVC.json b/test_suites/h264/JVT-SVC_V1.json similarity index 99% rename from test_suites/h264/JVT-SVC.json rename to test_suites/h264/JVT-SVC_V1.json index 37f622a..111ed48 100644 --- a/test_suites/h264/JVT-SVC.json +++ b/test_suites/h264/JVT-SVC_V1.json @@ -1,5 +1,5 @@ { - "name": "JVT-SVC", + "name": "JVT-SVC_V1", "codec": "H.264", "description": "JVT Scalable Video Coding test suite", "test_vectors": [