• 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    "A fourth-order ambisonics + stereo IAMF stream encoded using Opus and "
17    "with two Mix Presentations. The first Mix Presentation uses both Audio "
18    "Elements. The second Mix Presentation uses only the stereo Audio Element. "
19    "The primary profile is set to Simple and the additional profile is set to "
20    "Base-Enhanced."
21  file_name_prefix: "test_000132"
22  is_valid: true
23  is_valid_to_decode: true
24  validate_user_loudness: true
25  mp4_fixed_timestamp: "2024-07-17 00:00:00"
26  test_repository_tags: [
27    "github/aomediacodec/libiamf/main",
28    "github/aomediacodec/libiamf/v1.0.0-errata"
29  ]
30  primary_tested_spec_sections: [
31    "3.6/num_substreams",
32    "3.6.2/subtream_count",
33    "3.6.2/coupled_substream_count",
34    "3.6.4/subtream_count",
35    "3.6.4/coupled_substream_count",
36    "4.2/Simple Profile",
37    "4.2/Base-Enhannced Profile",
38    "4.3/Cumulative channel limit"
39  ]
40  base_test: "test_000118"
41  output_wav_file_bit_depth_override: 16
42}
43
44encoder_control_metadata {
45  add_build_information_tag: false
46}
47
48ia_sequence_header_metadata {
49  primary_profile: PROFILE_VERSION_SIMPLE
50  additional_profile: PROFILE_VERSION_BASE_ENHANCED
51}
52
53codec_config_metadata {
54  codec_config_id: 200
55  codec_config {
56    codec_id: CODEC_ID_OPUS
57    num_samples_per_frame: 960
58    audio_roll_distance: -4
59    decoder_config_opus {
60      version: 1
61      pre_skip: 312
62      input_sample_rate: 48000
63      opus_encoder_metadata {
64        target_bitrate_per_channel: 48000
65        application: APPLICATION_AUDIO
66        use_float_api: false
67      }
68    }
69  }
70}
71
72audio_element_metadata: [
73  {
74    audio_element_id: 300
75    audio_element_type: AUDIO_ELEMENT_SCENE_BASED
76    reserved: 0
77    codec_config_id: 200
78    num_substreams: 25
79    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]
80    num_parameters: 0
81    ambisonics_config {
82      ambisonics_mode: AMBISONICS_MODE_MONO
83      ambisonics_mono_config {
84        output_channel_count: 25
85        substream_count: 25
86        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]
87      }
88    }
89  },
90  {
91    audio_element_id: 301
92    audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED
93    reserved: 0
94    codec_config_id: 200
95    num_substreams: 1
96    audio_substream_ids: [25]
97    num_parameters: 0
98    scalable_channel_layout_config {
99      num_layers: 1
100      reserved: 0
101      channel_audio_layer_configs: [
102        {
103          loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO
104          output_gain_is_present_flag: 0
105          recon_gain_is_present_flag: 0
106          reserved_a: 0
107          substream_count: 1
108          coupled_substream_count: 1
109        }
110      ]
111    }
112  }
113]
114
115mix_presentation_metadata {
116  mix_presentation_id: 42
117  count_label: 1
118  annotations_language: ["en-us"]
119  localized_presentation_annotations: ["test_mix_pres_0_with_twenty_seven_channels"]
120  num_sub_mixes: 1
121  sub_mixes {
122    num_audio_elements: 2
123    audio_elements: [
124      {
125        audio_element_id: 300
126        localized_element_annotations: ["test_mix_pres_0_sub_mix_0_audio_element_0"]
127        rendering_config {
128          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
129        }
130        element_mix_gain {
131          param_definition {
132            parameter_id: 999  # Non-existent; default will be used
133            parameter_rate: 48000
134            param_definition_mode: 1
135            reserved: 0
136          }
137          default_mix_gain: -768
138        }
139      },
140      {
141        audio_element_id: 301
142        localized_element_annotations: ["test_mix_pres_0_sub_mix_0_audio_element_1"]
143        rendering_config {
144          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
145        }
146        element_mix_gain {
147          param_definition {
148            parameter_id: 998  # Non-existent; default will be used
149            parameter_rate: 48000
150            param_definition_mode: 1
151            reserved: 0
152          }
153          default_mix_gain: -768
154        }
155      }
156    ]
157    output_mix_gain {
158      param_definition {
159        parameter_id: 997  # Non-existent; default will be used
160        parameter_rate: 48000
161        param_definition_mode: 1
162        reserved: 0
163      }
164      default_mix_gain: 0
165    }
166    num_layouts: 2
167    layouts {
168      loudness_layout {
169        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
170        ss_layout {
171          sound_system: SOUND_SYSTEM_A_0_2_0
172          reserved: 0
173        }
174      }
175      loudness {
176        info_type_bit_masks: []
177        integrated_loudness: -4273
178        digital_peak: -1765
179      }
180    }
181    layouts {
182      loudness_layout {
183        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
184        ss_layout {
185          sound_system: SOUND_SYSTEM_J_4_7_0
186          reserved: 0
187        }
188      }
189      loudness {
190        info_type_bit_masks: []
191        integrated_loudness: -4686
192        digital_peak: -2458
193      }
194    }
195  }
196}
197
198mix_presentation_metadata {
199  mix_presentation_id: 43
200  count_label: 1
201  annotations_language: ["en-us"]
202  localized_presentation_annotations: ["test_mix_pres_with_two_channels"]
203  num_sub_mixes: 1
204  sub_mixes {
205    num_audio_elements: 1
206    audio_elements: [
207      {
208        audio_element_id: 301
209        localized_element_annotations: ["test_mix_pres_1_sub_mix_0_audio_element_0"]
210        rendering_config {
211          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
212        }
213        element_mix_gain {
214          param_definition {
215            parameter_id: 998  # Non-existent; default will be used
216            parameter_rate: 48000
217            param_definition_mode: 1
218            reserved: 0
219          }
220          default_mix_gain: -768
221        }
222      }
223    ]
224    output_mix_gain {
225      param_definition {
226        parameter_id: 997  # Non-existent; default will be used
227        parameter_rate: 48000
228        param_definition_mode: 1
229        reserved: 0
230      }
231      default_mix_gain: 0
232    }
233    num_layouts: 1
234    layouts {
235      loudness_layout {
236        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
237        ss_layout {
238          sound_system: SOUND_SYSTEM_A_0_2_0
239          reserved: 0
240        }
241      }
242      loudness {
243        info_type_bit_masks: []
244        integrated_loudness: -6481
245        digital_peak: -2560
246      }
247    }
248  }
249}
250
251audio_frame_metadata: [
252  {
253    wav_filename: "sine_1000_4oa_48khz.wav"
254    samples_to_trim_at_end: 648
255    samples_to_trim_at_start: 312
256    audio_element_id: 300
257    channel_metadatas: [
258      { channel_id: 0 channel_label: CHANNEL_LABEL_A_0 },
259      { channel_id: 1 channel_label: CHANNEL_LABEL_A_1 },
260      { channel_id: 2 channel_label: CHANNEL_LABEL_A_2 },
261      { channel_id: 3 channel_label: CHANNEL_LABEL_A_3 },
262      { channel_id: 4 channel_label: CHANNEL_LABEL_A_4 },
263      { channel_id: 5 channel_label: CHANNEL_LABEL_A_5 },
264      { channel_id: 6 channel_label: CHANNEL_LABEL_A_6 },
265      { channel_id: 7 channel_label: CHANNEL_LABEL_A_7 },
266      { channel_id: 8 channel_label: CHANNEL_LABEL_A_8 },
267      { channel_id: 9 channel_label: CHANNEL_LABEL_A_9 },
268      { channel_id: 10 channel_label: CHANNEL_LABEL_A_10 },
269      { channel_id: 11 channel_label: CHANNEL_LABEL_A_11 },
270      { channel_id: 12 channel_label: CHANNEL_LABEL_A_12 },
271      { channel_id: 13 channel_label: CHANNEL_LABEL_A_13 },
272      { channel_id: 14 channel_label: CHANNEL_LABEL_A_14 },
273      { channel_id: 15 channel_label: CHANNEL_LABEL_A_15 },
274      { channel_id: 16 channel_label: CHANNEL_LABEL_A_16 },
275      { channel_id: 17 channel_label: CHANNEL_LABEL_A_17 },
276      { channel_id: 18 channel_label: CHANNEL_LABEL_A_18 },
277      { channel_id: 19 channel_label: CHANNEL_LABEL_A_19 },
278      { channel_id: 20 channel_label: CHANNEL_LABEL_A_20 },
279      { channel_id: 21 channel_label: CHANNEL_LABEL_A_21 },
280      { channel_id: 22 channel_label: CHANNEL_LABEL_A_22 },
281      { channel_id: 23 channel_label: CHANNEL_LABEL_A_23 },
282      { channel_id: 24 channel_label: CHANNEL_LABEL_A_24 }
283    ]
284  },
285  {
286    wav_filename: "dialog_clip_stereo.wav"
287    samples_to_trim_at_end: 648
288    samples_to_trim_at_start: 312
289    audio_element_id: 301
290    channel_metadatas: [
291      { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 },
292      { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 }
293    ]
294  }
295]
296
297temporal_delimiter_metadata {
298  enable_temporal_delimiters: false
299}
300