diff --git a/fluster/codec.py b/fluster/codec.py index 02c0e2cd..73a5a9be 100644 --- a/fluster/codec.py +++ b/fluster/codec.py @@ -55,3 +55,4 @@ class OutputFormat(Enum): GRAY12LE = "gray12le" GRAY16LE = "gray16le" UNKNOWN = "Unknown" + FLTP = "fltp" diff --git a/pyproject.toml b/pyproject.toml index 151f68f2..d021b129 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -43,7 +43,7 @@ packages = ["fluster", "fluster.decoders"] [tool.setuptools.data-files] "share/fluster/test_suites/aac" = [ - "test_suites/aac/ISO_IEC_13818-4_2004.json", + "test_suites/aac/MPEG2_AAC-ADTS.json", "test_suites/aac/ISO_IEC_14496-26_2010.json" ] "share/fluster/test_suites/av1" = [ diff --git a/scripts/gen_aac.py b/scripts/gen_aac.py new file mode 100755 index 00000000..72ffca6c --- /dev/null +++ b/scripts/gen_aac.py @@ -0,0 +1,328 @@ +#!/usr/bin/env python3 + +# Fluster - testing framework for decoders conformance +# Copyright (C) 2024, Fluendo, S.A. +# Author: Michalis Dimopoulod , Fluendo, S.A. +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public License +# as published by the Free Software Foundation, either version 3 +# of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library. If not, see . + +import argparse +import re +from html.parser import HTMLParser +from multiprocessing import Pool +import os +import sys +import urllib.request +import multiprocessing + +# pylint: disable=wrong-import-position +sys.path.append(os.path.join(os.path.dirname(__file__), "..")) +from fluster import utils +from fluster.codec import Codec, OutputFormat +from fluster.test_suite import TestSuite, TestVector + +# pylint: enable=wrong-import-position + +BASE_URL = "https://standards.iso.org/" +URL_MPEG2 = BASE_URL + "ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/" +URL_MPEG2_ADTS = ( + URL_MPEG2 + + "compressedAdts" +) +URL_MPEG2_WAV_REFS = ( + URL_MPEG2 + + "referencesWav" +) +URL_MPEG2_WAV_REFS_MD5 = ( + URL_MPEG2 + + "referencesWav/_checksum" +) + +BITSTREAM_EXTS = [".adts"] +MD5_EXTS = [".wav.md5sum"] +MD5_EXCLUDES = [] +RAW_EXTS = [".wav"] + + +class HREFParser(HTMLParser): + """Custom parser to find href links""" + + def __init__(self): + self.links = [] + super().__init__() + + def error(self, message): + print(message) + + def handle_starttag(self, tag, attrs): + # Only parse the 'anchor' tag. + if tag == "a": + # Check the list of defined attributes. + for name, value in attrs: + # If href is defined, print it. + if name == "href": + base_url = BASE_URL if BASE_URL[-1] != "/" else BASE_URL[0:-1] + self.links.append(base_url + value) + + +class AACGenerator: + """Generates a test suite from the conformance bitstreams""" + + def __init__( + self, + name: str, + suite_name: str, + codec: Codec, + description: str, + url_test_vectors: str, + url_reference_vectors: str, + url_reference_vectors_checksums: str, + use_ffprobe: bool = False, + ): + self.name = name + self.suite_name = suite_name + self.codec = codec + self.description = description + self.url_test_vectors = url_test_vectors + self.url_reference_vectors = url_reference_vectors + self.url_reference_vectors_checksums = url_reference_vectors_checksums + self.use_ffprobe = use_ffprobe + + def _download_raw_output_references_and_checksums(self, jobs, test_suite, raw_bitstream_links, + raw_bitstream_md5_links): + """Downlodas raw output reference bitstreams and their checksums""" + + with Pool(jobs) as pool: + + def _callback_error(err): + print(f"\nError downloading -> {err}\n") + pool.terminate() + + downloads = [] + + print(f"\tDownloading output reference files for test suite {self.suite_name}") + for link in raw_bitstream_links: + downloads.append( + pool.apply_async( + utils.download, + args=( + link, + os.path.join( + test_suite.resources_dir, + test_suite.name, + os.path.splitext(os.path.basename(link))[0], + ), + ), + error_callback=_callback_error, + ) + ) + + print(f"\tDownloading output reference checksum files for test suite {self.suite_name}") + for link in raw_bitstream_md5_links: + downloads.append( + pool.apply_async( + utils.download, + args=( + link, + os.path.join( + test_suite.resources_dir, + test_suite.name, + os.path.splitext(os.path.splitext(os.path.basename(link))[0])[0], + ), + ), + error_callback=_callback_error, + ) + ) + + pool.close() + pool.join() + + for job in downloads: + if not job.successful(): + sys.exit("Some download failed") + + def generate(self, download, jobs): + """Generates the test suite and saves it to a file""" + output_filepath = os.path.join(self.suite_name + ".json") + test_suite = TestSuite( + output_filepath, + "resources", + self.suite_name, + self.codec, + self.description, + dict(), + ) + + hparser = HREFParser() + + with urllib.request.urlopen(self.url_test_vectors) as resp: + data = str(resp.read()) + hparser.feed(data) + compressed_bitstream_links = [url for url in hparser.links if url.endswith(tuple(BITSTREAM_EXTS))] + compressed_bitstream_names = [os.path.splitext(os.path.basename(x))[0] for x in compressed_bitstream_links] + + with urllib.request.urlopen(self.url_reference_vectors) as resp: + data = str(resp.read()) + hparser.feed(data) + raw_bitstream_links = [url for url in hparser.links if url.endswith(tuple(RAW_EXTS))] + raw_bitstream_names = [os.path.splitext(os.path.basename(x))[0] for x in raw_bitstream_links] + + if not set(compressed_bitstream_names).issubset(raw_bitstream_names): + raise Exception("Following test vectors are missing reference files {}" + .format([x for x in set(compressed_bitstream_names).difference(raw_bitstream_names)])) + else: + raw_bitstream_names = compressed_bitstream_names + + # Match and store entries of raw_bitstream_links that contain entries of raw_bitstream_names as substrings + raw_bitstream_links = [link for link in raw_bitstream_links + if any(name in link for name in raw_bitstream_names)] + + with urllib.request.urlopen(self.url_reference_vectors_checksums) as resp: + data = str(resp.read()) + hparser.feed(data) + raw_bitstream_md5_links = [url for url in hparser.links if url.endswith(tuple(MD5_EXTS))] + raw_bitstream_md5_names = [os.path.splitext(os.path.splitext(os.path.basename(x))[0])[0] + for x in raw_bitstream_md5_links] + + if not set(compressed_bitstream_names).issubset(raw_bitstream_md5_names): + raise Exception("Following test vectors are missing reference checksum files {}" + .format([x for x in set(compressed_bitstream_names).difference(raw_bitstream_md5_names)])) + else: + raw_bitstream_md5_names = compressed_bitstream_names + + # Match and store entries of raw_bitstream_md5_links that contain entries of raw_bitstream_md5_names + # as substrings + raw_bitstream_md5_links = [link for link in raw_bitstream_md5_links + if any(name in link for name in raw_bitstream_md5_names)] + + for source_url in compressed_bitstream_links: + input_filename = os.path.basename(source_url) + test_vector_name = os.path.splitext(input_filename)[0] + test_vector = TestVector( + test_vector_name, source_url, "__skip__", input_filename, OutputFormat.UNKNOWN, "" + ) + test_suite.test_vectors[test_vector_name] = test_vector + + # Download test suite input files + print(f"Download list of compressed bitstreams from {self.url_test_vectors}") + if download: + test_suite.download( + jobs=jobs, + out_dir=test_suite.resources_dir, + verify=False, + extract_all=True, + keep_file=True, + ) + + # Download test suite output reference and md5 checksum files + self._download_raw_output_references_and_checksums(jobs, test_suite, raw_bitstream_links, + raw_bitstream_md5_links) + + for test_vector in test_suite.test_vectors.values(): + dest_dir = os.path.join(test_suite.resources_dir, test_suite.name, test_vector.name) + dest_path = os.path.join(dest_dir, os.path.basename(test_vector.source)) + absolute_input_path = os.path.join(os.getcwd(), dest_dir, test_vector.input_file) + + # Check that bitstream file is located inside the corresponding test vector folder + if not os.path.isfile(absolute_input_path): + raise Exception(f"Bitstream file {test_vector.input_file} not found in {dest_dir}") + + # Calculate source file checksum + test_vector.source_checksum = utils.file_checksum(dest_path) + + # Extract sample format of input file using ffprobe + if self.use_ffprobe: + ffprobe = utils.normalize_binary_cmd("ffprobe") + command = [ + ffprobe, + "-v", + "error", + "-select_streams", + "a:0", + "-show_entries", + "stream=sample_fmt", + "-of", + "default=nokey=1:noprint_wrappers=1", + absolute_input_path, + ] + + sample_format = utils.run_command_with_output(command).splitlines()[0] + try: + test_vector.output_format = OutputFormat[sample_format.upper()] + except KeyError as key_err: + raise key_err + + # Read or calculate checksum of expected raw output + self._fill_checksum_aac(test_vector, dest_dir) + + test_suite.to_json_file(output_filepath) + print("Generate new test suite: " + test_suite.name + ".json") + + @staticmethod + def _fill_checksum_aac(test_vector, dest_dir): + checksum_file = utils.find_by_ext(dest_dir, MD5_EXTS) + if checksum_file is None: + raise Exception("MD5 not found") + with open(checksum_file, "r") as checksum_file: + regex = re.compile(rf"([a-fA-F0-9]{{32,}}).*(?:\.(wav))?") + lines = checksum_file.readlines() + # Filter out empty lines + filtered_lines = [line.strip() for line in lines if line.strip()] + # Prefer lines matching the regex pattern + match = next( + (regex.match(line) for line in filtered_lines if regex.match(line)), + None, + ) + if match: + test_vector.result = match.group(1).lower() + # Assert that we have extracted a valid MD5 from the file + assert ( + len(test_vector.result) == 32 + and re.search(r"^[a-fA-F0-9]{32}$", test_vector.result) is not None + ), f"{test_vector.result} is not a valid MD5 hash" + + raw_file = utils.find_by_ext(dest_dir, RAW_EXTS) + if raw_file is None or len(raw_file) == 0: + raise Exception(f"RAW file not found in {dest_dir}") + test_vector.result = utils.file_checksum(raw_file) + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument( + "--skip-download", + help="skip extracting tarball", + action="store_true", + default=False, + ) + parser.add_argument( + "-j", + "--jobs", + help="number of parallel jobs to use. 2x logical cores by default", + type=int, + default=2 * multiprocessing.cpu_count(), + ) + args = parser.parse_args() + + generator = AACGenerator( + "MPEG2_AAC-ADTS", + "MPEG2_AAC-ADTS", + Codec.AAC, + "ISO IEC 13818-4 MPEG2 AAC ADTS test suite", + URL_MPEG2_ADTS, + URL_MPEG2_WAV_REFS, + URL_MPEG2_WAV_REFS_MD5, + True, + ) + generator.generate(not args.skip_download, args.jobs) diff --git a/test_suites/aac/ISO_IEC_13818-4_2004.json b/test_suites/aac/MPEG2_AAC-ADTS.json similarity index 76% rename from test_suites/aac/ISO_IEC_13818-4_2004.json rename to test_suites/aac/MPEG2_AAC-ADTS.json index f5bb9ba8..215d53ac 100644 --- a/test_suites/aac/ISO_IEC_13818-4_2004.json +++ b/test_suites/aac/MPEG2_AAC-ADTS.json @@ -1,503 +1,503 @@ { - "name": "ISO_IEC_13818-4_2004", + "name": "MPEG2_AAC-ADTS", "codec": "AAC", - "description": "ISO_IEC_13818-4_2004 ADTS conformance test suite", + "description": "ISO IEC 13818-4 MPEG2 AAC ADTS test suite", "test_vectors": [ { - "name": "al09_08", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_08.adts", - "source_checksum": "2843464c7d9b40adac27c075ef100705", - "input_file": "al09_08.adts", - "output_format": "None", - "result": "385198f06cb664a13c535ff49c04b88c" + "name": "al12_48", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al12_48.adts", + "source_checksum": "27929bfbce9d06fb61274cb013d04e9a", + "input_file": "al12_48.adts", + "output_format": "fltp", + "result": "bae4b43109f5689160b54890f47efd0c" + }, + { + "name": "as20_24", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_24.adts", + "source_checksum": "711515116cd73b67d1f76862edc9cb10", + "input_file": "as20_24.adts", + "output_format": "fltp", + "result": "636e36d9061bbde4a6c7d39e676b4dfb" }, { "name": "al09_11", "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_11.adts", "source_checksum": "d9c69bdd4677c4998591272e6de378e7", "input_file": "al09_11.adts", - "output_format": "None", - "result": "ada779fe594fdcab99af4fc47e23559f" + "output_format": "fltp", + "result": "45f3814f5372b5e325a959de1552913c" }, { - "name": "al09_12", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_12.adts", - "source_checksum": "cd8ae7d9c7a06f1af755a33683594a98", - "input_file": "al09_12.adts", - "output_format": "None", - "result": "51b5beac5200b2794a7c7e9286314632" + "name": "as21_44", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_44.adts", + "source_checksum": "8318287c05fcdde7031de892a154dc7a", + "input_file": "as21_44.adts", + "output_format": "fltp", + "result": "0f749b75c489016e2ca65eb54fc90966" }, { - "name": "al09_16", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_16.adts", - "source_checksum": "8c91b5fc725fdba3c44c8f2390f89381", - "input_file": "al09_16.adts", - "output_format": "None", - "result": "fbc7c9af31c8cdb561f92cb61aaff61c" + "name": "as19_44", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_44.adts", + "source_checksum": "5622d850cdae2178bf8cca590fdfa011", + "input_file": "as19_44.adts", + "output_format": "fltp", + "result": "8b41a564f3cf744dca89fd7360f42115" }, { - "name": "al09_22", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_22.adts", - "source_checksum": "683f11281b7830def34ee1f778c7130b", - "input_file": "al09_22.adts", - "output_format": "None", - "result": "42cd6fddbc3e3425c350ee38a01a20c8" + "name": "al09_08", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_08.adts", + "source_checksum": "2843464c7d9b40adac27c075ef100705", + "input_file": "al09_08.adts", + "output_format": "fltp", + "result": "3f7da1c1bcf393002f9797fd16a4352a" }, { - "name": "al09_24", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_24.adts", - "source_checksum": "3e5a52c0c73cc9bb46d98d4c28378374", - "input_file": "al09_24.adts", - "output_format": "None", - "result": "b7c13b112a6dde20f831f325bb694aa6" + "name": "as19_24", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_24.adts", + "source_checksum": "d95b1df14e768ae90fecebab57219b58", + "input_file": "as19_24.adts", + "output_format": "fltp", + "result": "6d4222dd6fdf5d6dc9367abce33584f8" }, { - "name": "al09_32", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_32.adts", - "source_checksum": "56e57d9b3c98efaf74c2e75e46b94707", - "input_file": "al09_32.adts", - "output_format": "None", - "result": "30d1b4ea7670a46a5bd7d19491e753c3" + "name": "as19_32", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_32.adts", + "source_checksum": "9e4044870f052175df24acdd6d04cd39", + "input_file": "as19_32.adts", + "output_format": "fltp", + "result": "3fab333995a90a5fc75f23833853bc06" }, { - "name": "al09_44", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_44.adts", - "source_checksum": "8d67429688392ceaf915ae92dc0eb14e", - "input_file": "al09_44.adts", - "output_format": "None", - "result": "f94ac68ef4dc6c9bce35a7fd51000ac6" + "name": "as20_96", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_96.adts", + "source_checksum": "0ffe6dc8a1a8817bc9f4f95bb0a272cf", + "input_file": "as20_96.adts", + "output_format": "fltp", + "result": "adf796a93e39217cc7aea43ea25dc987" }, { - "name": "al09_48", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_48.adts", - "source_checksum": "5be05f18cfcf9340c9967a0d0007e4ad", - "input_file": "al09_48.adts", - "output_format": "None", - "result": "a4af5705b86bec13462ea6483c27802a" + "name": "as19_88", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_88.adts", + "source_checksum": "5843d8d610d372283455b48f74cbe0d3", + "input_file": "as19_88.adts", + "output_format": "fltp", + "result": "f3d277bb3cd856d9596803ca0ad0a3be" }, { - "name": "al09_64", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_64.adts", - "source_checksum": "154b9a2a184284d5f27aa9109324578a", - "input_file": "al09_64.adts", - "output_format": "None", - "result": "5f92fd7fada10e5dbd08b9587f19e8e1" + "name": "as21_11", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_11.adts", + "source_checksum": "09b1c407c41e2370417abb5dedffce9c", + "input_file": "as21_11.adts", + "output_format": "fltp", + "result": "e0532456fb45380ede0806139b525ffe" }, { - "name": "al09_88", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_88.adts", - "source_checksum": "a4d5e526f7c0fc8fb048aad54e4d71c2", - "input_file": "al09_88.adts", - "output_format": "None", - "result": "ad8bb96b3ac329ba4b290233f22401f8" + "name": "as18_24", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_24.adts", + "source_checksum": "192ab015b67c34d36d22aa0675ca5560", + "input_file": "as18_24.adts", + "output_format": "fltp", + "result": "291ef2da08d74f10512523eeedbcc6d8" }, { - "name": "al09_96", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_96.adts", - "source_checksum": "5ccaa6962dbbe8a7988990834b588b61", - "input_file": "al09_96.adts", - "output_format": "None", - "result": "74b3d242c6ac44779826115cfc15c46d" + "name": "as19_64", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_64.adts", + "source_checksum": "e45128742ebd2432e82c007f18a631b9", + "input_file": "as19_64.adts", + "output_format": "fltp", + "result": "8651fb75bfa0bac064898fefc815b3f2" }, { - "name": "al12_48", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al12_48.adts", - "source_checksum": "27929bfbce9d06fb61274cb013d04e9a", - "input_file": "al12_48.adts", - "output_format": "None", - "result": "d4497dd09304c27484a4461b2f568b60" + "name": "as20_88", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_88.adts", + "source_checksum": "d9a81756fa3880d19821de84ca37dd9a", + "input_file": "as20_88.adts", + "output_format": "fltp", + "result": "e77dd105421e7457894f3b1399886a73" }, { - "name": "al13_48", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al13_48.adts", - "source_checksum": "92e966b0c730d9dcde6373636d869534", - "input_file": "al13_48.adts", - "output_format": "None", - "result": "dbbebf84893807b7180eb7c9cc36099a" + "name": "as20_08", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_08.adts", + "source_checksum": "ad7d08193b166cf1c46ff84a3f3ebb7d", + "input_file": "as20_08.adts", + "output_format": "fltp", + "result": "fe7804ed8d57899d6950bf0ad752b7f3" }, { - "name": "as18_08", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_08.adts", - "source_checksum": "a64588993a1bb52acfedb21df39e9b78", - "input_file": "as18_08.adts", - "output_format": "None", - "result": "1f6f96bd1d3b052e95286c93ebd24160" + "name": "as21_64", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_64.adts", + "source_checksum": "6c595906c5e563a765ed97c825719cc6", + "input_file": "as21_64.adts", + "output_format": "fltp", + "result": "e184f9f254277e80d7bef094ccb9ace4" }, { - "name": "as18_11", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_11.adts", - "source_checksum": "f5ffb91d23d125853afcb8297d925404", - "input_file": "as18_11.adts", - "output_format": "None", - "result": "c6ce39ac9f3a19c727c9f1a6df0a3b24" + "name": "as21_24", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_24.adts", + "source_checksum": "7d54f1ca0dea1a42491252e61e0b0ade", + "input_file": "as21_24.adts", + "output_format": "fltp", + "result": "edb6c10f72ff1d9b3044dfa1bd0c7a2a" }, { - "name": "as18_12", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_12.adts", - "source_checksum": "b745ffe579e4832c214c6de012485f1f", - "input_file": "as18_12.adts", - "output_format": "None", - "result": "6c33d452b9f9e9c11be869296a706c60" + "name": "as21_16", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_16.adts", + "source_checksum": "29c98dae5c26f6739fa449607dc6adf9", + "input_file": "as21_16.adts", + "output_format": "fltp", + "result": "824863661814a170cfa742b9fa860989" }, { - "name": "as18_16", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_16.adts", - "source_checksum": "a5bb06ebb5238ebd2539f481515aec11", - "input_file": "as18_16.adts", - "output_format": "None", - "result": "6a12f289a1f5a4f51b5b32364cb9dd01" + "name": "as18_88", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_88.adts", + "source_checksum": "c565798d39dbbc3a0c3dcb07d7210df8", + "input_file": "as18_88.adts", + "output_format": "fltp", + "result": "4ece0dc1422c1d40a429020cdcd48b0e" }, { - "name": "as18_22", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_22.adts", - "source_checksum": "5369c26e819fa6ea569007ad629ac0ec", - "input_file": "as18_22.adts", - "output_format": "None", - "result": "7bdf3d0d5f144e49024717fd9a8a269b" + "name": "as18_11", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_11.adts", + "source_checksum": "f5ffb91d23d125853afcb8297d925404", + "input_file": "as18_11.adts", + "output_format": "fltp", + "result": "0497fed5162a3f9e7596515c6a46b759" }, { - "name": "as18_24", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_24.adts", - "source_checksum": "192ab015b67c34d36d22aa0675ca5560", - "input_file": "as18_24.adts", - "output_format": "None", - "result": "e683ef621ad09675f21632b06f89b894" + "name": "as20_48", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_48.adts", + "source_checksum": "569bb98829b5a308c3bb9c7afc83cdc6", + "input_file": "as20_48.adts", + "output_format": "fltp", + "result": "a30ad97baeee7d8381c0a1a3f85d7d90" }, { - "name": "as18_32", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_32.adts", - "source_checksum": "e12fc78483b5c2a5bf4cab5aca1cd921", - "input_file": "as18_32.adts", - "output_format": "None", - "result": "9cc0ae49da101bd127a800aad247abf3" + "name": "as21_22", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_22.adts", + "source_checksum": "316b53896aff83108f32d2db8aa39fcf", + "input_file": "as21_22.adts", + "output_format": "fltp", + "result": "2c0bbe9200f2fb031e1864683ebaf367" }, { - "name": "as18_44", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_44.adts", - "source_checksum": "b4b616b26ab554ed57ea7014de845cc0", - "input_file": "as18_44.adts", - "output_format": "None", - "result": "81ea5c9925e1537495ac8698793d761d" + "name": "as20_22", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_22.adts", + "source_checksum": "3cefa90c24155f261826bebb95065fe0", + "input_file": "as20_22.adts", + "output_format": "fltp", + "result": "180e2fc1eae7e8cc3bcd63e03a485e21" }, { - "name": "as18_48", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_48.adts", - "source_checksum": "e5fd7fb3db6bea960171e155ffcd81f2", - "input_file": "as18_48.adts", - "output_format": "None", - "result": "cd4d8fa4ce36a8b2d727f31b9d467f3b" + "name": "as21_08", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_08.adts", + "source_checksum": "a8ba0949a1e983cb076dafa6726082d4", + "input_file": "as21_08.adts", + "output_format": "fltp", + "result": "3d99bcabac1e06a0e619b598d157fe54" }, { - "name": "as18_64", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_64.adts", - "source_checksum": "8b9d9f7969f20284dcb670c51b425d93", - "input_file": "as18_64.adts", - "output_format": "None", - "result": "de4eada5809199644d621d62c4d2b306" + "name": "as20_44", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_44.adts", + "source_checksum": "c6c903ccd30accc90b44dbe556bf3701", + "input_file": "as20_44.adts", + "output_format": "fltp", + "result": "949d889b7fc27a65f94987925bb6e3a1" }, { - "name": "as18_88", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_88.adts", - "source_checksum": "c565798d39dbbc3a0c3dcb07d7210df8", - "input_file": "as18_88.adts", - "output_format": "None", - "result": "201a8ee48bfa77a78679dd26646382ac" + "name": "as20_11", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_11.adts", + "source_checksum": "6d3260070f0e55a02e41272edce11d23", + "input_file": "as20_11.adts", + "output_format": "fltp", + "result": "0272a9d25316b8f2ac024feb11d7b4ff" }, { - "name": "as18_96", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_96.adts", - "source_checksum": "5fca7fa515d86d5910147cc909bfc9fb", - "input_file": "as18_96.adts", - "output_format": "None", - "result": "24f35893403e126343fa56bdb3c6f9d7" + "name": "as19_48", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_48.adts", + "source_checksum": "a7a3032f2d9abb74ba53c59f8edaefec", + "input_file": "as19_48.adts", + "output_format": "fltp", + "result": "8c77378bfa853a7a37ad4323ee927582" }, { "name": "as19_08", "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_08.adts", "source_checksum": "035f0a74173468a7940e901da1599d55", "input_file": "as19_08.adts", - "output_format": "None", - "result": "bce7bf321502962190947a6b504801e7" - }, - { - "name": "as19_11", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_11.adts", - "source_checksum": "f6415137c41dd5ce5572659abbd61333", - "input_file": "as19_11.adts", - "output_format": "None", - "result": "5dda30abdc4fa3399c8fa1a7c602bca8" - }, - { - "name": "as19_12", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_12.adts", - "source_checksum": "1e22b357bef8f7a32fb5a0655a03cc65", - "input_file": "as19_12.adts", - "output_format": "None", - "result": "33d07752b3f3d2beb45a705754be6584" + "output_format": "fltp", + "result": "a24bfcb0382b64ff3b828d4a97c6a598" }, { "name": "as19_16", "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_16.adts", "source_checksum": "4a7dda41b06c18a35b9f9d7dbad42bc7", "input_file": "as19_16.adts", - "output_format": "None", - "result": "17af6ae5dbd337a059710648c9ff996d" + "output_format": "fltp", + "result": "4b1d4c8a33e99e30a42afbb781578368" }, { - "name": "as19_22", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_22.adts", - "source_checksum": "21a24c98f9c0c871422050e31ff5a27a", - "input_file": "as19_22.adts", - "output_format": "None", - "result": "e4152a4e3bce0c8ce8665a1615f9e8f5" + "name": "al09_64", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_64.adts", + "source_checksum": "154b9a2a184284d5f27aa9109324578a", + "input_file": "al09_64.adts", + "output_format": "fltp", + "result": "6b7786cdfa6a79b6261bd3eaca246e65" }, { - "name": "as19_24", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_24.adts", - "source_checksum": "d95b1df14e768ae90fecebab57219b58", - "input_file": "as19_24.adts", - "output_format": "None", - "result": "d622aee91247ec1273194aa6de5c9745" + "name": "al09_24", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_24.adts", + "source_checksum": "3e5a52c0c73cc9bb46d98d4c28378374", + "input_file": "al09_24.adts", + "output_format": "fltp", + "result": "8c4be460009dede1e84c9cc26efe0589" }, { - "name": "as19_32", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_32.adts", - "source_checksum": "9e4044870f052175df24acdd6d04cd39", - "input_file": "as19_32.adts", - "output_format": "None", - "result": "eb269af031d50a8b3bed859d6bd25a4a" + "name": "al09_44", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_44.adts", + "source_checksum": "8d67429688392ceaf915ae92dc0eb14e", + "input_file": "al09_44.adts", + "output_format": "fltp", + "result": "e76639802041a3665dccd6bd02a20fa6" }, { - "name": "as19_44", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_44.adts", - "source_checksum": "5622d850cdae2178bf8cca590fdfa011", - "input_file": "as19_44.adts", - "output_format": "None", - "result": "06180286f29acf2b250cc6e29bd3a0a3" + "name": "al13_48", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al13_48.adts", + "source_checksum": "92e966b0c730d9dcde6373636d869534", + "input_file": "al13_48.adts", + "output_format": "fltp", + "result": "df98107109e884737dd74b6db0feb33d" }, { - "name": "as19_48", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_48.adts", - "source_checksum": "a7a3032f2d9abb74ba53c59f8edaefec", - "input_file": "as19_48.adts", - "output_format": "None", - "result": "ba89239240bc73639dfb558223bc6fc2" + "name": "as19_96", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_96.adts", + "source_checksum": "78ecb299d42f2aa4aa07d15240013e78", + "input_file": "as19_96.adts", + "output_format": "fltp", + "result": "9e13c300fb44756929c1ecaae969ad8d" }, { - "name": "as19_64", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_64.adts", - "source_checksum": "e45128742ebd2432e82c007f18a631b9", - "input_file": "as19_64.adts", - "output_format": "None", - "result": "a5b63ad2134366d0b149854439dd87be" + "name": "as20_12", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_12.adts", + "source_checksum": "f694118f7ff688c2915d6fe4060bef33", + "input_file": "as20_12.adts", + "output_format": "fltp", + "result": "af2728b4ad681184dce08bae1a183162" }, { - "name": "as19_88", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_88.adts", - "source_checksum": "5843d8d610d372283455b48f74cbe0d3", - "input_file": "as19_88.adts", - "output_format": "None", - "result": "71511bbda2ff1142753fb067b8248d99" + "name": "as20_64", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_64.adts", + "source_checksum": "da230df29e16888934ef7a64ca544243", + "input_file": "as20_64.adts", + "output_format": "fltp", + "result": "dd6c03d3bab856fdda6d83c426bea305" }, { - "name": "as19_96", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_96.adts", - "source_checksum": "78ecb299d42f2aa4aa07d15240013e78", - "input_file": "as19_96.adts", - "output_format": "None", - "result": "0f7b79ceebf35154b63adf2d3ddd4ca5" + "name": "as21_48", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_48.adts", + "source_checksum": "1c98f957869644bbc3f1095d0ee90ec4", + "input_file": "as21_48.adts", + "output_format": "fltp", + "result": "72eef2fe807292fbb99a5b34398420c0" }, { - "name": "as20_08", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_08.adts", - "source_checksum": "ad7d08193b166cf1c46ff84a3f3ebb7d", - "input_file": "as20_08.adts", - "output_format": "None", - "result": "88514de302080fc199c2c5426fbbb256" + "name": "as18_32", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_32.adts", + "source_checksum": "e12fc78483b5c2a5bf4cab5aca1cd921", + "input_file": "as18_32.adts", + "output_format": "fltp", + "result": "c5292512cdf48ce153811a43ae36bbba" }, { - "name": "as20_11", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_11.adts", - "source_checksum": "6d3260070f0e55a02e41272edce11d23", - "input_file": "as20_11.adts", - "output_format": "None", - "result": "c3f2298751f0b3c9b2d50ff8b4fd9d4e" + "name": "al09_32", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_32.adts", + "source_checksum": "56e57d9b3c98efaf74c2e75e46b94707", + "input_file": "al09_32.adts", + "output_format": "fltp", + "result": "8674ec6187098dc77d26780cec906964" }, { - "name": "as20_12", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_12.adts", - "source_checksum": "f694118f7ff688c2915d6fe4060bef33", - "input_file": "as20_12.adts", - "output_format": "None", - "result": "15e83d3892a9532d46c4be01cd78cbe8" + "name": "as18_16", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_16.adts", + "source_checksum": "a5bb06ebb5238ebd2539f481515aec11", + "input_file": "as18_16.adts", + "output_format": "fltp", + "result": "b74074eebf121f6a22b4fcb754d70088" }, { - "name": "as20_16", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_16.adts", - "source_checksum": "a8ec01e8aa200ed65dbae8459b438df6", - "input_file": "as20_16.adts", - "output_format": "None", - "result": "84a7aa3b4b6cd9fc132916c32b7141f1" + "name": "as18_48", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_48.adts", + "source_checksum": "e5fd7fb3db6bea960171e155ffcd81f2", + "input_file": "as18_48.adts", + "output_format": "fltp", + "result": "cdf0e52da75ae29fd5e327fc7ef1dd12" }, { - "name": "as20_22", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_22.adts", - "source_checksum": "3cefa90c24155f261826bebb95065fe0", - "input_file": "as20_22.adts", - "output_format": "None", - "result": "0238c48dee49b5c46d17c87889ad9d7d" + "name": "as18_44", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_44.adts", + "source_checksum": "b4b616b26ab554ed57ea7014de845cc0", + "input_file": "as18_44.adts", + "output_format": "fltp", + "result": "1978712357e67e6148c1429bd35d3bfc" }, { - "name": "as20_24", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_24.adts", - "source_checksum": "711515116cd73b67d1f76862edc9cb10", - "input_file": "as20_24.adts", - "output_format": "None", - "result": "d5e46ba493f520194429846c1b377589" + "name": "as21_96", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_96.adts", + "source_checksum": "5f31709d01b272dd9434e5800dd948dd", + "input_file": "as21_96.adts", + "output_format": "fltp", + "result": "1e2597610c03d93e078c37fe0eb1ee46" }, { - "name": "as20_32", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_32.adts", - "source_checksum": "f9de9178603479f2575db585cc944622", - "input_file": "as20_32.adts", - "output_format": "None", - "result": "33fef2e3a0d96972297b51ff0662abd4" + "name": "al09_22", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_22.adts", + "source_checksum": "683f11281b7830def34ee1f778c7130b", + "input_file": "al09_22.adts", + "output_format": "fltp", + "result": "9296f37fa20f0325093f0d324d7959cb" }, { - "name": "as20_44", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_44.adts", - "source_checksum": "c6c903ccd30accc90b44dbe556bf3701", - "input_file": "as20_44.adts", - "output_format": "None", - "result": "279af7b736395078a76289d9983e149d" + "name": "as19_12", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_12.adts", + "source_checksum": "1e22b357bef8f7a32fb5a0655a03cc65", + "input_file": "as19_12.adts", + "output_format": "fltp", + "result": "14283798dcae218386885921f3e042e1" }, { - "name": "as20_48", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_48.adts", - "source_checksum": "569bb98829b5a308c3bb9c7afc83cdc6", - "input_file": "as20_48.adts", - "output_format": "None", - "result": "fa1e9486032f1dd20d3a4c5d760553d2" + "name": "al09_16", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_16.adts", + "source_checksum": "8c91b5fc725fdba3c44c8f2390f89381", + "input_file": "al09_16.adts", + "output_format": "fltp", + "result": "3deda1facfc196a807a1a979926a0e26" }, { - "name": "as20_64", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_64.adts", - "source_checksum": "da230df29e16888934ef7a64ca544243", - "input_file": "as20_64.adts", - "output_format": "None", - "result": "a49b9fdaac7c3bc18d7ea3254fc994b7" + "name": "as18_64", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_64.adts", + "source_checksum": "8b9d9f7969f20284dcb670c51b425d93", + "input_file": "as18_64.adts", + "output_format": "fltp", + "result": "a4078a2db7d6e37ec859bf63847066fc" }, { - "name": "as20_88", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_88.adts", - "source_checksum": "d9a81756fa3880d19821de84ca37dd9a", - "input_file": "as20_88.adts", - "output_format": "None", - "result": "babc22cc098d8e7d797fbaa41e6663e4" + "name": "as19_11", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_11.adts", + "source_checksum": "f6415137c41dd5ce5572659abbd61333", + "input_file": "as19_11.adts", + "output_format": "fltp", + "result": "b55824b9c5f438b0dcebf399c839a58b" }, { - "name": "as20_96", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_96.adts", - "source_checksum": "0ffe6dc8a1a8817bc9f4f95bb0a272cf", - "input_file": "as20_96.adts", - "output_format": "None", - "result": "6f8594ae06969889a84608bf6ffd5e63" + "name": "al09_12", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_12.adts", + "source_checksum": "cd8ae7d9c7a06f1af755a33683594a98", + "input_file": "al09_12.adts", + "output_format": "fltp", + "result": "9cc72882eef5f3eccffce630d54f94d1" }, { - "name": "as21_08", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_08.adts", - "source_checksum": "a8ba0949a1e983cb076dafa6726082d4", - "input_file": "as21_08.adts", - "output_format": "None", - "result": "04c3c5d0994244b9a0abb57f0a20a211" + "name": "as20_16", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_16.adts", + "source_checksum": "a8ec01e8aa200ed65dbae8459b438df6", + "input_file": "as20_16.adts", + "output_format": "fltp", + "result": "5ef11534ae396695374afea4a465e974" }, { - "name": "as21_11", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_11.adts", - "source_checksum": "09b1c407c41e2370417abb5dedffce9c", - "input_file": "as21_11.adts", - "output_format": "None", - "result": "cdfca8758bec798142cf6d5337aa5f5b" + "name": "al09_88", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_88.adts", + "source_checksum": "a4d5e526f7c0fc8fb048aad54e4d71c2", + "input_file": "al09_88.adts", + "output_format": "fltp", + "result": "392baa1e73e036c98ab27c105e15e8af" }, { - "name": "as21_12", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_12.adts", - "source_checksum": "939556a3ce7d04dc581db45317147d08", - "input_file": "as21_12.adts", - "output_format": "None", - "result": "db64f9c3f19a8136737977be740bfdff" + "name": "as18_08", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_08.adts", + "source_checksum": "a64588993a1bb52acfedb21df39e9b78", + "input_file": "as18_08.adts", + "output_format": "fltp", + "result": "63413b1486834edf83df0a99bbaa81ed" }, { - "name": "as21_16", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_16.adts", - "source_checksum": "29c98dae5c26f6739fa449607dc6adf9", - "input_file": "as21_16.adts", - "output_format": "None", - "result": "b44abf44783aebd3abc2478522c5889c" + "name": "as18_12", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_12.adts", + "source_checksum": "b745ffe579e4832c214c6de012485f1f", + "input_file": "as18_12.adts", + "output_format": "fltp", + "result": "74649c19597a67bfd319a5e6f4c74b8a" }, { - "name": "as21_22", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_22.adts", - "source_checksum": "316b53896aff83108f32d2db8aa39fcf", - "input_file": "as21_22.adts", - "output_format": "None", - "result": "04d847223c86171e00fe677929ee3186" + "name": "as18_22", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_22.adts", + "source_checksum": "5369c26e819fa6ea569007ad629ac0ec", + "input_file": "as18_22.adts", + "output_format": "fltp", + "result": "79e9193f9ed93d960a0f8e3feec9a47b" }, { - "name": "as21_24", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_24.adts", - "source_checksum": "7d54f1ca0dea1a42491252e61e0b0ade", - "input_file": "as21_24.adts", - "output_format": "None", - "result": "d619feee354716ce44a7c2966b9ab000" + "name": "al09_48", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_48.adts", + "source_checksum": "5be05f18cfcf9340c9967a0d0007e4ad", + "input_file": "al09_48.adts", + "output_format": "fltp", + "result": "d7b2083825a5874dcbb8908cc5735183" }, { - "name": "as21_32", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_32.adts", - "source_checksum": "af841a1ebdefb2a40cd819c174fc1be6", - "input_file": "as21_32.adts", - "output_format": "None", - "result": "e3c9a074b3d1d32d8c38d6bc3bd25492" + "name": "al09_96", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/al09_96.adts", + "source_checksum": "5ccaa6962dbbe8a7988990834b588b61", + "input_file": "al09_96.adts", + "output_format": "fltp", + "result": "85210932d70e0295e10885fe0f28cb56" }, { - "name": "as21_44", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_44.adts", - "source_checksum": "8318287c05fcdde7031de892a154dc7a", - "input_file": "as21_44.adts", - "output_format": "None", - "result": "d862ac356292d4b0822cdf6aa76b9c16" + "name": "as18_96", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as18_96.adts", + "source_checksum": "5fca7fa515d86d5910147cc909bfc9fb", + "input_file": "as18_96.adts", + "output_format": "fltp", + "result": "ad33cddc35d647740a7eec8dbc37c581" }, { - "name": "as21_48", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_48.adts", - "source_checksum": "1c98f957869644bbc3f1095d0ee90ec4", - "input_file": "as21_48.adts", - "output_format": "None", - "result": "d9c561723a11e490b82c34f8405c9e79" + "name": "as21_12", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_12.adts", + "source_checksum": "939556a3ce7d04dc581db45317147d08", + "input_file": "as21_12.adts", + "output_format": "fltp", + "result": "f7a0f91241a27bbae305f8a5b834bcc5" }, { - "name": "as21_64", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_64.adts", - "source_checksum": "6c595906c5e563a765ed97c825719cc6", - "input_file": "as21_64.adts", - "output_format": "None", - "result": "ad991bc9a517fb82965911570146a624" + "name": "as21_32", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_32.adts", + "source_checksum": "af841a1ebdefb2a40cd819c174fc1be6", + "input_file": "as21_32.adts", + "output_format": "fltp", + "result": "98a4083ce37f90fc25a1c6b51faa13ad" + }, + { + "name": "as19_22", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as19_22.adts", + "source_checksum": "21a24c98f9c0c871422050e31ff5a27a", + "input_file": "as19_22.adts", + "output_format": "fltp", + "result": "dfcaf44cacd516d8aaeac250bf19d571" }, { "name": "as21_88", "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_88.adts", "source_checksum": "d1675729e2333effc6fcc50ab0b5e94b", "input_file": "as21_88.adts", - "output_format": "None", - "result": "54c1a5c135243bf076dfcaef2672cfb5" + "output_format": "fltp", + "result": "9f5e4921e04c68ce72d1ec7678810f80" }, { - "name": "as21_96", - "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as21_96.adts", - "source_checksum": "5f31709d01b272dd9434e5800dd948dd", - "input_file": "as21_96.adts", - "output_format": "None", - "result": "0ec45e077a46af9ed983f847701abb0e" + "name": "as20_32", + "source": "https://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_13818-4_2004_Conformance_Testing/AAC/compressedAdts/as20_32.adts", + "source_checksum": "f9de9178603479f2575db585cc944622", + "input_file": "as20_32.adts", + "output_format": "fltp", + "result": "60f0f2fee508216ad89b977065710242" } ] } \ No newline at end of file