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 9.1.6 using " 17 "Base-Enhanced profile. It has nine audio elements {Mono, Stereo, " 18 "LFE, Stereo-S, Stereo-TF, Stereo-TB, Stereo-F, Stereo-Si, Stereo-TpSi} " 19 " and a stereo output layout." 20 file_name_prefix: "test_000703" 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-RS", 32 "3.6.2/expanded_loudspeaker_layout == Stereo-TF", 33 "3.6.2/expanded_loudspeaker_layout == Stereo-TB", 34 "3.6.2/expanded_loudspeaker_layout == Stereo-Si", 35 "3.6.2/expanded_loudspeaker_layout == Stereo-TpSi", 36 "3.7.3/sound_system == Mono", 37 "3.7.4/default_mix_gain", 38 "4.2/Base-Enhanced Profile", 39 "8.5.1/Loudness Information" 40 ] 41 base_test: "test_000600" 42} 43 44encoder_control_metadata { 45 add_build_information_tag: false 46} 47 48ia_sequence_header_metadata { 49 primary_profile: PROFILE_VERSION_BASE_ENHANCED 50 additional_profile: PROFILE_VERSION_BASE_ENHANCED 51} 52 53codec_config_metadata { 54 codec_config_id: 200 55 codec_config { 56 codec_id: CODEC_ID_LPCM 57 num_samples_per_frame: 1024 58 audio_roll_distance: 0 59 decoder_config_lpcm { 60 sample_format_flags: LPCM_LITTLE_ENDIAN 61 sample_size: 16 62 sample_rate: 48000 63 } 64 } 65} 66 67audio_element_metadata: [ 68 { 69 audio_element_id: 300 70 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 71 reserved: 0 72 codec_config_id: 200 73 num_substreams: 1 74 audio_substream_ids: [0] 75 num_parameters: 0 76 scalable_channel_layout_config { 77 num_layers: 1 78 reserved: 0 79 channel_audio_layer_configs: [ 80 { 81 loudspeaker_layout: LOUDSPEAKER_LAYOUT_MONO 82 output_gain_is_present_flag: 0 83 recon_gain_is_present_flag: 0 84 reserved_a: 0 85 substream_count: 1 86 coupled_substream_count: 0 87 } 88 ] 89 } 90 }, 91 { 92 audio_element_id: 301 93 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 94 reserved: 0 95 codec_config_id: 200 96 num_substreams: 1 97 audio_substream_ids: [1] 98 num_parameters: 0 99 scalable_channel_layout_config { 100 num_layers: 1 101 reserved: 0 102 channel_audio_layer_configs: [ 103 { 104 loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO 105 output_gain_is_present_flag: 0 106 recon_gain_is_present_flag: 0 107 reserved_a: 0 108 substream_count: 1 109 coupled_substream_count: 1 110 } 111 ] 112 } 113 }, 114 { 115 audio_element_id: 302 116 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 117 reserved: 0 118 codec_config_id: 200 119 num_substreams: 1 120 audio_substream_ids: [2] 121 num_parameters: 0 122 scalable_channel_layout_config { 123 num_layers: 1 124 reserved: 0 125 channel_audio_layer_configs: [ 126 { 127 loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED 128 output_gain_is_present_flag: 0 129 recon_gain_is_present_flag: 0 130 reserved_a: 0 131 substream_count: 1 132 coupled_substream_count: 0 133 expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_LFE 134 } 135 ] 136 } 137 }, 138 { 139 audio_element_id: 303 140 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 141 reserved: 0 142 codec_config_id: 200 143 num_substreams: 1 144 audio_substream_ids: [3] 145 num_parameters: 0 146 scalable_channel_layout_config { 147 num_layers: 1 148 reserved: 0 149 channel_audio_layer_configs: [ 150 { 151 loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED 152 output_gain_is_present_flag: 0 153 recon_gain_is_present_flag: 0 154 reserved_a: 0 155 substream_count: 1 156 coupled_substream_count: 1 157 expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_RS 158 } 159 ] 160 } 161 }, 162 { 163 audio_element_id: 304 164 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 165 reserved: 0 166 codec_config_id: 200 167 num_substreams: 1 168 audio_substream_ids: [4] 169 num_parameters: 0 170 scalable_channel_layout_config { 171 num_layers: 1 172 reserved: 0 173 channel_audio_layer_configs: [ 174 { 175 loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED 176 output_gain_is_present_flag: 0 177 recon_gain_is_present_flag: 0 178 reserved_a: 0 179 substream_count: 1 180 coupled_substream_count: 1 181 expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_TF 182 } 183 ] 184 } 185 }, 186 { 187 audio_element_id: 305 188 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 189 reserved: 0 190 codec_config_id: 200 191 num_substreams: 1 192 audio_substream_ids: [5] 193 num_parameters: 0 194 scalable_channel_layout_config { 195 num_layers: 1 196 reserved: 0 197 channel_audio_layer_configs: [ 198 { 199 loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED 200 output_gain_is_present_flag: 0 201 recon_gain_is_present_flag: 0 202 reserved_a: 0 203 substream_count: 1 204 coupled_substream_count: 1 205 expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_TB 206 } 207 ] 208 } 209 }, 210 { 211 audio_element_id: 306 212 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 213 reserved: 0 214 codec_config_id: 200 215 num_substreams: 1 216 audio_substream_ids: [6] 217 num_parameters: 0 218 scalable_channel_layout_config { 219 num_layers: 1 220 reserved: 0 221 channel_audio_layer_configs: [ 222 { 223 loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED 224 output_gain_is_present_flag: 0 225 recon_gain_is_present_flag: 0 226 reserved_a: 0 227 substream_count: 1 228 coupled_substream_count: 1 229 expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_F 230 } 231 ] 232 } 233 }, 234 { 235 audio_element_id: 307 236 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 237 reserved: 0 238 codec_config_id: 200 239 num_substreams: 1 240 audio_substream_ids: [7] 241 num_parameters: 0 242 scalable_channel_layout_config { 243 num_layers: 1 244 reserved: 0 245 channel_audio_layer_configs: [ 246 { 247 loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED 248 output_gain_is_present_flag: 0 249 recon_gain_is_present_flag: 0 250 reserved_a: 0 251 substream_count: 1 252 coupled_substream_count: 1 253 expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_SI 254 } 255 ] 256 } 257 }, 258 { 259 audio_element_id: 308 260 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 261 reserved: 0 262 codec_config_id: 200 263 num_substreams: 1 264 audio_substream_ids: [8] 265 num_parameters: 0 266 scalable_channel_layout_config { 267 num_layers: 1 268 reserved: 0 269 channel_audio_layer_configs: [ 270 { 271 loudspeaker_layout: LOUDSPEAKER_LAYOUT_EXPANDED 272 output_gain_is_present_flag: 0 273 recon_gain_is_present_flag: 0 274 reserved_a: 0 275 substream_count: 1 276 coupled_substream_count: 1 277 expanded_loudspeaker_layout: EXPANDED_LOUDSPEAKER_LAYOUT_STEREO_TP_SI 278 } 279 ] 280 } 281 } 282] 283 284mix_presentation_metadata { 285 mix_presentation_id: 42 286 count_label: 1 287 annotations_language: ["en-us"] 288 localized_presentation_annotations: ["test_mix_pres"] 289 num_sub_mixes: 1 290 sub_mixes { 291 num_audio_elements: 9 292 audio_elements: [ 293 { 294 audio_element_id: 300 295 localized_element_annotations: ["test_sub_mix_0_audio_element_mono"] 296 rendering_config { 297 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 298 } 299 element_mix_gain { 300 param_definition { 301 parameter_id: 999 # Non-existent; default will be used 302 parameter_rate: 48000 303 param_definition_mode: 1 304 reserved: 0 305 } 306 default_mix_gain: 0 307 } 308 }, 309 { 310 audio_element_id: 301 311 localized_element_annotations: ["test_sub_mix_0_audio_element_stereo"] 312 rendering_config { 313 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 314 } 315 element_mix_gain { 316 param_definition { 317 parameter_id: 998 # Non-existent; default will be used 318 parameter_rate: 48000 319 param_definition_mode: 1 320 reserved: 0 321 } 322 default_mix_gain: 0 323 } 324 }, 325 { 326 audio_element_id: 302 327 localized_element_annotations: ["test_sub_mix_0_audio_element_LFE"] 328 rendering_config { 329 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 330 } 331 element_mix_gain { 332 param_definition { 333 parameter_id: 998 # Non-existent; default will be used 334 parameter_rate: 48000 335 param_definition_mode: 1 336 reserved: 0 337 } 338 default_mix_gain: 0 339 } 340 }, 341 { 342 audio_element_id: 303 343 localized_element_annotations: ["test_sub_mix_0_audio_element_stereo_rs"] 344 rendering_config { 345 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 346 } 347 element_mix_gain { 348 param_definition { 349 parameter_id: 998 # Non-existent; default will be used 350 parameter_rate: 48000 351 param_definition_mode: 1 352 reserved: 0 353 } 354 default_mix_gain: 0 355 } 356 }, 357 { 358 audio_element_id: 304 359 localized_element_annotations: ["test_sub_mix_0_audio_element_stereo_tf"] 360 rendering_config { 361 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 362 } 363 element_mix_gain { 364 param_definition { 365 parameter_id: 998 # Non-existent; default will be used 366 parameter_rate: 48000 367 param_definition_mode: 1 368 reserved: 0 369 } 370 default_mix_gain: 0 371 } 372 }, 373 { 374 audio_element_id: 305 375 localized_element_annotations: ["test_sub_mix_0_audio_element_stereo_tb"] 376 rendering_config { 377 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 378 } 379 element_mix_gain { 380 param_definition { 381 parameter_id: 998 # Non-existent; default will be used 382 parameter_rate: 48000 383 param_definition_mode: 1 384 reserved: 0 385 } 386 default_mix_gain: 0 387 } 388 }, 389 { 390 audio_element_id: 306 391 localized_element_annotations: ["test_sub_mix_0_audio_element_stereo_f"] 392 rendering_config { 393 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 394 } 395 element_mix_gain { 396 param_definition { 397 parameter_id: 998 # Non-existent; default will be used 398 parameter_rate: 48000 399 param_definition_mode: 1 400 reserved: 0 401 } 402 default_mix_gain: 0 403 } 404 }, 405 { 406 audio_element_id: 307 407 localized_element_annotations: ["test_sub_mix_0_audio_element_stereo_si"] 408 rendering_config { 409 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 410 } 411 element_mix_gain { 412 param_definition { 413 parameter_id: 998 # Non-existent; default will be used 414 parameter_rate: 48000 415 param_definition_mode: 1 416 reserved: 0 417 } 418 default_mix_gain: 0 419 } 420 }, 421 { 422 audio_element_id: 308 423 localized_element_annotations: ["test_sub_mix_0_audio_element_stereo_tp_si"] 424 rendering_config { 425 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 426 } 427 element_mix_gain { 428 param_definition { 429 parameter_id: 998 # Non-existent; default will be used 430 parameter_rate: 48000 431 param_definition_mode: 1 432 reserved: 0 433 } 434 default_mix_gain: 0 435 } 436 } 437 ] 438 output_mix_gain { 439 param_definition { 440 parameter_id: 997 # Non-existent; default will be used 441 parameter_rate: 48000 442 param_definition_mode: 1 443 reserved: 0 444 } 445 default_mix_gain: 0 446 } 447 num_layouts: 1 448 layouts { 449 loudness_layout { 450 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 451 ss_layout { 452 sound_system: SOUND_SYSTEM_A_0_2_0 453 reserved: 0 454 } 455 } 456 loudness { 457 info_type_bit_masks: [] 458 integrated_loudness: -2247 459 digital_peak: 0 460 } 461 } 462 } 463} 464 465audio_frame_metadata: [ 466 { 467 wav_filename: "Transport_9.1.6_5s.wav" 468 samples_to_trim_at_end: 640 469 samples_to_trim_at_start: 0 470 audio_element_id: 300 471 channel_metadatas: [ 472 { channel_id: 2 channel_label: CHANNEL_LABEL_MONO } # FC in the original file. 473 ] 474 }, 475 { 476 wav_filename: "Transport_9.1.6_5s.wav" 477 samples_to_trim_at_end: 640 478 samples_to_trim_at_start: 0 479 audio_element_id: 301 480 channel_metadatas: [ 481 { channel_id: 6 channel_label: CHANNEL_LABEL_L_2 }, # FLc in the original file. 482 { channel_id: 7 channel_label: CHANNEL_LABEL_R_2 } # FRc in the original file. 483 ] 484 }, 485 { 486 wav_filename: "Transport_9.1.6_5s.wav" 487 samples_to_trim_at_end: 640 488 samples_to_trim_at_start: 0 489 audio_element_id: 302 490 channel_metadatas: [ 491 { channel_id: 3 channel_label: CHANNEL_LABEL_LFE } 492 ] 493 }, 494 { 495 wav_filename: "Transport_9.1.6_5s.wav" 496 samples_to_trim_at_end: 640 497 samples_to_trim_at_start: 0 498 audio_element_id: 303 499 channel_metadatas: [ 500 { channel_id: 4 channel_label: CHANNEL_LABEL_LRS_7 }, # BL in the original file. 501 { channel_id: 5 channel_label: CHANNEL_LABEL_RRS_7 } # BR in the original file. 502 ] 503 }, 504 { 505 wav_filename: "Transport_9.1.6_5s.wav" 506 samples_to_trim_at_end: 640 507 samples_to_trim_at_start: 0 508 audio_element_id: 304 509 channel_metadatas: [ 510 { channel_id: 10 channel_label: CHANNEL_LABEL_LTF_4 }, # TpFL in the original file. 511 { channel_id: 11 channel_label: CHANNEL_LABEL_RTF_4 } # TpFR in the original file. 512 ] 513 }, 514 { 515 wav_filename: "Transport_9.1.6_5s.wav" 516 samples_to_trim_at_end: 640 517 samples_to_trim_at_start: 0 518 audio_element_id: 305 519 channel_metadatas: [ 520 { channel_id: 12 channel_label: CHANNEL_LABEL_LTB_4 }, # TpBL in the original file. 521 { channel_id: 13 channel_label: CHANNEL_LABEL_RTB_4 } # TpBR in the original file. 522 ] 523 }, 524 { 525 wav_filename: "Transport_9.1.6_5s.wav" 526 samples_to_trim_at_end: 640 527 samples_to_trim_at_start: 0 528 audio_element_id: 306 529 channel_metadatas: [ 530 { channel_id: 0 channel_label: CHANNEL_LABEL_FL }, 531 { channel_id: 1 channel_label: CHANNEL_LABEL_FR } 532 ] 533 }, 534 { 535 wav_filename: "Transport_9.1.6_5s.wav" 536 samples_to_trim_at_end: 640 537 samples_to_trim_at_start: 0 538 audio_element_id: 307 539 channel_metadatas: [ 540 { channel_id: 8 channel_label: CHANNEL_LABEL_SI_L }, 541 { channel_id: 9 channel_label: CHANNEL_LABEL_SI_R } 542 ] 543 }, 544 { 545 wav_filename: "Transport_9.1.6_5s.wav" 546 samples_to_trim_at_end: 640 547 samples_to_trim_at_start: 0 548 audio_element_id: 308 549 channel_metadatas: [ 550 { channel_id: 14 channel_label: CHANNEL_LABEL_TP_SI_L }, 551 { channel_id: 15 channel_label: CHANNEL_LABEL_TP_SI_R } 552 ] 553 } 554] 555 556temporal_delimiter_metadata { 557 enable_temporal_delimiters: false 558} 559