• 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# txtpbfmt: disable
14
15test_vector_metadata {
16  human_readable_description:
17    "A simple example of a second-order projection ambisonics + Stereo-Si "
18    "Base-Enhanced profile IAMF stream and a 9.1.6 output layout."
19  file_name_prefix: "test_000612"
20  is_valid: true
21  is_valid_to_decode: true
22  validate_user_loudness: true
23  mp4_fixed_timestamp: "2024-08-08 00:00:00"
24  test_repository_tags: ["github/aomediacodec/libiamf/main"]
25  primary_tested_spec_sections: [
26    "3.6.2/loudspeaker_layout == Expanded",
27    "3.6.2/expanded_loudspeaker_layout == Stereo-Si",
28    "3.6.3/ambisonics_projection_config",
29    "3.7.3/sound_system == 9.1.6",
30    "3.7.4/default_mix_gain",
31    "4.2/Base-Enhanced Profile",
32    "8.5.1/Loudness Information"
33  ]
34  base_test: "test_000400"
35}
36
37encoder_control_metadata {
38  add_build_information_tag: false
39}
40
41ia_sequence_header_metadata {
42  primary_profile: PROFILE_VERSION_BASE_ENHANCED
43  additional_profile: PROFILE_VERSION_BASE_ENHANCED
44}
45
46codec_config_metadata {
47  codec_config_id: 200
48  codec_config {
49    codec_id: CODEC_ID_LPCM
50    num_samples_per_frame: 1024
51    audio_roll_distance: 0
52    decoder_config_lpcm {
53      sample_format_flags: LPCM_LITTLE_ENDIAN
54      sample_size: 16
55      sample_rate: 48000
56    }
57  }
58}
59
60audio_element_metadata: [
61  {
62    audio_element_id: 300
63    audio_element_type: AUDIO_ELEMENT_SCENE_BASED
64    reserved: 0
65    codec_config_id: 200
66    num_substreams: 9
67    audio_substream_ids: [0, 1, 2, 3, 4, 5, 6, 7, 8]
68    num_parameters: 0
69    ambisonics_config {
70      ambisonics_mode: AMBISONICS_MODE_PROJECTION
71      ambisonics_projection_config {
72        output_channel_count: 9
73        substream_count: 9
74        coupled_substream_count: 0
75        demixing_matrix: [
76          32767, 0, 0, 0, 0, 0, 0, 0, 0,  # col 0
77          0, 32767, 0, 0, 0, 0, 0, 0, 0,  # col 1
78          0, 0, 32767, 0, 0, 0, 0, 0, 0,  # col 2
79          0, 0, 0, 32767, 0, 0, 0, 0, 0,  # col 3
80          0, 0, 0, 0, 32767, 0, 0, 0, 0,  # col 4
81          0, 0, 0, 0, 0, 32767, 0, 0, 0,  # col 5
82          0, 0, 0, 0, 0, 0, 32767, 0, 0,  # col 6
83          0, 0, 0, 0, 0, 0, 0, 32767, 0,  # col 7
84          0, 0, 0, 0, 0, 0, 0, 0, 32767  # col 8
85        ]
86      }
87    }
88  },
89  {
90    audio_element_id: 301
91    audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED
92    reserved: 0
93    codec_config_id: 200
94    num_substreams: 1
95    audio_substream_ids: [9]
96    num_parameters: 0
97    scalable_channel_layout_config {
98      num_layers: 1
99      reserved: 0
100      channel_audio_layer_configs: [
101        {
102          loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED
103          output_gain_is_present_flag: 0
104          recon_gain_is_present_flag: 0
105          reserved_a: 0
106          substream_count: 1
107          coupled_substream_count: 1
108          expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_SI
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: 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: -3606
178        digital_peak: -753
179      }
180    }
181    layouts {
182      loudness_layout {
183        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
184        ss_layout {
185          sound_system: SOUND_SYSTEM_13_6_9_0
186          reserved: 0
187        }
188      }
189      loudness {
190        info_type_bit_masks: []
191        integrated_loudness: -4274
192        digital_peak: -2108
193      }
194    }
195  }
196}
197
198audio_frame_metadata: [
199  {
200    wav_filename: "Transport_TOA_5s.wav"
201    samples_to_trim_at_end: 640
202    samples_to_trim_at_start: 0
203    audio_element_id: 300
204  channel_metadatas: [
205      { channel_id: 0 channel_label: CHANNEL_LABEL_A_0 },
206      { channel_id: 1 channel_label: CHANNEL_LABEL_A_1 },
207      { channel_id: 2 channel_label: CHANNEL_LABEL_A_2 },
208      { channel_id: 3 channel_label: CHANNEL_LABEL_A_3 },
209      { channel_id: 4 channel_label: CHANNEL_LABEL_A_4 },
210      { channel_id: 5 channel_label: CHANNEL_LABEL_A_5 },
211      { channel_id: 6 channel_label: CHANNEL_LABEL_A_6 },
212      { channel_id: 7 channel_label: CHANNEL_LABEL_A_7 },
213      { channel_id: 8 channel_label: CHANNEL_LABEL_A_8 }
214    ]
215  },
216  {
217    wav_filename: "Mechanism_5s.wav"
218    samples_to_trim_at_end: 640
219    samples_to_trim_at_start: 0
220    audio_element_id: 301
221    channel_metadatas: [
222      { channel_id: 4 channel_label: CHANNEL_LABEL_SI_L },  # Lss7 in the original file.
223      { channel_id: 5 channel_label: CHANNEL_LABEL_SI_R }  # Rss7 in the original file.
224    ]
225  }
226]
227
228temporal_delimiter_metadata {
229  enable_temporal_delimiters: false
230}
231