Skip to content

Commit 177337c

Browse files
jwcullentdaede
authored andcommitted
Add "Test Vector Set 6" (permutations of expanded layouts).
- Introduces a variety two audio element tests. - The Audio Element with ID=300 is based on one of {9.1.6, 1OA, 2OA, 3OA, 4OA, 7.1.4, 5.1.4}. - The Audio Element with ID=301 is based on one of the `expanded_loudspeaker_layout`s. - Output layouts always include stereo and often use an additional layout on one of {mono, 3.1.2, 5.1, 5.1.2, 5.1.4, 7.1, 7.1.2, 7.1.4, 9.1.6}. - Most other properties are the common within this test set. - Based on AOMediaCodec/iamf-tools@4630a45c8.
1 parent 551f307 commit 177337c

209 files changed

Lines changed: 7533 additions & 8 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

proto/audio_element.proto

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,28 @@ enum LoudspeakerLayout {
5050
LOUDSPEAKER_LAYOUT_7_1_4_CH = 8;
5151
LOUDSPEAKER_LAYOUT_3_1_2_CH = 9;
5252
LOUDSPEAKER_LAYOUT_BINAURAL = 10;
53-
LOUDSPEAKER_LAYOUT_RESERVED_BEGIN = 11;
54-
LOUDSPEAKER_LAYOUT_RESERVED_END = 16;
53+
LOUDSPEAKER_LAYOUT_RESERVED_10 = 11;
54+
LOUDSPEAKER_LAYOUT_RESERVED_14 = 15;
55+
LOUDSPEAKER_LAYOUT_EXPANDED = 16;
56+
}
57+
58+
enum ExpandedLoudspeakerLayout {
59+
EXPANDED_LOUDSPEAKER_LAYOUT_INVALID = 0;
60+
EXPANDED_LOUDSPEAKER_LAYOUT_LFE = 1;
61+
EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_S = 2;
62+
EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_SS = 3;
63+
EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_RS = 4;
64+
EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_TF = 5;
65+
EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_TB = 6;
66+
EXPANDED_LOUDSPEAKER_LAYOUT_TOP_4_CH = 7;
67+
EXPANDED_LOUDSPEAKER_LAYOUT_3_0_CH = 8;
68+
EXPANDED_LOUDSPEAKER_LAYOUT_9_1_6_CH = 9;
69+
EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_F = 10;
70+
EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_SI = 11;
71+
EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_TP_SI = 12;
72+
EXPANDED_LOUDSPEAKER_LAYOUT_TOP_6_CH = 13;
73+
EXPANDED_LOUDSPEAKER_LAYOUT_RESERVED_13 = 14;
74+
EXPANDED_LOUDSPEAKER_LAYOUT_RESERVED_255 = 256;
5575
}
5676

5777
message ChannelAudioLayerConfig {
@@ -65,6 +85,7 @@ message ChannelAudioLayerConfig {
6585
optional uint32 output_gain_flag = 7;
6686
optional uint32 reserved_b = 8;
6787
optional int32 output_gain = 9;
88+
optional ExpandedLoudspeakerLayout expanded_loudspeaker_layout = 11;
6889
}
6990

7091
message ScalableChannelLayoutConfig {

tests/README.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,3 +66,29 @@ Title | Summary
6666
`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
6767
`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
6868
`Transport_TOA_5s.wav` | Short clip of vehicles driving by using third-order ambisonics. | 16 | 48kHz | pcm_s16le | 5s
69+
`Transport_9.1.6_5s.wav` | Short clip of vehicles driving by using 9.1.6. | 16 | 48kHz | pcm_s16le | 5s
70+
71+
# Output WAV files
72+
73+
Output wav files are based on the
74+
[layout](https://aomediacodec.github.io/iamf/#syntax-layout) in the mix
75+
presentation. Typically the ordering of channels is based on the related
76+
[ITU-2051-3](https://www.itu.int/rec/R-REC-BS.2051) layout.
77+
78+
Mix Presentation Layout | Channel Order Convention | Channel Order
79+
----------------------- | ------------------------ | -------------
80+
Sound System A (0+2+0) | ITU-2051-3 | L, R
81+
Sound System B (0+5+0) | ITU-2051-3 | L, R, C, LFE, Ls, Rs
82+
Sound System C (2+5+0) | ITU-2051-3 | L, R, C, LFE, Ls, Rs, Ltf, Rtf
83+
Sound System D (4+5+0) | ITU-2051-3 | L, R, C, LFE, Ls, Rs, Ltf, Rtf, Ltr, Rtr
84+
Sound System E (4+5+1) | ITU-2051-3 | L, R, C, LFE, Ls, Rs, Ltf, Rtf, Ltr, Rtr, Cbf
85+
Sound System F (3+7+0) | ITU-2051-3 | C, L, R, LH, RH, LS, LB, RB, CH, LFE1, LFE2
86+
Sound System G (4+9+0) | ITU-2051-3 | L, R, C, LFE, Lss, Rss, Lrs, Rrs, Ltf, Rtf, Ltb, Rtb, Lsc, Rsc
87+
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
88+
Sound System I (0+7+0) | ITU_2051-3 | L, R, C, LFE, Lss, Rss, Lrs, Rrs
89+
Sound System J (4+7+0) | ITU_2051-3 | L, R, C, LFE, Lss, Rss, Lrs, Rrs, Ltf, Rtf, Ltb, Rtb
90+
Sound System 10 | IAMF | L7, R7, C, LFE, Lss7, Rss7, Lrs7, Rrs7, Ltf2, Rtf2
91+
Sound System 11 | IAMF | L3, R3, C, LFE, Ltf3, Rtf3,
92+
Sound System 12 | IAMF | C
93+
Sound System 13 | IAMF | FL, FR, FC, LFE, BL, BR, FLc, FRc, SiL, SiR, TpFL, TpFR, TpBL, TpBR, TpSiL, TpSiR
94+
Binaural Layout | IAMF | L2, R2

tests/Transport_9.1.6_5s.wav

7.32 MB
Binary file not shown.

tests/coverage.csv

Lines changed: 31 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,28 @@
3636
"3.6.2","Scalable Channel Layout Config Syntax and Semantics","test_000059, test_000227, test_000228, test_000229, test_000230"
3737
"3.6.2","channel_audio_layer_config","test_000036, test_000049, test_000050, test_000051, test_000052, test_000053, test_000054, test_000055, test_000056, test_000061, test_000073, test_000080, test_000081, test_000089, test_000092, test_000095, test_000098, test_000224, test_000225, test_000226"
3838
"3.6.2","coupled_substream_count","test_000123, test_000132"
39+
"3.6.2","expanded_loudspeaker_layout == 3.0ch","test_000600, test_000614, test_000624"
40+
"3.6.2","expanded_loudspeaker_layout == 9.1.6","test_000600, test_000601, test_000602, test_000603, test_000604, test_000605, test_000606, test_000607, test_000608, test_000609"
41+
"3.6.2","expanded_loudspeaker_layout == LFE","test_000603, test_000617, test_000626, test_000632"
42+
"3.6.2","expanded_loudspeaker_layout == Stereo-F","test_000609, test_000611, test_000623"
43+
"3.6.2","expanded_loudspeaker_layout == Stereo-RS","test_000606, test_000620, test_000628"
44+
"3.6.2","expanded_loudspeaker_layout == Stereo-S","test_000604, test_000618, test_000631"
45+
"3.6.2","expanded_loudspeaker_layout == Stereo-SS","test_000605, test_000619, test_000627"
46+
"3.6.2","expanded_loudspeaker_layout == Stereo-Si","test_000612"
47+
"3.6.2","expanded_loudspeaker_layout == Stereo-TB","test_000608, test_000622, test_000630"
48+
"3.6.2","expanded_loudspeaker_layout == Stereo-TF","test_000607, test_000621, test_000629"
49+
"3.6.2","expanded_loudspeaker_layout == Stereo-TpSi","test_000613"
50+
"3.6.2","expanded_loudspeaker_layout == Top-4ch","test_000601, test_000615, test_000625"
51+
"3.6.2","expanded_loudspeaker_layout == Top-6ch","test_000602, test_000610, test_000616, test_000633"
3952
"3.6.2","loudspeaker_layout","test_000122, test_000129"
4053
"3.6.2","loudspeaker_layout == 3.1.2","test_000050, test_000051, test_000089, test_000095, test_000202, test_000214, test_000224, test_000225, test_000227, test_000228, test_000401, test_000404"
4154
"3.6.2","loudspeaker_layout == 5.1","test_000036, test_000049, test_000054, test_000073, test_000080, test_000081, test_000087, test_000092, test_000098, test_000118, test_000203, test_000215, test_000230, test_000402, test_000405"
4255
"3.6.2","loudspeaker_layout == 5.1.2","test_000054, test_000069, test_000080, test_000081, test_000086, test_000204, test_000216, test_000224, test_000225, test_000226, test_000227, test_000228, test_000229"
43-
"3.6.2","loudspeaker_layout == 5.1.4","test_000054, test_000080, test_000081, test_000205, test_000217"
56+
"3.6.2","loudspeaker_layout == 5.1.4","test_000054, test_000080, test_000081, test_000205, test_000217, test_000631"
4457
"3.6.2","loudspeaker_layout == 7.1","test_000053, test_000206, test_000218"
4558
"3.6.2","loudspeaker_layout == 7.1.2","test_000050, test_000051, test_000089, test_000095, test_000207, test_000219"
46-
"3.6.2","loudspeaker_layout == 7.1.4","test_000050, test_000070, test_000089, test_000095, test_000208, test_000220, test_000221, test_000222, test_000223, test_000225, test_000226, test_000228, test_000229"
59+
"3.6.2","loudspeaker_layout == 7.1.4","test_000050, test_000070, test_000089, test_000095, test_000208, test_000220, test_000221, test_000222, test_000223, test_000225, test_000226, test_000228, test_000229, test_000624, test_000625, test_000626, test_000627, test_000628, test_000629, test_000630"
60+
"3.6.2","loudspeaker_layout == Expanded","test_000600, test_000601, test_000602, test_000603, test_000604, test_000605, test_000606, test_000607, test_000608, test_000609, test_000610, test_000611, test_000612, test_000613, test_000614, test_000615, test_000616, test_000617, test_000618, test_000619, test_000620, test_000621, test_000622, test_000623, test_000624, test_000625, test_000626, test_000627, test_000628, test_000629, test_000630, test_000631, test_000632, test_000633"
4761
"3.6.2","loudspeaker_layout == Mono","test_000097, test_000200, test_000212, test_000230"
4862
"3.6.2","loudspeaker_layout == Stereo","test_000003, test_000036, test_000049, test_000050, test_000051, test_000053, test_000054, test_000073, test_000080, test_000081, test_000087, test_000089, test_000092, test_000095, test_000098, test_000118, test_000127, test_000128, test_000201, test_000213, test_000230, test_000300, test_000301, test_000302, test_000303, test_000304, test_000305, test_000400, test_000401, test_000402, test_000403, test_000404, test_000405"
4963
"3.6.2","num_layers","test_000003, test_000036, test_000049, test_000050, test_000051, test_000053, test_000054, test_000073, test_000080, test_000081, test_000089, test_000092, test_000095, test_000098"
@@ -52,8 +66,8 @@
5266
"3.6.2","output_gain_is_present_flag","test_000224, test_000225, test_000226, test_000227, test_000228, test_000229, test_000230"
5367
"3.6.2","subtream_count","test_000123, test_000132"
5468
"3.6.2.1","Channel Layout Generation Rule","test_000224, test_000225, test_000226, test_000227, test_000228, test_000229, test_000230"
55-
"3.6.3","ambisonics_mono_config","test_000038, test_000039, test_000040, test_000045, test_000046, test_000065, test_000066, test_000068, test_000074, test_000075, test_000083, test_000086, test_000093, test_000094, test_000096, test_000100, test_000101, test_000102, test_000103, test_000108, test_000109, test_000110, test_000111, test_000127, test_000128, test_000300, test_000301, test_000302, test_000303, test_000304, test_000305, test_000500"
56-
"3.6.3","ambisonics_projection_config","test_000042, test_000043, test_000044, test_000048, test_000104, test_000105, test_000106, test_000107, test_000112, test_000113, test_000114, test_000115, test_000131"
69+
"3.6.3","ambisonics_mono_config","test_000038, test_000039, test_000040, test_000045, test_000046, test_000065, test_000066, test_000068, test_000074, test_000075, test_000083, test_000086, test_000093, test_000094, test_000096, test_000100, test_000101, test_000102, test_000103, test_000108, test_000109, test_000110, test_000111, test_000127, test_000128, test_000300, test_000301, test_000302, test_000303, test_000304, test_000305, test_000500, test_000610, test_000611, test_000614, test_000615, test_000616, test_000617, test_000618, test_000632, test_000633"
70+
"3.6.3","ambisonics_projection_config","test_000042, test_000043, test_000044, test_000048, test_000104, test_000105, test_000106, test_000107, test_000112, test_000113, test_000114, test_000115, test_000131, test_000612, test_000613, test_000619, test_000620, test_000621, test_000622, test_000623"
5771
"3.6.4","ambisonics_mode","test_000130"
5872
"3.6.4","coupled_substream_count","test_000123, test_000132"
5973
"3.6.4","subtream_count","test_000123, test_000132"
@@ -75,8 +89,18 @@
7589
"3.7.3","headphones_rendering_mode == 0","test_000038, test_000050, test_000093"
7690
"3.7.3","headphones_rendering_mode == 1","test_000083, test_000089, test_000095, test_000096"
7791
"3.7.3","rendering_config_extension_bytes","test_000067"
92+
"3.7.3","sound_system == 3.1.2","test_000602, test_000616"
93+
"3.7.3","sound_system == 5.1","test_000603, test_000617"
94+
"3.7.3","sound_system == 5.1.2","test_000604, test_000618"
95+
"3.7.3","sound_system == 5.1.4","test_000605, test_000619, test_000631"
96+
"3.7.3","sound_system == 7.1","test_000606, test_000620"
97+
"3.7.3","sound_system == 7.1.2","test_000607, test_000621"
98+
"3.7.3","sound_system == 7.1.4","test_000608, test_000622, test_000624, test_000625, test_000626, test_000627, test_000628, test_000629, test_000630, test_000632"
99+
"3.7.3","sound_system == 9.1.6","test_000609, test_000610, test_000611, test_000612, test_000613, test_000623, test_000633"
100+
"3.7.3","sound_system == Mono","test_000600, test_000614, test_000615"
101+
"3.7.3","sound_system == Stereo","test_000601"
78102
"3.7.4","Element Mix Config Syntax and Semantics","test_000071, test_000088"
79-
"3.7.4","default_mix_gain","test_000003, test_000064, test_000086, test_000087, test_000118, test_000127, test_000128, test_000300, test_000301, test_000302, test_000303, test_000304, test_000305, test_000400, test_000401, test_000402, test_000403, test_000404, test_000405"
103+
"3.7.4","default_mix_gain","test_000003, test_000064, test_000086, test_000087, test_000118, test_000127, test_000128, test_000300, test_000301, test_000302, test_000303, test_000304, test_000305, test_000400, test_000401, test_000402, test_000403, test_000404, test_000405, test_000600, test_000601, test_000602, test_000603, test_000604, test_000605, test_000606, test_000607, test_000608, test_000609, test_000610, test_000611, test_000612, test_000613, test_000614, test_000615, test_000616, test_000617, test_000618, test_000619, test_000620, test_000621, test_000622, test_000623, test_000624, test_000625, test_000626, test_000627, test_000628, test_000629, test_000630, test_000631, test_000632, test_000633"
80104
"3.7.5","Output Mix Config Syntax and Semantics","test_000071, test_000088"
81105
"3.7.6","Layout Syntax and Semantics","test_000069, test_000070"
82106
"3.7.6","layout_type","test_000126"
@@ -123,6 +147,7 @@
123147
"4","Reserved Temporal Unit OBU","test_000116"
124148
"4.1","Simple Profile","test_000003, test_000100, test_000119, test_000120, test_000122, test_000129, test_000130"
125149
"4.2","Base Profile","test_000058, test_000086, test_000087, test_000118, test_000128, test_000300, test_000301, test_000302, test_000303, test_000304, test_000305, test_000400, test_000401, test_000402, test_000403, test_000404, test_000405"
150+
"4.2","Base-Enhanced Profile","test_000600, test_000601, test_000602, test_000603, test_000604, test_000605, test_000606, test_000607, test_000608, test_000609, test_000610, test_000611, test_000612, test_000613, test_000614, test_000615, test_000616, test_000617, test_000618, test_000619, test_000620, test_000621, test_000622, test_000623, test_000624, test_000625, test_000626, test_000627, test_000628, test_000629, test_000630, test_000631, test_000632, test_000633"
126151
"4.2","Base-Enhannced Profile","test_000123, test_000132"
127152
"4.2","Simple Profile","test_000118, test_000123, test_000127, test_000132"
128153
"4.2","temporal_delimiter_obu","test_000006"
@@ -170,7 +195,7 @@
170195
"7.5.2","Limiter","test_000070, test_000088, test_000096, test_000101, test_000102, test_000103, test_000105, test_000106, test_000107, test_000109, test_000110, test_000111, test_000113, test_000114, test_000115, test_000205, test_000208, test_000209, test_000210, test_000211, test_000217, test_000220, test_000221, test_000222, test_000223"
171196
"7.6.1","Dynamic Down-mix Matrix","test_000224, test_000225, test_000226, test_000227, test_000228, test_000229, test_000230"
172197
"7.6.2","Static Down-mix Matrix","test_000211, test_000226"
173-
"8.5.1","Loudness Information","test_000086, test_000087, test_000118, test_000127, test_000128, test_000300, test_000301, test_000302, test_000303, test_000304, test_000305, test_000400, test_000401, test_000402, test_000403, test_000404, test_000405"
198+
"8.5.1","Loudness Information","test_000086, test_000087, test_000118, test_000127, test_000128, test_000300, test_000301, test_000302, test_000303, test_000304, test_000305, test_000400, test_000401, test_000402, test_000403, test_000404, test_000405, test_000600, test_000601, test_000602, test_000603, test_000604, test_000605, test_000606, test_000607, test_000608, test_000609, test_000610, test_000611, test_000612, test_000613, test_000614, test_000615, test_000616, test_000617, test_000618, test_000619, test_000620, test_000621, test_000622, test_000623, test_000624, test_000625, test_000626, test_000627, test_000628, test_000629, test_000630, test_000631, test_000632, test_000633"
174199
"9.1.2.1","Annex A2.1: Down-mix parameter and Loudness","test_000209, test_000210, test_000221, test_000222, test_000223, test_000225"
175200
"9.1.2.2","Annex A2.2: Down-mix Mechanism","test_000224, test_000225, test_000226, test_000227, test_000228, test_000229, test_000230"
176201
"9.1.2.3","Annex A2.3: Recon Gain Generation","test_000227, test_000228, test_000229, test_000230"

tests/test.wav

469 KB
Binary file not shown.
750 KB
Binary file not shown.

tests/test_000600.iamf

8.73 MB
Binary file not shown.

0 commit comments

Comments
 (0)