• 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 {fourth-order mono ambisonics, LFE, "
18    "Stereo} and a 7.1.4 output layout."
19  file_name_prefix: "test_000700"
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/loudspeaker_layout == Stereo",
28    "3.6.2/expanded_loudspeaker_layout == LFE",
29    "3.6.3/ambisonics_mono_config",
30    "3.7.3/sound_system == 7.1.4",
31    "3.7.4/default_mix_gain",
32    "4.2/Base-Enhanced Profile",
33    "8.5.1/Loudness Information"
34  ]
35  base_test: "test_000617"
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: 25
68    audio_substream_ids: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24]
69    num_parameters: 0
70    ambisonics_config {
71      ambisonics_mode: AMBISONICS_MODE_MONO
72      ambisonics_mono_config {
73        output_channel_count: 25
74        substream_count: 25
75        channel_mapping: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24]
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: 1
85    audio_substream_ids: [25]
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: 1
97          coupled_substream_count: 0
98          expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_LFE
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: [26]
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_STEREO
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: 1
122        }
123      ]
124    }
125  }
126]
127
128mix_presentation_metadata {
129  mix_presentation_id: 42
130  count_label: 1
131  annotations_language: ["en-us"]
132  localized_presentation_annotations: ["test_mix_pres"]
133  num_sub_mixes: 1
134  sub_mixes {
135    num_audio_elements: 3
136    audio_elements: [
137      {
138        audio_element_id: 300
139        localized_element_annotations: ["test_sub_mix_0_audio_element_0"]
140        rendering_config {
141          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
142        }
143        element_mix_gain {
144          param_definition {
145            parameter_id: 999  # Non-existent; default will be used
146            parameter_rate: 48000
147            param_definition_mode: 1
148            reserved: 0
149          }
150          default_mix_gain: -768
151        }
152      },
153      {
154        audio_element_id: 301
155        localized_element_annotations: ["test_sub_mix_0_audio_element_1"]
156        rendering_config {
157          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
158        }
159        element_mix_gain {
160          param_definition {
161            parameter_id: 998  # Non-existent; default will be used
162            parameter_rate: 48000
163            param_definition_mode: 1
164            reserved: 0
165          }
166          default_mix_gain: -768
167        }
168      },
169      {
170        audio_element_id: 302
171        localized_element_annotations: ["test_sub_mix_0_audio_element_2"]
172        rendering_config {
173          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
174        }
175        element_mix_gain {
176          param_definition {
177            parameter_id: 998  # Non-existent; default will be used
178            parameter_rate: 48000
179            param_definition_mode: 1
180            reserved: 0
181          }
182          default_mix_gain: -768
183        }
184      }
185    ]
186    output_mix_gain {
187      param_definition {
188        parameter_id: 997  # Non-existent; default will be used
189        parameter_rate: 48000
190        param_definition_mode: 1
191        reserved: 0
192      }
193      default_mix_gain: 0
194    }
195    num_layouts: 2
196    layouts {
197      loudness_layout {
198        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
199        ss_layout {
200          sound_system: SOUND_SYSTEM_A_0_2_0
201          reserved: 0
202        }
203      }
204      loudness {
205        info_type_bit_masks: []
206        integrated_loudness: -4273
207        digital_peak: -1765
208      }
209    }
210    layouts {
211      loudness_layout {
212        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
213        ss_layout {
214          sound_system: SOUND_SYSTEM_J_4_7_0
215          reserved: 0
216        }
217      }
218      loudness {
219        info_type_bit_masks: []
220        integrated_loudness: -4686
221        digital_peak: -2459
222      }
223    }
224  }
225}
226
227audio_frame_metadata: [
228  {
229    wav_filename: "sine_1000_4oa_48khz.wav"
230    samples_to_trim_at_end: 640
231    samples_to_trim_at_start: 0
232    audio_element_id: 300
233    channel_metadatas: [
234      { channel_id: 0 channel_label: CHANNEL_LABEL_A_0 },
235      { channel_id: 1 channel_label: CHANNEL_LABEL_A_1 },
236      { channel_id: 2 channel_label: CHANNEL_LABEL_A_2 },
237      { channel_id: 3 channel_label: CHANNEL_LABEL_A_3 },
238      { channel_id: 4 channel_label: CHANNEL_LABEL_A_4 },
239      { channel_id: 5 channel_label: CHANNEL_LABEL_A_5 },
240      { channel_id: 6 channel_label: CHANNEL_LABEL_A_6 },
241      { channel_id: 7 channel_label: CHANNEL_LABEL_A_7 },
242      { channel_id: 8 channel_label: CHANNEL_LABEL_A_8 },
243      { channel_id: 9 channel_label: CHANNEL_LABEL_A_9 },
244      { channel_id: 10 channel_label: CHANNEL_LABEL_A_10 },
245      { channel_id: 11 channel_label: CHANNEL_LABEL_A_11 },
246      { channel_id: 12 channel_label: CHANNEL_LABEL_A_12 },
247      { channel_id: 13 channel_label: CHANNEL_LABEL_A_13 },
248      { channel_id: 14 channel_label: CHANNEL_LABEL_A_14 },
249      { channel_id: 15 channel_label: CHANNEL_LABEL_A_15 },
250      { channel_id: 16 channel_label: CHANNEL_LABEL_A_16 },
251      { channel_id: 17 channel_label: CHANNEL_LABEL_A_17 },
252      { channel_id: 18 channel_label: CHANNEL_LABEL_A_18 },
253      { channel_id: 19 channel_label: CHANNEL_LABEL_A_19 },
254      { channel_id: 20 channel_label: CHANNEL_LABEL_A_20 },
255      { channel_id: 21 channel_label: CHANNEL_LABEL_A_21 },
256      { channel_id: 22 channel_label: CHANNEL_LABEL_A_22 },
257      { channel_id: 23 channel_label: CHANNEL_LABEL_A_23 },
258      { channel_id: 24 channel_label: CHANNEL_LABEL_A_24 }
259    ]
260  },
261  {
262    wav_filename: "Mechanism_5s.wav"
263    samples_to_trim_at_end: 640
264    samples_to_trim_at_start: 0
265    audio_element_id: 301
266    channel_metadatas: [
267      { channel_id: 3 channel_label: CHANNEL_LABEL_LFE }
268    ]
269  },
270  {
271    wav_filename: "dialog_clip_stereo.wav"
272    samples_to_trim_at_end: 640
273    samples_to_trim_at_start: 0
274    audio_element_id: 302
275    channel_metadatas: [
276      { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 },
277      { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 }
278    ]
279  }
280]
281
282temporal_delimiter_metadata {
283  enable_temporal_delimiters: false
284}
285