• 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 invalid IAMF stream because it is base profile and the Mix "
17    "Presentation contains 2 sub-mixes."
18  file_name_prefix: "test_000124"
19  is_valid: false
20  is_valid_to_decode: false
21  validate_user_loudness: true
22  mp4_fixed_timestamp: "2024-07-08 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.7/num_sub_mixes"
29  ]
30  base_test: "test_000020"
31  output_wav_file_bit_depth_override: 16
32}
33
34encoder_control_metadata {
35  add_build_information_tag: false
36}
37
38ia_sequence_header_metadata {
39  primary_profile: PROFILE_VERSION_BASE
40  additional_profile: PROFILE_VERSION_BASE
41}
42
43codec_config_metadata {
44  codec_config_id: 200
45  codec_config {
46    codec_id: CODEC_ID_OPUS
47    num_samples_per_frame: 960
48    audio_roll_distance: -4
49    decoder_config_opus {
50      version: 1
51      pre_skip: 312
52      input_sample_rate: 48000
53      opus_encoder_metadata {
54        target_bitrate_per_channel: 48000
55        application: APPLICATION_AUDIO
56        use_float_api: false
57      }
58    }
59  }
60}
61
62audio_element_metadata {
63  audio_element_id: 300
64  audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED
65  reserved: 0
66  codec_config_id: 200
67  num_substreams: 1
68  audio_substream_ids: [0]
69  num_parameters: 0
70  scalable_channel_layout_config {
71    num_layers: 1
72    reserved: 0
73    channel_audio_layer_configs: [
74      {
75        loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO
76        output_gain_is_present_flag: 0
77        recon_gain_is_present_flag: 0
78        reserved_a: 0
79        substream_count: 1
80        coupled_substream_count: 1
81      }
82    ]
83  }
84}
85
86audio_element_metadata {
87  audio_element_id: 301
88  audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED
89  reserved: 0
90  codec_config_id: 200
91  num_substreams: 1
92  audio_substream_ids: [1]
93  num_parameters: 0
94  scalable_channel_layout_config {
95    num_layers: 1
96    reserved: 0
97    channel_audio_layer_configs: [
98      {
99        loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO
100        output_gain_is_present_flag: 0
101        recon_gain_is_present_flag: 0
102        reserved_a: 0
103        substream_count: 1
104        coupled_substream_count: 1
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: 2
116  sub_mixes {
117    num_audio_elements: 1
118    audio_elements {
119      audio_element_id: 300
120      localized_element_annotations: ["test_sub_mix_0_audio_element_0"]
121      rendering_config {
122        headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
123      }
124      element_mix_gain {
125        param_definition {
126          parameter_id: 999  # Non-existent; default will be used.
127          parameter_rate: 48000
128          param_definition_mode: 1
129          reserved: 0
130        }
131        default_mix_gain: 0
132      }
133    }
134    output_mix_gain {
135      param_definition {
136        parameter_id: 999  # Non-existent; default will be used.
137        parameter_rate: 48000
138        param_definition_mode: 1
139        reserved: 0
140      }
141      default_mix_gain: 0
142    }
143    num_layouts: 1
144    layouts {
145      loudness_layout {
146        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
147        ss_layout {
148          sound_system: SOUND_SYSTEM_A_0_2_0
149          reserved: 0
150        }
151      }
152      loudness {
153        info_type_bit_masks: []
154        integrated_loudness: -5393
155        digital_peak: -5394
156      }
157    }
158  }
159  sub_mixes {
160    num_audio_elements: 1
161    audio_elements {
162      audio_element_id: 301
163      localized_element_annotations: ["test_sub_mix_1_audio_element_0"]
164      rendering_config {
165        headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
166      }
167      element_mix_gain {
168        param_definition {
169          parameter_id: 999  # Non-existent; default will be used.
170          parameter_rate: 48000
171          param_definition_mode: 1
172          reserved: 0
173        }
174        default_mix_gain: 0
175      }
176    }
177    output_mix_gain {
178      param_definition {
179        parameter_id: 999  # Non-existent; default will be used.
180        parameter_rate: 48000
181        param_definition_mode: 1
182        reserved: 0
183      }
184      default_mix_gain: 0
185    }
186    num_layouts: 1
187    layouts {
188      loudness_layout {
189        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
190        ss_layout {
191          sound_system: SOUND_SYSTEM_A_0_2_0
192          reserved: 0
193        }
194      }
195      loudness {
196        info_type_bit_masks: []
197        integrated_loudness: -5393
198        digital_peak: -5394
199      }
200    }
201  }
202}
203
204audio_frame_metadata {
205  wav_filename: "sine_1000_48khz.wav"
206  samples_to_trim_at_end: 648
207  samples_to_trim_at_start: 312
208  audio_element_id: 300
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
215audio_frame_metadata {
216  wav_filename: "sine_1000_48khz.wav"
217  samples_to_trim_at_end: 648
218  samples_to_trim_at_start: 312
219  audio_element_id: 301
220  channel_metadatas: [
221    { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 },
222    { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 }
223  ]
224}
225
226temporal_delimiter_metadata {
227  enable_temporal_delimiters: false
228}
229