1# Copyright (c) 2023, 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 "A 3-layer IAMF stream scalable encoded with the " 17 "channel layouts: 3.1.2ch/5.1.2ch/7.1.4ch." 18 file_name_prefix: "test_000225" 19 is_valid: true 20 is_valid_to_decode: true 21 validate_user_loudness: true 22 mp4_fixed_timestamp: "2023-06-23 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.6.2/channel_audio_layer_config", 29 "3.6.2/loudspeaker_layout == 3.1.2", 30 "3.6.2/loudspeaker_layout == 5.1.2", 31 "3.6.2/loudspeaker_layout == 7.1.4", 32 "3.6.2/output_gain_is_present_flag", 33 "3.6.2/output_gain_flags", 34 "3.6.2/output_gain", 35 "3.6.2.1/Channel Layout Generation Rule", 36 "7/IAMF Processing", 37 "7.2.1/Gain", 38 "7.2.2/De-mixer", 39 "7.3.2/Rendering an Audio Element", 40 "7.3.2.1/Rendering a Channel-Based Audio Element to Loudspeakers", 41 "7.6.1/Dynamic Down-mix Matrix", 42 "9.1.2.1/Annex A2.1: Down-mix parameter and Loudness", 43 "9.1.2.2/Annex A2.2: Down-mix Mechanism", 44 "9.1.2.4/Annex A2.4: Channel Group Generation Rule" 45 ] 46 base_test: "test_0000211" 47} 48 49encoder_control_metadata { 50 add_build_information_tag: false 51} 52 53ia_sequence_header_metadata { 54 primary_profile: PROFILE_VERSION_SIMPLE 55 additional_profile: PROFILE_VERSION_SIMPLE 56} 57 58codec_config_metadata { 59 codec_config_id: 200 60 codec_config { 61 codec_id: CODEC_ID_LPCM 62 num_samples_per_frame: 1024 63 audio_roll_distance: 0 64 decoder_config_lpcm { 65 sample_format_flags: LPCM_LITTLE_ENDIAN 66 sample_size: 16 67 sample_rate: 48000 68 } 69 } 70} 71 72audio_element_metadata { 73 audio_element_id: 300 74 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 75 reserved: 0 76 codec_config_id: 200 77 num_substreams: 7 78 audio_substream_ids: [0, 1, 2, 3, 4, 5, 6] 79 num_parameters: 1 80 audio_element_params { 81 param_definition_type: PARAM_DEFINITION_TYPE_DEMIXING 82 demixing_param: { 83 param_definition { 84 parameter_id: 999 # Non-existent; default will be used 85 parameter_rate: 48000 86 param_definition_mode: 0 87 reserved: 0 88 duration: 1024 89 num_subblocks: 1 90 constant_subblock_duration: 1024 91 } 92 default_demixing_info_parameter_data: { 93 dmixp_mode: DMIXP_MODE_1 94 } 95 default_w: 0 96 } 97 } 98 scalable_channel_layout_config { 99 num_layers: 3 100 reserved: 0 101 channel_audio_layer_configs: [ 102 { 103 loudspeaker_layout: LOUDSPEAKER_LAYOUT_3_1_2_CH # [L3/R3, Ltf3/Rtf3, C, LFE] 104 output_gain_is_present_flag: 1 105 recon_gain_is_present_flag: 0 106 reserved_a: 0 107 substream_count: 4 108 coupled_substream_count: 2 109 output_gain_flag: 51 110 output_gain: 359 111 }, 112 { 113 loudspeaker_layout: LOUDSPEAKER_LAYOUT_5_1_2_CH # [L5/R5] 114 output_gain_is_present_flag: 1 115 recon_gain_is_present_flag: 0 116 reserved_a: 0 117 substream_count: 1 118 coupled_substream_count: 1 119 output_gain_flag: 0 120 output_gain: 0 121 }, 122 { 123 loudspeaker_layout: LOUDSPEAKER_LAYOUT_7_1_4_CH # 7.1.4 [Lss7/Rss7, Ltf4/Rtf4] 124 output_gain_is_present_flag: 1 125 recon_gain_is_present_flag: 0 126 reserved_a: 0 127 substream_count: 2 128 coupled_substream_count: 2 129 output_gain_flag: 0 130 output_gain: 0 131 } 132 ] 133 } 134} 135 136mix_presentation_metadata { 137 mix_presentation_id: 42 138 count_label: 1 139 annotations_language: ["en-us"] 140 localized_presentation_annotations: ["test_mix_pres"] 141 num_sub_mixes: 1 142 sub_mixes { 143 num_audio_elements: 1 144 audio_elements { 145 audio_element_id: 300 146 localized_element_annotations: ["test_sub_mix_0_audio_element_0"] 147 rendering_config { 148 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 149 } 150 element_mix_gain { 151 param_definition { 152 parameter_id: 998 153 parameter_rate: 48000 154 param_definition_mode: 1 155 reserved: 0 156 } 157 default_mix_gain: 0 158 } 159 } 160 output_mix_gain { 161 param_definition { 162 parameter_id: 997 163 parameter_rate: 48000 164 param_definition_mode: 1 165 reserved: 0 166 } 167 default_mix_gain: 0 168 } 169 num_layouts: 4 170 layouts { 171 loudness_layout { 172 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 173 ss_layout { 174 sound_system: SOUND_SYSTEM_A_0_2_0 175 reserved: 0 176 } 177 } 178 loudness { 179 info_type_bit_masks: [] 180 integrated_loudness: -4013 181 digital_peak: 0 182 } 183 } 184 layouts { 185 loudness_layout { 186 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 187 ss_layout { 188 sound_system: SOUND_SYSTEM_11_2_3_0 189 reserved: 0 190 } 191 } 192 loudness { 193 info_type_bit_masks: [] 194 integrated_loudness: -4139 195 digital_peak: 0 196 } 197 } 198 layouts { 199 loudness_layout { 200 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 201 ss_layout { 202 sound_system: SOUND_SYSTEM_C_2_5_0 203 reserved: 0 204 } 205 } 206 loudness { 207 info_type_bit_masks: [] 208 integrated_loudness: -3775 209 digital_peak: 0 210 } 211 } 212 layouts { 213 loudness_layout { 214 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 215 ss_layout { 216 sound_system: SOUND_SYSTEM_J_4_7_0 217 reserved: 0 218 } 219 } 220 loudness { 221 info_type_bit_masks: [] 222 integrated_loudness: -4112 223 digital_peak: -998 224 } 225 } 226 } 227} 228 229audio_frame_metadata { 230 # Not using every channel in the input wav file. 231 wav_filename: "Mechanism_5s.wav" 232 samples_to_trim_at_end: 640 233 samples_to_trim_at_start: 0 234 audio_element_id: 300 235 channel_metadatas: [ 236 { channel_id: 0 channel_label: CHANNEL_LABEL_L_7 }, 237 { channel_id: 1 channel_label: CHANNEL_LABEL_R_7 }, 238 { channel_id: 2 channel_label: CHANNEL_LABEL_CENTRE }, 239 { channel_id: 3 channel_label: CHANNEL_LABEL_LFE }, 240 { channel_id: 4 channel_label: CHANNEL_LABEL_LSS_7 }, 241 { channel_id: 5 channel_label: CHANNEL_LABEL_RSS_7 }, 242 { channel_id: 6 channel_label: CHANNEL_LABEL_LRS_7 }, 243 { channel_id: 7 channel_label: CHANNEL_LABEL_RRS_7 }, 244 { channel_id: 8 channel_label: CHANNEL_LABEL_LTF_4 }, 245 { channel_id: 9 channel_label: CHANNEL_LABEL_RTF_4 }, 246 { channel_id: 10 channel_label: CHANNEL_LABEL_LTB_4 }, 247 { channel_id: 11 channel_label: CHANNEL_LABEL_RTB_4 } 248 ] 249} 250 251temporal_delimiter_metadata { 252 enable_temporal_delimiters: false 253} 254