• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2024, 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
14test_vector_metadata {
15  human_readable_description:
16    "An example using the maximum number of channels for Base-Enhanced "
17    "profile. It has three audio elements {third-order mono ambisonics, Top-6Ch, "
18    "LFE} and a 9.1.6 output layout."
19  file_name_prefix: "test_000701"
20  is_valid: true
21  is_valid_to_decode: true
22  validate_user_loudness: true
23  mp4_fixed_timestamp: "2024-08-14 00:00:00"
24  test_repository_tags: ["github/aomediacodec/libiamf/main"]
25  primary_tested_spec_sections: [
26    "3.6.2/loudspeaker_layout == Expanded",
27    "3.6.2/expanded_loudspeaker_layout == Top-6ch",
28    "3.6.2/expanded_loudspeaker_layout == LFE",
29    "3.6.3/ambisonics_mono_config",
30    "3.7.3/sound_system == 9.1.6",
31    "3.7.4/default_mix_gain",
32    "4.2/Base-Enhanced Profile",
33    "8.5.1/Loudness Information"
34  ]
35  base_test: "test_000616"
36}
37
38encoder_control_metadata {
39  add_build_information_tag: false
40}
41
42ia_sequence_header_metadata {
43  primary_profile: PROFILE_VERSION_BASE_ENHANCED
44  additional_profile: PROFILE_VERSION_BASE_ENHANCED
45}
46
47codec_config_metadata {
48  codec_config_id: 200
49  codec_config {
50    codec_id: CODEC_ID_LPCM
51    num_samples_per_frame: 1024
52    audio_roll_distance: 0
53    decoder_config_lpcm {
54      sample_format_flags: LPCM_LITTLE_ENDIAN
55      sample_size: 16
56      sample_rate: 48000
57    }
58  }
59}
60
61audio_element_metadata: [
62  {
63    audio_element_id: 300
64    audio_element_type: AUDIO_ELEMENT_SCENE_BASED
65    reserved: 0
66    codec_config_id: 200
67    num_substreams: 16
68    audio_substream_ids: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
69    num_parameters: 0
70    ambisonics_config {
71      ambisonics_mode: AMBISONICS_MODE_MONO
72      ambisonics_mono_config {
73        output_channel_count: 16
74        substream_count: 16
75        channel_mapping: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
76      }
77    }
78  },
79  {
80    audio_element_id: 301
81    audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED
82    reserved: 0
83    codec_config_id: 200
84    num_substreams: 3
85    audio_substream_ids: [16, 17, 18]
86    num_parameters: 0
87    scalable_channel_layout_config {
88      num_layers: 1
89      reserved: 0
90      channel_audio_layer_configs: [
91        {
92          loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED
93          output_gain_is_present_flag: 0
94          recon_gain_is_present_flag: 0
95          reserved_a: 0
96          substream_count: 3
97          coupled_substream_count: 3
98          expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_TOP_6_CH
99        }
100      ]
101    }
102  },
103  {
104    audio_element_id: 302
105    audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED
106    reserved: 0
107    codec_config_id: 200
108    num_substreams: 1
109    audio_substream_ids: [19]
110    num_parameters: 0
111    scalable_channel_layout_config {
112      num_layers: 1
113      reserved: 0
114      channel_audio_layer_configs: [
115        {
116          loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED
117          output_gain_is_present_flag: 0
118          recon_gain_is_present_flag: 0
119          reserved_a: 0
120          substream_count: 1
121          coupled_substream_count: 0
122          expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_LFE
123        }
124      ]
125    }
126  }
127]
128
129mix_presentation_metadata {
130  mix_presentation_id: 42
131  count_label: 1
132  annotations_language: ["en-us"]
133  localized_presentation_annotations: ["test_mix_pres"]
134  num_sub_mixes: 1
135  sub_mixes {
136    num_audio_elements: 3
137    audio_elements: [
138      {
139        audio_element_id: 300
140        localized_element_annotations: ["test_sub_mix_0_audio_element_0"]
141        rendering_config {
142          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
143        }
144        element_mix_gain {
145          param_definition {
146            parameter_id: 999  # Non-existent; default will be used
147            parameter_rate: 48000
148            param_definition_mode: 1
149            reserved: 0
150          }
151          default_mix_gain: -768
152        }
153      },
154      {
155        audio_element_id: 301
156        localized_element_annotations: ["test_sub_mix_0_audio_element_1"]
157        rendering_config {
158          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
159        }
160        element_mix_gain {
161          param_definition {
162            parameter_id: 998  # Non-existent; default will be used
163            parameter_rate: 48000
164            param_definition_mode: 1
165            reserved: 0
166          }
167          default_mix_gain: -768
168        }
169      },
170      {
171        audio_element_id: 302
172        localized_element_annotations: ["test_sub_mix_0_audio_element_2"]
173        rendering_config {
174          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
175        }
176        element_mix_gain {
177          param_definition {
178            parameter_id: 998  # Non-existent; default will be used
179            parameter_rate: 48000
180            param_definition_mode: 1
181            reserved: 0
182          }
183          default_mix_gain: -768
184        }
185      }
186    ]
187    output_mix_gain {
188      param_definition {
189        parameter_id: 997  # Non-existent; default will be used
190        parameter_rate: 48000
191        param_definition_mode: 1
192        reserved: 0
193      }
194      default_mix_gain: 0
195    }
196    num_layouts: 2
197    layouts {
198      loudness_layout {
199        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
200        ss_layout {
201          sound_system: SOUND_SYSTEM_A_0_2_0
202          reserved: 0
203        }
204      }
205      loudness {
206        info_type_bit_masks: []
207        integrated_loudness: -3870
208        digital_peak: -246
209      }
210    }
211    layouts {
212      loudness_layout {
213        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
214        ss_layout {
215          sound_system: SOUND_SYSTEM_13_6_9_0
216          reserved: 0
217        }
218      }
219      loudness {
220        info_type_bit_masks: []
221        integrated_loudness: -3965
222        digital_peak: -1435
223      }
224    }
225  }
226}
227
228audio_frame_metadata: [
229  {
230    wav_filename: "sine_1000_4oa_48khz.wav"
231    samples_to_trim_at_end: 640
232    samples_to_trim_at_start: 0
233    audio_element_id: 300
234    channel_metadatas: [
235      { channel_id: 0 channel_label: CHANNEL_LABEL_A_0 },
236      { channel_id: 1 channel_label: CHANNEL_LABEL_A_1 },
237      { channel_id: 2 channel_label: CHANNEL_LABEL_A_2 },
238      { channel_id: 3 channel_label: CHANNEL_LABEL_A_3 },
239      { channel_id: 4 channel_label: CHANNEL_LABEL_A_4 },
240      { channel_id: 5 channel_label: CHANNEL_LABEL_A_5 },
241      { channel_id: 6 channel_label: CHANNEL_LABEL_A_6 },
242      { channel_id: 7 channel_label: CHANNEL_LABEL_A_7 },
243      { channel_id: 8 channel_label: CHANNEL_LABEL_A_8 },
244      { channel_id: 9 channel_label: CHANNEL_LABEL_A_9 },
245      { channel_id: 10 channel_label: CHANNEL_LABEL_A_10 },
246      { channel_id: 11 channel_label: CHANNEL_LABEL_A_11 },
247      { channel_id: 12 channel_label: CHANNEL_LABEL_A_12 },
248      { channel_id: 13 channel_label: CHANNEL_LABEL_A_13 },
249      { channel_id: 14 channel_label: CHANNEL_LABEL_A_14 },
250      { channel_id: 15 channel_label: CHANNEL_LABEL_A_15 }
251    ]
252  },
253  {
254    wav_filename: "Transport_9.1.6_5s.wav"
255    samples_to_trim_at_end: 640
256    samples_to_trim_at_start: 0
257    audio_element_id: 301
258    channel_metadatas: [
259      { channel_id: 10 channel_label: CHANNEL_LABEL_TP_FL },
260      { channel_id: 11 channel_label: CHANNEL_LABEL_TP_FR },
261      { channel_id: 12 channel_label: CHANNEL_LABEL_TP_BL },
262      { channel_id: 13 channel_label: CHANNEL_LABEL_TP_BR },
263      { channel_id: 14 channel_label: CHANNEL_LABEL_TP_SI_L },
264      { channel_id: 15 channel_label: CHANNEL_LABEL_TP_SI_R }
265    ]
266  },
267  {
268    wav_filename: "Mechanism_5s.wav"
269    samples_to_trim_at_end: 640
270    samples_to_trim_at_start: 0
271    audio_element_id: 302
272    channel_metadatas: [
273      { channel_id: 3 channel_label: CHANNEL_LABEL_LFE }
274    ]
275  }
276]
277
278temporal_delimiter_metadata {
279  enable_temporal_delimiters: false
280}
281