• 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 simple example of a stereo + stereo base profile IAMF "
17    "stream encoded using Opus."
18  file_name_prefix: "test_000403"
19  is_valid: true
20  is_valid_to_decode: true
21  validate_user_loudness: true
22  mp4_fixed_timestamp: "2023-06-20 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.7.4/default_mix_gain",
30    "3.11.1/OPUS Specific",
31    "4.2/Base Profile",
32    "8.5.1/Loudness Information"
33  ]
34  base_test: "test_000303"
35  output_wav_file_bit_depth_override: 16
36}
37
38encoder_control_metadata {
39  add_build_information_tag: false
40}
41
42ia_sequence_header_metadata {
43  primary_profile: PROFILE_VERSION_BASE
44  additional_profile: PROFILE_VERSION_BASE
45}
46
47codec_config_metadata {
48  codec_config_id: 200
49  codec_config {
50    codec_id: CODEC_ID_OPUS
51    num_samples_per_frame: 960
52    audio_roll_distance: -4
53    decoder_config_opus {
54      version: 1
55      pre_skip: 312
56      input_sample_rate: 48000
57      opus_encoder_metadata {
58        target_bitrate_per_channel: 48000
59        application: APPLICATION_AUDIO
60        use_float_api: false
61      }
62    }
63  }
64}
65
66audio_element_metadata: [
67  {
68    audio_element_id: 300
69    audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED
70    reserved: 0
71    codec_config_id: 200
72    num_substreams: 1
73    audio_substream_ids: [0]
74    num_parameters: 0
75    scalable_channel_layout_config {
76      num_layers: 1
77      reserved: 0
78      channel_audio_layer_configs: [
79        {
80          loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO
81          output_gain_is_present_flag: 0
82          recon_gain_is_present_flag: 0
83          reserved_a: 0
84          substream_count: 1
85          coupled_substream_count: 1
86        }
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: [1]
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"]
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_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_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: 1
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: -5451
178        digital_peak: -1784
179      }
180    }
181  }
182}
183
184audio_frame_metadata: [
185  {
186    wav_filename: "Mechanism_5s.wav"
187    samples_to_trim_at_end: 648
188    samples_to_trim_at_start: 312
189    audio_element_id: 300
190    channel_metadatas: [
191      { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 },
192      { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 }
193    ]
194  },
195  {
196    wav_filename: "dialog_clip_stereo.wav"
197    samples_to_trim_at_end: 648
198    samples_to_trim_at_start: 312
199    audio_element_id: 301
200    channel_metadatas: [
201      { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 },
202      { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 }
203    ]
204  }
205]
206
207temporal_delimiter_metadata {
208  enable_temporal_delimiters: false
209}
210