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 3.1.2 + stereo base profile IAMF " 17 "stream encoded using Opus." 18 file_name_prefix: "test_000404" 19 is_valid: true 20 is_valid_to_decode: true 21 validate_user_loudness: true 22 mp4_fixed_timestamp: "2023-06-20 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 == 3.1.2", 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_000403" 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: 0 76 scalable_channel_layout_config { 77 num_layers: 1 78 reserved: 0 79 channel_audio_layer_configs: [ 80 { 81 loudspeaker_layout: LOUDSPEAKER_LAYOUT_3_1_2_CH 82 output_gain_is_present_flag: 0 83 recon_gain_is_present_flag: 0 84 reserved_a: 0 85 substream_count: 4 86 coupled_substream_count: 2 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: [5] 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 116mix_presentation_metadata { 117 mix_presentation_id: 42 118 count_label: 1 119 annotations_language: ["en-us"] 120 localized_presentation_annotations: ["test_mix_pres"] 121 num_sub_mixes: 1 122 sub_mixes { 123 num_audio_elements: 2 124 audio_elements: [ 125 { 126 audio_element_id: 300 127 localized_element_annotations: ["test_sub_mix_0_audio_element_0"] 128 rendering_config { 129 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 130 } 131 element_mix_gain { 132 param_definition { 133 parameter_id: 999 # Non-existent; default will be used 134 parameter_rate: 48000 135 param_definition_mode: 1 136 reserved: 0 137 } 138 default_mix_gain: -768 139 } 140 }, 141 { 142 audio_element_id: 301 143 localized_element_annotations: ["test_sub_mix_0_audio_element_1"] 144 rendering_config { 145 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 146 } 147 element_mix_gain { 148 param_definition { 149 parameter_id: 998 # Non-existent; default will be used 150 parameter_rate: 48000 151 param_definition_mode: 1 152 reserved: 0 153 } 154 default_mix_gain: -768 155 } 156 } 157 ] 158 output_mix_gain { 159 param_definition { 160 parameter_id: 997 # Non-existent; default will be used 161 parameter_rate: 48000 162 param_definition_mode: 1 163 reserved: 0 164 } 165 default_mix_gain: 0 166 } 167 num_layouts: 2 168 layouts { 169 loudness_layout { 170 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 171 ss_layout { 172 sound_system: SOUND_SYSTEM_A_0_2_0 173 reserved: 0 174 } 175 } 176 loudness { 177 info_type_bit_masks: [] 178 integrated_loudness: -5114 179 digital_peak: -1292 180 } 181 } 182 layouts { 183 loudness_layout { 184 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 185 ss_layout { 186 sound_system: SOUND_SYSTEM_11_2_3_0 187 reserved: 0 188 } 189 } 190 loudness { 191 info_type_bit_masks: [] 192 integrated_loudness: -5165 193 digital_peak: -1766 194 } 195 } 196 } 197} 198 199audio_frame_metadata: [ 200 { 201 wav_filename: "Mechanism_5s.wav" 202 samples_to_trim_at_end: 648 203 samples_to_trim_at_start: 312 204 audio_element_id: 300 205 channel_metadatas: [ 206 { channel_id: 0 channel_label: CHANNEL_LABEL_L_3 }, 207 { channel_id: 1 channel_label: CHANNEL_LABEL_R_3 }, 208 { channel_id: 2 channel_label: CHANNEL_LABEL_CENTRE }, 209 { channel_id: 3 channel_label: CHANNEL_LABEL_LFE }, 210 { channel_id: 8 channel_label: CHANNEL_LABEL_LTF_3 }, 211 { channel_id: 9 channel_label: CHANNEL_LABEL_RTF_3 } 212 ] 213 }, 214 { 215 wav_filename: "dialog_clip_stereo.wav" 216 samples_to_trim_at_end: 648 217 samples_to_trim_at_start: 312 218 audio_element_id: 301 219 channel_metadatas: [ 220 { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 }, 221 { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 } 222 ] 223 } 224] 225 226temporal_delimiter_metadata { 227 enable_temporal_delimiters: false 228} 229