• 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 two-layer 5.1 + stereo IAMF stream encoded using Opus and with two Mix "
17    "Presentations. The first Mix Presentation uses both Audio Elements. The "
18    "second Mix Presentation uses only the stereo Audio Element. The primary "
19    "profile is set to Simple and the additional profile is set to Base."
20  file_name_prefix: "test_000118"
21  is_valid: true
22  is_valid_to_decode: true
23  validate_user_loudness: true
24  mp4_fixed_timestamp: "2024-07-08 00:00:00"
25  test_repository_tags: [
26    "github/aomediacodec/libiamf/main",
27    "github/aomediacodec/libiamf/v1.0.0-errata"
28  ]
29  primary_tested_spec_sections: [
30    "3.6.2/loudspeaker_layout == Stereo",
31    "3.6.2/loudspeaker_layout == 5.1",
32    "3.7/num_audio_elements",
33    "3.7.4/default_mix_gain",
34    "3.11.1/OPUS Specific",
35    "4.2/Simple Profile",
36    "4.2/Base Profile",
37    "8.5.1/Loudness Information"
38  ]
39  base_test: "test_000087"
40  output_wav_file_bit_depth_override: 16
41}
42
43encoder_control_metadata {
44  add_build_information_tag: false
45}
46
47ia_sequence_header_metadata {
48  primary_profile: PROFILE_VERSION_SIMPLE
49  additional_profile: PROFILE_VERSION_BASE
50}
51
52codec_config_metadata {
53  codec_config_id: 200
54  codec_config {
55    codec_id: CODEC_ID_OPUS
56    num_samples_per_frame: 960
57    audio_roll_distance: -4
58    decoder_config_opus {
59      version: 1
60      pre_skip: 312
61      input_sample_rate: 48000
62      opus_encoder_metadata {
63        target_bitrate_per_channel: 48000
64        application: APPLICATION_AUDIO
65        use_float_api: false
66      }
67    }
68  }
69}
70
71audio_element_metadata: [
72  {
73    audio_element_id: 300
74    audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED
75    reserved: 0
76    codec_config_id: 200
77    num_substreams: 4
78    audio_substream_ids: [0, 1, 2, 3]
79    num_parameters: 2
80    audio_element_params {
81      param_definition_type: PARAM_DEFINITION_TYPE_DEMIXING
82      demixing_param: {
83        param_definition {
84          parameter_id: 996  # Non-existent; default will be used
85          parameter_rate: 48000
86          param_definition_mode: 0
87          reserved: 0
88          duration: 960
89          num_subblocks: 1
90          constant_subblock_duration: 960
91        }
92        default_demixing_info_parameter_data: {
93          dmixp_mode: DMIXP_MODE_2
94        }
95        default_w: 0
96      }
97    }
98    audio_element_params {
99      param_definition_type: PARAM_DEFINITION_TYPE_RECON_GAIN
100      recon_gain_param {
101        param_definition {
102          parameter_id: 995  # Non-existent; default will be used
103          parameter_rate: 48000
104          param_definition_mode: 0
105          reserved: 0
106          duration: 960
107          num_subblocks: 1
108          constant_subblock_duration: 960
109        }
110      }
111    }
112    scalable_channel_layout_config {
113      num_layers: 2
114      reserved: 0
115      channel_audio_layer_configs: [
116        {
117          loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO
118          output_gain_is_present_flag: 0
119          recon_gain_is_present_flag: 0
120          reserved_a: 0
121          substream_count: 1
122          coupled_substream_count: 1
123        },
124        {
125          loudspeaker_layout: LOUDSPEAKER_LAYOUT_5_1_CH
126          output_gain_is_present_flag: 0
127          recon_gain_is_present_flag: 1
128          reserved_a: 0
129          substream_count: 3
130          coupled_substream_count: 1
131        }
132      ]
133    }
134  },
135  {
136    audio_element_id: 301
137    audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED
138    reserved: 0
139    codec_config_id: 200
140    num_substreams: 1
141    audio_substream_ids: [4]
142    num_parameters: 0
143    scalable_channel_layout_config {
144      num_layers: 1
145      reserved: 0
146      channel_audio_layer_configs: [
147        {
148          loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO
149          output_gain_is_present_flag: 0
150          recon_gain_is_present_flag: 0
151          reserved_a: 0
152          substream_count: 1
153          coupled_substream_count: 1
154        }
155      ]
156    }
157  }
158]
159
160mix_presentation_metadata {
161  mix_presentation_id: 42
162  count_label: 1
163  annotations_language: ["en-us"]
164  localized_presentation_annotations: ["test_mix_pres_with_two_audio_elements"]
165  num_sub_mixes: 1
166  sub_mixes {
167    num_audio_elements: 2
168    audio_elements: [
169      {
170        audio_element_id: 300
171        localized_element_annotations: ["test_mix_pres_0_sub_mix_0_audio_element_0"]
172        rendering_config {
173          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
174        }
175        element_mix_gain {
176          param_definition {
177            parameter_id: 999  # 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        audio_element_id: 301
187        localized_element_annotations: ["test_mix_pres_0_sub_mix_0_audio_element_1"]
188        rendering_config {
189          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
190        }
191        element_mix_gain {
192          param_definition {
193            parameter_id: 998  # Non-existent; default will be used
194            parameter_rate: 48000
195            param_definition_mode: 1
196            reserved: 0
197          }
198          default_mix_gain: -768
199        }
200      }
201    ]
202    output_mix_gain {
203      param_definition {
204        parameter_id: 997  # Non-existent; default will be used
205        parameter_rate: 48000
206        param_definition_mode: 1
207        reserved: 0
208      }
209      default_mix_gain: 0
210    }
211    num_layouts: 2
212    layouts {
213      loudness_layout {
214        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
215        ss_layout {
216          sound_system: SOUND_SYSTEM_A_0_2_0
217          reserved: 0
218        }
219      }
220      loudness {
221        info_type_bit_masks: []
222        integrated_loudness: -5114
223        digital_peak: -1416
224      }
225    }
226    layouts {
227      loudness_layout {
228        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
229        ss_layout {
230          sound_system: SOUND_SYSTEM_B_0_5_0
231          reserved: 0
232        }
233      }
234      loudness {
235        info_type_bit_masks: []
236        integrated_loudness: -5119
237        digital_peak: -1784
238      }
239    }
240  }
241}
242
243mix_presentation_metadata {
244  mix_presentation_id: 43
245  count_label: 1
246  annotations_language: ["en-us"]
247  localized_presentation_annotations: ["test_mix_pres_with_one_audio_element"]
248  num_sub_mixes: 1
249  sub_mixes {
250    num_audio_elements: 1
251    audio_elements: [
252      {
253        audio_element_id: 301
254        localized_element_annotations: ["test_mix_pres_1_sub_mix_0_audio_element_0"]
255        rendering_config {
256          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
257        }
258        element_mix_gain {
259          param_definition {
260            parameter_id: 998  # Non-existent; default will be used
261            parameter_rate: 48000
262            param_definition_mode: 1
263            reserved: 0
264          }
265          default_mix_gain: -768
266        }
267      }
268    ]
269    output_mix_gain {
270      param_definition {
271        parameter_id: 997  # Non-existent; default will be used
272        parameter_rate: 48000
273        param_definition_mode: 1
274        reserved: 0
275      }
276      default_mix_gain: 0
277    }
278    num_layouts: 1
279    layouts {
280      loudness_layout {
281        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
282        ss_layout {
283          sound_system: SOUND_SYSTEM_A_0_2_0
284          reserved: 0
285        }
286      }
287      loudness {
288        info_type_bit_masks: []
289        integrated_loudness: -6481
290        digital_peak: -2560
291      }
292    }
293  }
294}
295
296audio_frame_metadata: [
297  {
298    wav_filename: "Mechanism_5s.wav"
299    samples_to_trim_at_end: 648
300    samples_to_trim_at_start: 312
301    audio_element_id: 300
302    channel_metadatas: [
303      { channel_id: 0 channel_label: CHANNEL_LABEL_L_5 },
304      { channel_id: 1 channel_label: CHANNEL_LABEL_R_5 },
305      { channel_id: 2 channel_label: CHANNEL_LABEL_CENTRE },
306      { channel_id: 3 channel_label: CHANNEL_LABEL_LFE },
307      { channel_id: 4 channel_label: CHANNEL_LABEL_LS_5 },
308      { channel_id: 5 channel_label: CHANNEL_LABEL_RS_5 }
309    ]
310  },
311  {
312    wav_filename: "dialog_clip_stereo.wav"
313    samples_to_trim_at_end: 648
314    samples_to_trim_at_start: 312
315    audio_element_id: 301
316    channel_metadatas: [
317      { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 },
318      { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 }
319    ]
320  }
321]
322
323temporal_delimiter_metadata {
324  enable_temporal_delimiters: false
325}
326