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 example using several expanded layouts to approximate 7.1.4 using " 17 "Base-Enhanced profile. It has seven audio elements {Mono, Stereo, " 18 "LFE, Stereo-SS, Stereo-RS, Stereo-TF, Stereo-TB} and a stereo output " 19 "layout." 20 file_name_prefix: "test_000702" 21 is_valid: true 22 is_valid_to_decode: true 23 validate_user_loudness: true 24 mp4_fixed_timestamp: "2024-08-14 00:00:00" 25 test_repository_tags: ["github/aomediacodec/libiamf/main"] 26 primary_tested_spec_sections: [ 27 "3.6.2/loudspeaker_layout == Expanded", 28 "3.6.2/loudspeaker_layout == Mono", 29 "3.6.2/loudspeaker_layout == Stereo", 30 "3.6.2/expanded_loudspeaker_layout == LFE", 31 "3.6.2/expanded_loudspeaker_layout == Stereo-SS", 32 "3.6.2/expanded_loudspeaker_layout == Stereo-RS", 33 "3.6.2/expanded_loudspeaker_layout == Stereo-TF", 34 "3.6.2/expanded_loudspeaker_layout == Stereo-TB", 35 "3.7.3/sound_system == Stereo", 36 "3.7.4/default_mix_gain", 37 "4.2/Base-Enhanced Profile", 38 "8.5.1/Loudness Information" 39 ] 40 base_test: "test_000600" 41} 42 43encoder_control_metadata { 44 add_build_information_tag: false 45} 46 47ia_sequence_header_metadata { 48 primary_profile: PROFILE_VERSION_BASE_ENHANCED 49 additional_profile: PROFILE_VERSION_BASE_ENHANCED 50} 51 52codec_config_metadata { 53 codec_config_id: 200 54 codec_config { 55 codec_id: CODEC_ID_LPCM 56 num_samples_per_frame: 1024 57 audio_roll_distance: 0 58 decoder_config_lpcm { 59 sample_format_flags: LPCM_LITTLE_ENDIAN 60 sample_size: 16 61 sample_rate: 48000 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_MONO 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: 0 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 audio_element_id: 302 115 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 116 reserved: 0 117 codec_config_id: 200 118 num_substreams: 1 119 audio_substream_ids: [2] 120 num_parameters: 0 121 scalable_channel_layout_config { 122 num_layers: 1 123 reserved: 0 124 channel_audio_layer_configs: [ 125 { 126 loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED 127 output_gain_is_present_flag: 0 128 recon_gain_is_present_flag: 0 129 reserved_a: 0 130 substream_count: 1 131 coupled_substream_count: 0 132 expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_LFE 133 } 134 ] 135 } 136 }, 137 { 138 audio_element_id: 303 139 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 140 reserved: 0 141 codec_config_id: 200 142 num_substreams: 1 143 audio_substream_ids: [3] 144 num_parameters: 0 145 scalable_channel_layout_config { 146 num_layers: 1 147 reserved: 0 148 channel_audio_layer_configs: [ 149 { 150 loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED 151 output_gain_is_present_flag: 0 152 recon_gain_is_present_flag: 0 153 reserved_a: 0 154 substream_count: 1 155 coupled_substream_count: 1 156 expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_SS 157 } 158 ] 159 } 160 }, 161 { 162 audio_element_id: 304 163 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 164 reserved: 0 165 codec_config_id: 200 166 num_substreams: 1 167 audio_substream_ids: [4] 168 num_parameters: 0 169 scalable_channel_layout_config { 170 num_layers: 1 171 reserved: 0 172 channel_audio_layer_configs: [ 173 { 174 loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED 175 output_gain_is_present_flag: 0 176 recon_gain_is_present_flag: 0 177 reserved_a: 0 178 substream_count: 1 179 coupled_substream_count: 1 180 expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_RS 181 } 182 ] 183 } 184 }, 185 { 186 audio_element_id: 305 187 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 188 reserved: 0 189 codec_config_id: 200 190 num_substreams: 1 191 audio_substream_ids: [5] 192 num_parameters: 0 193 scalable_channel_layout_config { 194 num_layers: 1 195 reserved: 0 196 channel_audio_layer_configs: [ 197 { 198 loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED 199 output_gain_is_present_flag: 0 200 recon_gain_is_present_flag: 0 201 reserved_a: 0 202 substream_count: 1 203 coupled_substream_count: 1 204 expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_TF 205 } 206 ] 207 } 208 }, 209 { 210 audio_element_id: 306 211 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 212 reserved: 0 213 codec_config_id: 200 214 num_substreams: 1 215 audio_substream_ids: [6] 216 num_parameters: 0 217 scalable_channel_layout_config { 218 num_layers: 1 219 reserved: 0 220 channel_audio_layer_configs: [ 221 { 222 loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED 223 output_gain_is_present_flag: 0 224 recon_gain_is_present_flag: 0 225 reserved_a: 0 226 substream_count: 1 227 coupled_substream_count: 1 228 expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_TB 229 } 230 ] 231 } 232 } 233] 234 235mix_presentation_metadata { 236 mix_presentation_id: 42 237 count_label: 1 238 annotations_language: ["en-us"] 239 localized_presentation_annotations: ["test_mix_pres"] 240 num_sub_mixes: 1 241 sub_mixes { 242 num_audio_elements: 7 243 audio_elements: [ 244 { 245 audio_element_id: 300 246 localized_element_annotations: ["test_sub_mix_0_audio_element_mono"] 247 rendering_config { 248 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 249 } 250 element_mix_gain { 251 param_definition { 252 parameter_id: 999 # Non-existent; default will be used 253 parameter_rate: 48000 254 param_definition_mode: 1 255 reserved: 0 256 } 257 default_mix_gain: 0 258 } 259 }, 260 { 261 audio_element_id: 301 262 localized_element_annotations: ["test_sub_mix_0_audio_element_stereo"] 263 rendering_config { 264 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 265 } 266 element_mix_gain { 267 param_definition { 268 parameter_id: 998 # Non-existent; default will be used 269 parameter_rate: 48000 270 param_definition_mode: 1 271 reserved: 0 272 } 273 default_mix_gain: 0 274 } 275 }, 276 { 277 audio_element_id: 302 278 localized_element_annotations: ["test_sub_mix_0_audio_element_LFE"] 279 rendering_config { 280 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 281 } 282 element_mix_gain { 283 param_definition { 284 parameter_id: 998 # Non-existent; default will be used 285 parameter_rate: 48000 286 param_definition_mode: 1 287 reserved: 0 288 } 289 default_mix_gain: 0 290 } 291 }, 292 { 293 audio_element_id: 303 294 localized_element_annotations: ["test_sub_mix_0_audio_element_stereo_ss"] 295 rendering_config { 296 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 297 } 298 element_mix_gain { 299 param_definition { 300 parameter_id: 998 # Non-existent; default will be used 301 parameter_rate: 48000 302 param_definition_mode: 1 303 reserved: 0 304 } 305 default_mix_gain: 0 306 } 307 }, 308 { 309 audio_element_id: 304 310 localized_element_annotations: ["test_sub_mix_0_audio_element_stereo_rs"] 311 rendering_config { 312 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 313 } 314 element_mix_gain { 315 param_definition { 316 parameter_id: 998 # Non-existent; default will be used 317 parameter_rate: 48000 318 param_definition_mode: 1 319 reserved: 0 320 } 321 default_mix_gain: 0 322 } 323 }, 324 { 325 audio_element_id: 305 326 localized_element_annotations: ["test_sub_mix_0_audio_element_stereo_tf"] 327 rendering_config { 328 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 329 } 330 element_mix_gain { 331 param_definition { 332 parameter_id: 998 # Non-existent; default will be used 333 parameter_rate: 48000 334 param_definition_mode: 1 335 reserved: 0 336 } 337 default_mix_gain: 0 338 } 339 }, 340 { 341 audio_element_id: 306 342 localized_element_annotations: ["test_sub_mix_0_audio_element_stereo_tb"] 343 rendering_config { 344 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 345 } 346 element_mix_gain { 347 param_definition { 348 parameter_id: 998 # Non-existent; default will be used 349 parameter_rate: 48000 350 param_definition_mode: 1 351 reserved: 0 352 } 353 default_mix_gain: 0 354 } 355 } 356 ] 357 output_mix_gain { 358 param_definition { 359 parameter_id: 997 # Non-existent; default will be used 360 parameter_rate: 48000 361 param_definition_mode: 1 362 reserved: 0 363 } 364 default_mix_gain: 0 365 } 366 num_layouts: 1 367 layouts { 368 loudness_layout { 369 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 370 ss_layout { 371 sound_system: SOUND_SYSTEM_A_0_2_0 372 reserved: 0 373 } 374 } 375 loudness { 376 info_type_bit_masks: [] 377 integrated_loudness: -4013 378 digital_peak: 0 379 } 380 } 381 } 382} 383 384audio_frame_metadata: [ 385 { 386 wav_filename: "Mechanism_5s.wav" 387 samples_to_trim_at_end: 640 388 samples_to_trim_at_start: 0 389 audio_element_id: 300 390 channel_metadatas: [ 391 { channel_id: 2 channel_label: CHANNEL_LABEL_MONO } # Centre in the original file. 392 ] 393 }, 394 { 395 wav_filename: "Mechanism_5s.wav" 396 samples_to_trim_at_end: 640 397 samples_to_trim_at_start: 0 398 audio_element_id: 301 399 channel_metadatas: [ 400 { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 }, 401 { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 } 402 ] 403 }, 404 { 405 wav_filename: "Mechanism_5s.wav" 406 samples_to_trim_at_end: 640 407 samples_to_trim_at_start: 0 408 audio_element_id: 302 409 channel_metadatas: [ 410 { channel_id: 3 channel_label: CHANNEL_LABEL_LFE } 411 ] 412 }, 413 { 414 wav_filename: "Mechanism_5s.wav" 415 samples_to_trim_at_end: 640 416 samples_to_trim_at_start: 0 417 audio_element_id: 303 418 channel_metadatas: [ 419 { channel_id: 4 channel_label: CHANNEL_LABEL_LSS_7 }, 420 { channel_id: 5 channel_label: CHANNEL_LABEL_RSS_7 } 421 ] 422 }, 423 { 424 wav_filename: "Mechanism_5s.wav" 425 samples_to_trim_at_end: 640 426 samples_to_trim_at_start: 0 427 audio_element_id: 304 428 channel_metadatas: [ 429 { channel_id: 6 channel_label: CHANNEL_LABEL_LRS_7 }, 430 { channel_id: 7 channel_label: CHANNEL_LABEL_RRS_7 } 431 ] 432 }, 433 { 434 wav_filename: "Mechanism_5s.wav" 435 samples_to_trim_at_end: 640 436 samples_to_trim_at_start: 0 437 audio_element_id: 305 438 439 channel_metadatas: [ 440 { channel_id: 8 channel_label: CHANNEL_LABEL_LTF_4 }, 441 { channel_id: 9 channel_label: CHANNEL_LABEL_RTF_4 } 442 ] 443 }, 444 { 445 wav_filename: "Mechanism_5s.wav" 446 samples_to_trim_at_end: 640 447 samples_to_trim_at_start: 0 448 audio_element_id: 306 449 channel_metadatas: [ 450 { channel_id: 10 channel_label: CHANNEL_LABEL_LTB_4 }, 451 { channel_id: 11 channel_label: CHANNEL_LABEL_RTB_4 } 452 ] 453 } 454] 455 456temporal_delimiter_metadata { 457 enable_temporal_delimiters: false 458} 459