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 first-order ambisonics IAMF stream it contains a loudness layout which " 18 "is reserved in simple profile, but permitted in base-enhanced profile." 19 file_name_prefix: "test_000131" 20 is_valid: true 21 is_valid_to_decode: true 22validate_user_loudness: true 23 mp4_fixed_timestamp: "2024-07-09 00:00:00" 24 test_repository_tags: [ 25 "github/aomediacodec/libiamf/main", 26 "github/aomediacodec/libiamf/v1.0.0-errata" 27 ] 28 primary_tested_spec_sections: [ 29 "3.6.3/ambisonics_projection_config", 30 "7/IAMF Processing", 31 "7.3.2/Rendering an Audio Element", 32 "7.3.2.2/Rendering a Scene-Based Audio Element to Loudspeakers" 33 ] 34 base_test: "test_000048" 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_SIMPLE 44 additional_profile: PROFILE_VERSION_BASE_ENHANCED 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 audio_element_id: 300 68 audio_element_type: AUDIO_ELEMENT_SCENE_BASED 69 reserved: 0 70 codec_config_id: 200 71 num_substreams: 2 72 audio_substream_ids: [0, 1] 73 num_parameters: 0 74 ambisonics_config { 75 ambisonics_mode: AMBISONICS_MODE_PROJECTION 76 ambisonics_projection_config { 77 output_channel_count: 4 78 substream_count: 2 79 coupled_substream_count: 2 80 demixing_matrix: [ 81 32767, 0, 0, 0, # col 0 82 0, 32767, 0, 0, # col 1 83 0, 0, 32767, 0, # col 2 84 0, 0, 0, 32767 # col 3 85 ] 86 } 87 } 88} 89 90mix_presentation_metadata { 91 mix_presentation_id: 42 92 count_label: 1 93 annotations_language: ["en-us"] 94 localized_presentation_annotations: ["test_mix_pres"] 95 num_sub_mixes: 1 96 sub_mixes { 97 num_audio_elements: 1 98 audio_elements { 99 audio_element_id: 300 100 localized_element_annotations: ["test_sub_mix_0_audio_element_0"] 101 rendering_config { 102 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 103 } 104 element_mix_gain { 105 param_definition { 106 parameter_id: 100 107 parameter_rate: 48000 108 param_definition_mode: 1 109 reserved: 0 110 } 111 default_mix_gain: 0 112 } 113 } 114 output_mix_gain { 115 param_definition { 116 parameter_id: 100 117 parameter_rate: 48000 118 param_definition_mode: 1 119 reserved: 0 120 } 121 default_mix_gain: 0 122 } 123 num_layouts: 2 124 layouts { 125 loudness_layout { 126 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 127 ss_layout { 128 sound_system: SOUND_SYSTEM_A_0_2_0 129 reserved: 0 130 } 131 } 132 loudness { 133 info_type_bit_masks: [] 134 integrated_loudness: -5209 135 digital_peak: -4110 136 } 137 } 138 layouts { 139 loudness_layout { 140 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 141 ss_layout { 142 sound_system: SOUND_SYSTEM_13_6_9_0 143 reserved: 0 144 } 145 } 146 loudness { 147 info_type_bit_masks: [] 148 integrated_loudness: -2932 149 digital_peak: -2928 150 } 151 } 152 } 153} 154 155audio_frame_metadata { 156 wav_filename: "sawtooth_10000_foa_48khz.wav" 157 samples_to_trim_at_end: 648 158 samples_to_trim_at_start: 312 159 audio_element_id: 300 160 channel_metadatas: [ 161 { channel_id: 0 channel_label: CHANNEL_LABEL_A_0 }, 162 { channel_id: 1 channel_label: CHANNEL_LABEL_A_1 }, 163 { channel_id: 2 channel_label: CHANNEL_LABEL_A_2 }, 164 { channel_id: 3 channel_label: CHANNEL_LABEL_A_3 } 165 ] 166} 167 168parameter_block_metadata { 169 parameter_id: 100 170 start_timestamp: 0 171 duration: 24960 172 num_subblocks: 1 173 constant_subblock_duration: 24960 174 subblocks: [ 175 { 176 mix_gain_parameter_data { 177 animation_type: ANIMATE_STEP 178 param_data { 179 step { 180 start_point_value: 0 181 } 182 } 183 } 184 } 185 ] 186} 187 188temporal_delimiter_metadata { 189 enable_temporal_delimiters: false 190} 191