blob: a970234bb355536f9126e3b1b32234fecc6fd620 [file] [log] [blame] [view]
# Test vectors
Test vectors are grouped with a common prefix. For example test_000012 has
several files associated with it.
- Metadata describing the test vector:`test_000012.textproto`.
- Standalone IAMF bitstream: `test_000012.iamf`.
- Fragmented MP4 file: `test_000012_f.mp4`.
- Standalone MP4 file: `test_000012_s.mp4`.
- Rendered WAV file (per `mix_presentation_id` x, sub mix index y, layout
index z): `test_000012_rendered_id_x_sub_mix_y_layout_z.wav`
## .textproto files
Theses file describe metadata about the test vector to encode an
[IA Sequence](https://aomediacodec.github.io/iamf/#standalone-ia-sequence).
- `is_valid`: True when the encoder can produce an IA Sequence where all mixes
would be understood by a compliant decoder. False when one or more mixes
exercise fields or features which would cause mixes to be ignored.
- `is_valid_to_decode`: True when an IAMF-compliant decoder could decode at
least one mix of the associated IA Sequence ("should-pass"). False when all
mixes are non-conformant and may fail to be decoded ("should-fail"). The
IAMF spec does not specify what happens when requirements are violated; a
robust system may still attempt to process and create output for
"should-fail" tests.
- `human_readable_descriptions`: A short description of what is being tested
and why.
- `mp4_fixed_timestamp`: The timestamp within the MP4 file. Can be safely
ignored.
- `primary_tested_spec_sections`: A list of the main sections being tested. In
the form `X.Y.Z/class_or_field_name` to represent the `class_or_field_name`
in the IAMF specification Section `X.Y.Z` is being tested.
- `base_test`: The recommended textproto to diff against.
- Other fields refer to the OBUs and data within the test vector.
# Input WAV files
Test vectors may have multiple substreams with several input .wav files. These
.wav files may be shared with other test vectors. The .textproto file has a
section which input wav file associated with each substream.
## Summary
Title | Summary | Channels | Sample Rate | Format | Duration
---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | -------- | ----------- | --------- | --------
`audiolab-acoustic-guitar_2OA_470_ALLRAD_0.5s` | Short clip of a guitar playing using 7.1.4. | 12 | 48kHz | pcm_s16le | 500ms
`audiolab-acoustic-guitar_2OA_470_ALLRAD_5s.wav` | Short clip of a guitar playing using 7.1.4. | 12 | 48kHz | pcm_s16le | 5s
`audiolab-acoustic-guitar_2OA_470_ALLRAD_concat.wav` | Clip of a guitar playing which which is repeated once using 7.1.4. | 12 | 48kHz | pcm_s16le | 22.77s
`dialog_clip_stereo.wav` | English dialog. | 2 | 48kHz | pcm_s16le | 5s
`Mechanism_5s_32bit.wav` | Mechanical noises using 7.1.4. | 12 | 48kHz | pcm_s32le | 5s
`Mechanism_5s.wav` | Mechanical noises using 7.1.4. | 12 | 48kHz | pcm_s16le | 5s
`Mechanism_5s_44100hz_s16le.wav` | Mechanical noises using 7.1.4. | 12 | 44.1k | pcm_s16le | 5s
`sample1_48kHz_stereo.wav` | Sawtooth wave. | 2 | 48kHz | pcm_s16le | 5s
`sawtooth_10000_foa_48kHz.wav` | Sawtooth wave using first-order ambisonics. | 4 | 48kHz | pcm_s16le | 500ms
`sawtooth_10000_stereo_44100hz_s16le.wav` | Sawtooth wave. | 2 | 44.1kHz | pcm_s16le | 500ms
`sawtooth_10000_stereo_48kHz_s24le.wav` | Sawtooth wave. | 2 | 48kHz | pcm_s24le | 500ms
`sawtooth_10000_stereo_48kHz.wav` | Sawtooth wave. | 2 | 48kHz | pcm_s16le | 500ms
`sawtooth_100_stereo.wav` | Sawtooth wave. | 2 | 16kHz | pcm_s16le | 500ms
`sawtooth_8000_toa_48kHz.wav` | Sawtooth wave using third-order ambisonics. | 16 | 48kHz | pcm_s16le | 500ms
`sine_1000_16kHz_512ms.wav` | Sine wave. | 2 | 16kHz | pcm_s16le | 512ms
`sine_1000_16khz_512ms_s32le.wav` | Sine wave. | 1 | 16kHz | pcm_s32le | 512ms
`sine_1000_48kHz_512ms.wav` | Sine wave. | 2 | 48kHz | pcm_s16le | 512ms
`sine_1000_48kHz.wav` | Sine wave. | 2 | 48kHz | pcm_s16le | 500ms
`sine_1000_4oa_48kHz.wav` | Sine wave using fourth-order ambisonics. | 25 | 48kHz | pcm_s16le | 5000ms
`sine_1500_stereo_48khz_-15dBFS.wav` | Sine wave using at -15dBFS. | 2 | 48kHz | pcm_s16le | 5000ms
`stereo_8_samples_48khz_s16le.wav` | Tiny test file. The first channel encodes 1, 2, ... 8. The second channel encodes 65535, 65534, ... 65528. | 2 | 48kHz | pcm_s16le | 8 samples
`stereo_8_samples_48khz_s24le.wav` | Tiny test file. The first channel encodes 1, 2, ... 8. The second channel encodes 16777216, 16777215, ... 16777209. | 2 | 48kHz | pcm_s24le | 8 samples
`Transport_TOA_5s.wav` | Short clip of vehicles driving by using third-order ambisonics. | 16 | 48kHz | pcm_s16le | 5s
`Transport_9.1.6_5s.wav` | Short clip of vehicles driving by using 9.1.6. | 16 | 48kHz | pcm_s16le | 5s
# Output WAV files
Output wav files are based on the
[layout](https://aomediacodec.github.io/iamf/#syntax-layout) in the mix
presentation. Typically the ordering of channels is based on the related
[ITU-2051-3](https://www.itu.int/rec/R-REC-BS.2051) layout.
Mix Presentation Layout | Channel Order Convention | Channel Order
----------------------- | ------------------------ | -------------
Sound System A (0+2+0) | ITU-2051-3 | L, R
Sound System B (0+5+0) | ITU-2051-3 | L, R, C, LFE, Ls, Rs
Sound System C (2+5+0) | ITU-2051-3 | L, R, C, LFE, Ls, Rs, Ltf, Rtf
Sound System D (4+5+0) | ITU-2051-3 | L, R, C, LFE, Ls, Rs, Ltf, Rtf, Ltr, Rtr
Sound System E (4+5+1) | ITU-2051-3 | L, R, C, LFE, Ls, Rs, Ltf, Rtf, Ltr, Rtr, Cbf
Sound System F (3+7+0) | ITU-2051-3 | C, L, R, LH, RH, LS, LB, RB, CH, LFE1, LFE2
Sound System G (4+9+0) | ITU-2051-3 | L, R, C, LFE, Lss, Rss, Lrs, Rrs, Ltf, Rtf, Ltb, Rtb, Lsc, Rsc
Sound System H (9+10+3) | ITU-2051-3 | FL, FR, FC, LFE1, BL, BR, FLc, FRc, BC, LFE2, SiL, SiR, TpFL, TpFR, TpFC, TpC, TpBL, TpBR, TpSiL, TpSiR, TpBC, BtFC, BtFL, BtFR
Sound System I (0+7+0) | ITU_2051-3 | L, R, C, LFE, Lss, Rss, Lrs, Rrs
Sound System J (4+7+0) | ITU_2051-3 | L, R, C, LFE, Lss, Rss, Lrs, Rrs, Ltf, Rtf, Ltb, Rtb
Sound System 10 | IAMF | L7, R7, C, LFE, Lss7, Rss7, Lrs7, Rrs7, Ltf2, Rtf2
Sound System 11 | IAMF | L3, R3, C, LFE, Ltf3, Rtf3,
Sound System 12 | IAMF | C
Sound System 13 | IAMF | FL, FR, FC, LFE, BL, BR, FLc, FRc, SiL, SiR, TpFL, TpFR, TpBL, TpBR, TpSiL, TpSiR
Binaural Layout | IAMF | L2, R2