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 simple example of a two-layer 5.1 + stereo base profile IAMF " 17 "stream encoded using Opus." 18 file_name_prefix: "test_000087" 19 is_valid: true 20 is_valid_to_decode: true 21 validate_user_loudness: true 22 mp4_fixed_timestamp: "2023-07-12 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/loudspeaker_layout == Stereo", 29 "3.6.2/loudspeaker_layout == 5.1", 30 "3.7.4/default_mix_gain", 31 "3.11.1/OPUS Specific", 32 "4.2/Base Profile", 33 "8.5.1/Loudness Information" 34 ] 35 base_test: "test_000405" 36 output_wav_file_bit_depth_override: 16 37} 38 39encoder_control_metadata { 40 add_build_information_tag: false 41} 42 43ia_sequence_header_metadata { 44 primary_profile: PROFILE_VERSION_BASE 45 additional_profile: PROFILE_VERSION_BASE 46} 47 48codec_config_metadata { 49 codec_config_id: 200 50 codec_config { 51 codec_id: CODEC_ID_OPUS 52 num_samples_per_frame: 960 53 audio_roll_distance: -4 54 decoder_config_opus { 55 version: 1 56 pre_skip: 312 57 input_sample_rate: 48000 58 opus_encoder_metadata { 59 target_bitrate_per_channel: 48000 60 application: APPLICATION_AUDIO 61 use_float_api: false 62 } 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: 4 74 audio_substream_ids: [0, 1, 2, 3] 75 num_parameters: 2 76 audio_element_params { 77 param_definition_type: PARAM_DEFINITION_TYPE_DEMIXING 78 demixing_param: { 79 param_definition { 80 parameter_id: 996 # Non-existent; default will be used 81 parameter_rate: 48000 82 param_definition_mode: 0 83 reserved: 0 84 duration: 960 85 num_subblocks: 1 86 constant_subblock_duration: 960 87 } 88 default_demixing_info_parameter_data: { 89 dmixp_mode: DMIXP_MODE_2 90 } 91 default_w: 0 92 } 93 } 94 audio_element_params { 95 param_definition_type: PARAM_DEFINITION_TYPE_RECON_GAIN 96 recon_gain_param { 97 param_definition { 98 parameter_id: 995 # Non-existent; default will be used 99 parameter_rate: 48000 100 param_definition_mode: 0 101 reserved: 0 102 duration: 960 103 num_subblocks: 1 104 constant_subblock_duration: 960 105 } 106 } 107 } 108 scalable_channel_layout_config { 109 num_layers: 2 110 reserved: 0 111 channel_audio_layer_configs: [ 112 { 113 loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO 114 output_gain_is_present_flag: 0 115 recon_gain_is_present_flag: 0 116 reserved_a: 0 117 substream_count: 1 118 coupled_substream_count: 1 119 }, 120 { 121 loudspeaker_layout: LOUDSPEAKER_LAYOUT_5_1_CH 122 output_gain_is_present_flag: 0 123 recon_gain_is_present_flag: 1 124 reserved_a: 0 125 substream_count: 3 126 coupled_substream_count: 1 127 } 128 ] 129 } 130 }, 131 { 132 audio_element_id: 301 133 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 134 reserved: 0 135 codec_config_id: 200 136 num_substreams: 1 137 audio_substream_ids: [4] 138 num_parameters: 0 139 scalable_channel_layout_config { 140 num_layers: 1 141 reserved: 0 142 channel_audio_layer_configs: [ 143 { 144 loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO 145 output_gain_is_present_flag: 0 146 recon_gain_is_present_flag: 0 147 reserved_a: 0 148 substream_count: 1 149 coupled_substream_count: 1 150 } 151 ] 152 } 153 } 154] 155 156mix_presentation_metadata { 157 mix_presentation_id: 42 158 count_label: 1 159 annotations_language: ["en-us"] 160 localized_presentation_annotations: ["test_mix_pres"] 161 num_sub_mixes: 1 162 sub_mixes { 163 num_audio_elements: 2 164 audio_elements: [ 165 { 166 audio_element_id: 300 167 localized_element_annotations: ["test_sub_mix_0_audio_element_0"] 168 rendering_config { 169 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 170 } 171 element_mix_gain { 172 param_definition { 173 parameter_id: 999 # Non-existent; default will be used 174 parameter_rate: 48000 175 param_definition_mode: 1 176 reserved: 0 177 } 178 default_mix_gain: -768 179 } 180 }, 181 { 182 audio_element_id: 301 183 localized_element_annotations: ["test_sub_mix_0_audio_element_1"] 184 rendering_config { 185 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 186 } 187 element_mix_gain { 188 param_definition { 189 parameter_id: 998 # Non-existent; default will be used 190 parameter_rate: 48000 191 param_definition_mode: 1 192 reserved: 0 193 } 194 default_mix_gain: -768 195 } 196 } 197 ] 198 output_mix_gain { 199 param_definition { 200 parameter_id: 997 # Non-existent; default will be used 201 parameter_rate: 48000 202 param_definition_mode: 1 203 reserved: 0 204 } 205 default_mix_gain: 0 206 } 207 num_layouts: 2 208 layouts { 209 loudness_layout { 210 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 211 ss_layout { 212 sound_system: SOUND_SYSTEM_A_0_2_0 213 reserved: 0 214 } 215 } 216 loudness { 217 info_type_bit_masks: [] 218 integrated_loudness: -5114 219 digital_peak: -1416 220 } 221 } 222 layouts { 223 loudness_layout { 224 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 225 ss_layout { 226 sound_system: SOUND_SYSTEM_B_0_5_0 227 reserved: 0 228 } 229 } 230 loudness { 231 info_type_bit_masks: [] 232 integrated_loudness: -5119 233 digital_peak: -1784 234 } 235 } 236 } 237} 238 239audio_frame_metadata: [ 240 { 241 wav_filename: "Mechanism_5s.wav" 242 samples_to_trim_at_end: 648 243 samples_to_trim_at_start: 312 244 audio_element_id: 300 245 channel_metadatas: [ 246 { channel_id: 0 channel_label: CHANNEL_LABEL_L_5 }, 247 { channel_id: 1 channel_label: CHANNEL_LABEL_R_5 }, 248 { channel_id: 2 channel_label: CHANNEL_LABEL_CENTRE }, 249 { channel_id: 3 channel_label: CHANNEL_LABEL_LFE }, 250 { channel_id: 4 channel_label: CHANNEL_LABEL_LS_5 }, 251 { channel_id: 5 channel_label: CHANNEL_LABEL_RS_5 } 252 ] 253 }, 254 { 255 wav_filename: "dialog_clip_stereo.wav" 256 samples_to_trim_at_end: 648 257 samples_to_trim_at_start: 312 258 audio_element_id: 301 259 channel_metadatas: [ 260 { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 }, 261 { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 } 262 ] 263 } 264] 265 266temporal_delimiter_metadata { 267 enable_temporal_delimiters: false 268} 269