• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2023, 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 third-order ambisonics + stereo base profile IAMF stream encoded using "
17    "Opus."
18  file_name_prefix: "test_000305"
19  is_valid: true
20  is_valid_to_decode: true
21  validate_user_loudness: true
22  mp4_fixed_timestamp: "2023-04-19 00:00:00"
23  test_repository_tags: [
24    "github/aomediacodec/libiamf/main",
25    "github/aomediacodec/libiamf/v1.0.0-errata"
26  ]
27  primary_tested_spec_sections: [
28    "3.6.2/loudspeaker_layout == Stereo",
29    "3.6.3/ambisonics_mono_config",
30    "3.7.4/default_mix_gain",
31    "3.11.1/OPUS Specific",
32    "4.2/Base Profile",
33    "8.5.1/Loudness Information"
34  ]
35  base_test: "test_000111"
36  output_wav_file_bit_depth_override: 16
37}
38
39encoder_control_metadata {
40  add_build_information_tag: false
41}
42
43ia_sequence_header_metadata {
44  primary_profile: PROFILE_VERSION_BASE
45  additional_profile: PROFILE_VERSION_BASE
46}
47
48codec_config_metadata {
49  codec_config_id: 200
50  codec_config {
51    codec_id: CODEC_ID_OPUS
52    num_samples_per_frame: 960
53    audio_roll_distance: -4
54    decoder_config_opus {
55      version: 1
56      pre_skip: 312
57      input_sample_rate: 48000
58      opus_encoder_metadata {
59        target_bitrate_per_channel: 48000
60        application: APPLICATION_AUDIO
61        use_float_api: false
62      }
63    }
64  }
65}
66
67audio_element_metadata: [
68  {
69    audio_element_id: 300
70    audio_element_type: AUDIO_ELEMENT_SCENE_BASED
71    reserved: 0
72    codec_config_id: 200
73    num_substreams: 16
74    audio_substream_ids: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
75    num_parameters: 0
76    ambisonics_config {
77      ambisonics_mode: AMBISONICS_MODE_MONO
78      ambisonics_mono_config {
79        output_channel_count: 16
80        substream_count: 16
81        channel_mapping: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
82      }
83    }
84  },
85  {
86    audio_element_id: 301
87    audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED
88    reserved: 0
89    codec_config_id: 200
90    num_substreams: 1
91    audio_substream_ids: [16]
92    num_parameters: 0
93    scalable_channel_layout_config {
94      num_layers: 1
95      reserved: 0
96      channel_audio_layer_configs: [
97        {
98          loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO
99          output_gain_is_present_flag: 0
100          recon_gain_is_present_flag: 0
101          reserved_a: 0
102          substream_count: 1
103          coupled_substream_count: 1
104        }
105      ]
106    }
107  }
108]
109
110mix_presentation_metadata {
111  mix_presentation_id: 42
112  count_label: 1
113  annotations_language: ["en-us"]
114  localized_presentation_annotations: ["test_mix_pres"]
115  num_sub_mixes: 1
116  sub_mixes {
117    num_audio_elements: 2
118    audio_elements: [
119      {
120        audio_element_id: 300
121        localized_element_annotations: ["test_sub_mix_0_audio_element_0"]
122        rendering_config {
123          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
124        }
125        element_mix_gain {
126          param_definition {
127            parameter_id: 999  # Non-existent; default will be used
128            parameter_rate: 48000
129            param_definition_mode: 1
130            reserved: 0
131          }
132          default_mix_gain: -768
133        }
134      },
135      {
136        audio_element_id: 301
137        localized_element_annotations: ["test_sub_mix_0_audio_element_1"]
138        rendering_config {
139          headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
140        }
141        element_mix_gain {
142          param_definition {
143            parameter_id: 998  # Non-existent; default will be used
144            parameter_rate: 48000
145            param_definition_mode: 1
146            reserved: 0
147          }
148          default_mix_gain: -768
149        }
150      }
151    ]
152    output_mix_gain {
153      param_definition {
154        parameter_id: 997  # Non-existent; default will be used
155        parameter_rate: 48000
156        param_definition_mode: 1
157        reserved: 0
158      }
159      default_mix_gain: 0
160    }
161    num_layouts: 1
162    layouts {
163      loudness_layout {
164        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
165        ss_layout {
166          sound_system: SOUND_SYSTEM_A_0_2_0
167          reserved: 0
168        }
169      }
170      loudness {
171        info_type_bit_masks: []
172        integrated_loudness: -3672
173        digital_peak: -712
174      }
175    }
176  }
177}
178
179audio_frame_metadata: [
180  {
181    wav_filename: "Transport_TOA_5s.wav"
182    samples_to_trim_at_end: 648
183    samples_to_trim_at_start: 312
184    audio_element_id: 300
185    channel_metadatas: [
186      { channel_id: 0 channel_label: CHANNEL_LABEL_A_0 },
187      { channel_id: 1 channel_label: CHANNEL_LABEL_A_1 },
188      { channel_id: 2 channel_label: CHANNEL_LABEL_A_2 },
189      { channel_id: 3 channel_label: CHANNEL_LABEL_A_3 },
190      { channel_id: 4 channel_label: CHANNEL_LABEL_A_4 },
191      { channel_id: 5 channel_label: CHANNEL_LABEL_A_5 },
192      { channel_id: 6 channel_label: CHANNEL_LABEL_A_6 },
193      { channel_id: 7 channel_label: CHANNEL_LABEL_A_7 },
194      { channel_id: 8 channel_label: CHANNEL_LABEL_A_8 },
195      { channel_id: 9 channel_label: CHANNEL_LABEL_A_9 },
196      { channel_id: 10 channel_label: CHANNEL_LABEL_A_10 },
197      { channel_id: 11 channel_label: CHANNEL_LABEL_A_11 },
198      { channel_id: 12 channel_label: CHANNEL_LABEL_A_12 },
199      { channel_id: 13 channel_label: CHANNEL_LABEL_A_13 },
200      { channel_id: 14 channel_label: CHANNEL_LABEL_A_14 },
201      { channel_id: 15 channel_label: CHANNEL_LABEL_A_15 }
202    ]
203  },
204  {
205    wav_filename: "dialog_clip_stereo.wav"
206    samples_to_trim_at_end: 648
207    samples_to_trim_at_start: 312
208    audio_element_id: 301
209    channel_metadatas: [
210      { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 },
211      { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 }
212    ]
213  }
214]
215
216temporal_delimiter_metadata {
217  enable_temporal_delimiters: false
218}
219