Skip to content

Commit 492d692

Browse files
Googlerjwcullen
authored andcommitted
Add Advanced-1 Profile tests with Channel-based input + 2 Dual Polar Objects.
test_000907, test_000908, test_000909, test_000910, test_000911, test_000913 PiperOrigin-RevId: 844845080
1 parent 927600a commit 492d692

File tree

7 files changed

+1599
-0
lines changed

7 files changed

+1599
-0
lines changed
Lines changed: 266 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,266 @@
1+
# Copyright (c) 2025, Alliance for Open Media. All rights reserved
2+
#
3+
# This source code is subject to the terms of the BSD 3-Clause Clear License
4+
# and the Alliance for Open Media Patent License 1.0. If the BSD 3-Clause Clear
5+
# License was not distributed with this source code in the LICENSE file, you
6+
# can obtain it at www.aomedia.org/license/software-license/bsd-3-c-c. If the
7+
# Alliance for Open Media Patent License 1.0 was not distributed with this
8+
# source code in the PATENTS file, you can obtain it at
9+
# www.aomedia.org/license/patent.
10+
11+
# proto-file: iamf/cli/proto/user_metadata.proto
12+
# proto-message: UserMetadata
13+
14+
test_vector_metadata {
15+
human_readable_description: "An Advanced-1 Profile Stream using a 7.1.2 Layout and 2 Dual Polar Objects."
16+
file_name_prefix: "test_000907"
17+
is_valid: true
18+
is_valid_to_decode: true
19+
validate_user_loudness: false
20+
mp4_fixed_timestamp: "2025-12-12 00:00:00"
21+
test_repository_tags: [
22+
"github/aomediacodec/libiamf/main"
23+
]
24+
primary_tested_spec_sections: [
25+
"3.6.4/objects_config",
26+
"3.7.2.2/rendering_config_ with dual_polar_param_definition"
27+
]
28+
base_test: "test_000900"
29+
partition_mix_gain_parameter_blocks: false
30+
}
31+
32+
encoder_control_metadata {
33+
add_build_information_tag: false
34+
output_rendered_file_format: OUTPUT_FORMAT_WAV_BIT_DEPTH_AUTOMATIC
35+
}
36+
37+
ia_sequence_header_metadata {
38+
primary_profile: PROFILE_VERSION_ADVANCED1
39+
additional_profile: PROFILE_VERSION_ADVANCED1
40+
}
41+
42+
codec_config_metadata {
43+
codec_config_id: 200
44+
codec_config {
45+
codec_id: CODEC_ID_LPCM
46+
num_samples_per_frame: 1024
47+
audio_roll_distance: 0
48+
decoder_config_lpcm {
49+
sample_format_flags: LPCM_LITTLE_ENDIAN
50+
sample_size: 16
51+
sample_rate: 48000
52+
}
53+
}
54+
}
55+
56+
audio_element_metadata {
57+
audio_element_id: 300
58+
audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED
59+
reserved: 0
60+
codec_config_id: 200
61+
audio_substream_ids: [0, 1, 2, 3, 4, 5]
62+
scalable_channel_layout_config {
63+
reserved: 0
64+
channel_audio_layer_configs: [
65+
{
66+
loudspeaker_layout: LOUDSPEAKER_LAYOUT_7_1_2_CH
67+
output_gain_is_present_flag: 0
68+
recon_gain_is_present_flag: 0
69+
reserved_a: 0
70+
substream_count: 6
71+
coupled_substream_count: 4
72+
}
73+
]
74+
}
75+
}
76+
77+
audio_element_metadata {
78+
audio_element_id: 301
79+
audio_element_type: AUDIO_ELEMENT_OBJECT_BASED
80+
reserved: 0
81+
codec_config_id: 200
82+
audio_substream_ids: [100]
83+
objects_config {
84+
num_objects: 2
85+
}
86+
}
87+
88+
audio_element_metadata {
89+
audio_element_id: 302
90+
audio_element_type: AUDIO_ELEMENT_OBJECT_BASED
91+
reserved: 0
92+
codec_config_id: 200
93+
audio_substream_ids: [101]
94+
objects_config {
95+
num_objects: 2
96+
}
97+
}
98+
99+
mix_presentation_metadata {
100+
mix_presentation_id: 42
101+
annotations_language: ["en-us"]
102+
localized_presentation_annotations: ["test_mix_pres"]
103+
sub_mixes {
104+
audio_elements: [
105+
{
106+
audio_element_id: 300
107+
localized_element_annotations: ["test_sub_mix_0_audio_element_0"]
108+
rendering_config {
109+
headphones_rendering_mode: HEADPHONES_RENDERING_MODE_BINAURAL
110+
}
111+
element_mix_gain {
112+
param_definition {
113+
parameter_id: 100
114+
parameter_rate: 48000
115+
param_definition_mode: 1
116+
reserved: 0
117+
}
118+
default_mix_gain: -768 # -3 dB.
119+
}
120+
},
121+
{
122+
audio_element_id: 301
123+
localized_element_annotations: ["test_sub_mix_0_audio_element_1"]
124+
rendering_config {
125+
headphones_rendering_mode: HEADPHONES_RENDERING_MODE_BINAURAL
126+
rendering_config_param_definitions {
127+
param_definition_type: PARAM_DEFINITION_TYPE_DUAL_POLAR
128+
dual_polar_param_definition {
129+
param_definition {
130+
parameter_id: 1
131+
parameter_rate: 48000
132+
param_definition_mode: 1
133+
}
134+
default_first_azimuth: 1
135+
default_first_elevation: 2
136+
default_first_distance: 3
137+
default_second_azimuth: 4
138+
default_second_elevation: 5
139+
default_second_distance: 6
140+
}
141+
}
142+
}
143+
element_mix_gain {
144+
param_definition {
145+
parameter_id: 100
146+
parameter_rate: 48000
147+
param_definition_mode: 1
148+
reserved: 0
149+
}
150+
default_mix_gain: -768 # -3 dB.
151+
}
152+
},
153+
{
154+
audio_element_id: 302
155+
localized_element_annotations: ["test_sub_mix_0_audio_element_2"]
156+
rendering_config {
157+
headphones_rendering_mode: HEADPHONES_RENDERING_MODE_BINAURAL
158+
rendering_config_param_definitions {
159+
param_definition_type: PARAM_DEFINITION_TYPE_DUAL_POLAR
160+
dual_polar_param_definition {
161+
param_definition {
162+
parameter_id: 1
163+
parameter_rate: 48000
164+
param_definition_mode: 1
165+
}
166+
default_first_azimuth: 1
167+
default_first_elevation: 2
168+
default_first_distance: 3
169+
default_second_azimuth: 4
170+
default_second_elevation: 5
171+
default_second_distance: 6
172+
}
173+
}
174+
}
175+
element_mix_gain {
176+
param_definition {
177+
parameter_id: 100
178+
parameter_rate: 48000
179+
param_definition_mode: 1
180+
reserved: 0
181+
}
182+
default_mix_gain: -768 # -3 dB.
183+
}
184+
}
185+
]
186+
output_mix_gain {
187+
param_definition {
188+
parameter_id: 101
189+
parameter_rate: 48000
190+
param_definition_mode: 1
191+
reserved: 0
192+
}
193+
default_mix_gain: 0 # 0 dB.
194+
}
195+
layouts {
196+
loudness_layout {
197+
layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
198+
ss_layout {
199+
sound_system: SOUND_SYSTEM_A_0_2_0
200+
reserved: 0
201+
}
202+
}
203+
loudness {
204+
info_type_bit_masks: []
205+
}
206+
}
207+
layouts {
208+
loudness_layout {
209+
layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
210+
ss_layout {
211+
sound_system: SOUND_SYSTEM_10_2_7_0
212+
reserved: 0
213+
}
214+
}
215+
loudness {
216+
info_type_bit_masks: []
217+
}
218+
}
219+
}
220+
221+
}
222+
223+
audio_frame_metadata {
224+
samples_to_trim_at_end_includes_padding: false
225+
samples_to_trim_at_start_includes_codec_delay: false
226+
wav_filename: "sine_1000_4oa_48khz.wav"
227+
audio_element_id: 300
228+
channel_metadatas: [
229+
{ channel_id: 0 channel_label: CHANNEL_LABEL_L_7 },
230+
{ channel_id: 1 channel_label: CHANNEL_LABEL_R_7 },
231+
{ channel_id: 2 channel_label: CHANNEL_LABEL_CENTRE },
232+
{ channel_id: 3 channel_label: CHANNEL_LABEL_LFE },
233+
{ channel_id: 4 channel_label: CHANNEL_LABEL_LSS_7 },
234+
{ channel_id: 5 channel_label: CHANNEL_LABEL_RSS_7 },
235+
{ channel_id: 6 channel_label: CHANNEL_LABEL_LRS_7 },
236+
{ channel_id: 7 channel_label: CHANNEL_LABEL_RRS_7 },
237+
{ channel_id: 8 channel_label: CHANNEL_LABEL_LTF_2 },
238+
{ channel_id: 9 channel_label: CHANNEL_LABEL_RTF_2 }
239+
]
240+
}
241+
242+
audio_frame_metadata {
243+
samples_to_trim_at_end_includes_padding: false
244+
samples_to_trim_at_start_includes_codec_delay: false
245+
wav_filename: "sine_1000_4oa_48khz.wav"
246+
audio_element_id: 301
247+
channel_metadatas: [
248+
{ channel_id: 0 channel_label: CHANNEL_LABEL_OBJECT_CHANNEL0 },
249+
{ channel_id: 1 channel_label: CHANNEL_LABEL_OBJECT_CHANNEL1 }
250+
]
251+
}
252+
253+
audio_frame_metadata {
254+
samples_to_trim_at_end_includes_padding: false
255+
samples_to_trim_at_start_includes_codec_delay: false
256+
wav_filename: "sine_1000_4oa_48khz.wav"
257+
audio_element_id: 302
258+
channel_metadatas: [
259+
{ channel_id: 0 channel_label: CHANNEL_LABEL_OBJECT_CHANNEL0 },
260+
{ channel_id: 1 channel_label: CHANNEL_LABEL_OBJECT_CHANNEL1 }
261+
]
262+
}
263+
264+
temporal_delimiter_metadata {
265+
enable_temporal_delimiters: false
266+
}

0 commit comments

Comments
 (0)