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 "An invalid IAMF stream with two Mix Presentation OBUs. The stream is " 17 "invalid because one of the Mix Presentation OBUs has zero sub-mixes." 18 file_name_prefix: "test_000502" 19 # The encoder should not normally encode a mix presentation with zero 20 # sub-mixes. 21 is_valid: false 22 # A compliant decoder can decode the mix with `mix_presentation_id` 42. 23 is_valid_to_decode: true 24 validate_user_loudness: true 25 mp4_fixed_timestamp: "2023-08-07 00:00:00" 26 test_repository_tags: [ 27 "github/aomediacodec/libiamf/main", 28 "github/aomediacodec/libiamf/v1.0.0-errata" 29 ] 30 primary_tested_spec_sections: [ 31 "3.7/num_sub_mixes" 32 ] 33 base_test: "test_000409" 34} 35 36encoder_control_metadata { 37 add_build_information_tag: false 38} 39 40ia_sequence_header_metadata { 41 primary_profile: PROFILE_VERSION_BASE 42 additional_profile: PROFILE_VERSION_BASE 43} 44 45codec_config_metadata { 46 codec_config_id: 200 47 codec_config { 48 codec_id: CODEC_ID_LPCM 49 num_samples_per_frame: 1024 50 audio_roll_distance: 0 51 decoder_config_lpcm { 52 sample_format_flags: LPCM_LITTLE_ENDIAN 53 sample_size: 16 54 sample_rate: 48000 55 } 56 } 57} 58 59audio_element_metadata: [ 60 { 61 audio_element_id: 300 62 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 63 reserved: 0 64 codec_config_id: 200 65 num_substreams: 1 66 audio_substream_ids: [0] 67 num_parameters: 0 68 scalable_channel_layout_config { 69 num_layers: 1 70 reserved: 0 71 channel_audio_layer_configs: [ 72 { 73 loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO 74 output_gain_is_present_flag: 0 75 recon_gain_is_present_flag: 0 76 reserved_a: 0 77 substream_count: 1 78 coupled_substream_count: 1 79 } 80 ] 81 } 82 }, 83 { 84 audio_element_id: 301 85 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 86 reserved: 0 87 codec_config_id: 200 88 num_substreams: 1 89 audio_substream_ids: [1] 90 num_parameters: 0 91 scalable_channel_layout_config { 92 num_layers: 1 93 reserved: 0 94 channel_audio_layer_configs: [ 95 { 96 loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO 97 output_gain_is_present_flag: 0 98 recon_gain_is_present_flag: 0 99 reserved_a: 0 100 substream_count: 1 101 coupled_substream_count: 1 102 } 103 ] 104 } 105 } 106] 107 108mix_presentation_metadata: [ 109 { 110 mix_presentation_id: 42 111 count_label: 1 112 annotations_language: ["en-us"] 113 localized_presentation_annotations: ["test_mix_pres_0"] 114 num_sub_mixes: 1 115 sub_mixes { 116 num_audio_elements: 2 117 audio_elements: [ 118 { 119 audio_element_id: 300 120 localized_element_annotations: ["test_sub_mix_0_audio_element_0"] 121 rendering_config { 122 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 123 } 124 element_mix_gain { 125 param_definition { 126 parameter_id: 999 # Non-existent; default will be used 127 parameter_rate: 48000 128 param_definition_mode: 1 129 reserved: 0 130 } 131 default_mix_gain: -768 132 } 133 }, 134 { 135 audio_element_id: 301 136 localized_element_annotations: ["test_sub_mix_0_audio_element_1"] 137 rendering_config { 138 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 139 } 140 element_mix_gain { 141 param_definition { 142 parameter_id: 998 # Non-existent; default will be used 143 parameter_rate: 48000 144 param_definition_mode: 1 145 reserved: 0 146 } 147 default_mix_gain: -768 148 } 149 } 150 ] 151 output_mix_gain { 152 param_definition { 153 parameter_id: 997 # Non-existent; default will be used 154 parameter_rate: 48000 155 param_definition_mode: 1 156 } 157 default_mix_gain: 0 158 } 159 num_layouts: 1 160 layouts { 161 loudness_layout { 162 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 163 ss_layout { 164 sound_system: SOUND_SYSTEM_A_0_2_0 165 reserved: 0 166 } 167 } 168 loudness { 169 info_type_bit_masks: [] 170 integrated_loudness: -5451 171 digital_peak: -1784 172 } 173 } 174 } 175 }, 176 { 177 mix_presentation_id: 43 178 count_label: 1 179 annotations_language: ["en-us"] 180 localized_presentation_annotations: ["test_mix_pres_1"] 181 num_sub_mixes: 0 182 } 183] 184 185audio_frame_metadata: [ 186 { 187 wav_filename: "Mechanism_5s.wav" 188 samples_to_trim_at_end: 640 189 samples_to_trim_at_start: 0 190 audio_element_id: 300 191 channel_metadatas: [ 192 { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 }, 193 { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 } 194 ] 195 }, 196 { 197 wav_filename: "dialog_clip_stereo.wav" 198 samples_to_trim_at_end: 640 199 samples_to_trim_at_start: 0 200 audio_element_id: 301 201 channel_metadatas: [ 202 { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 }, 203 { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 } 204 ] 205 } 206] 207 208temporal_delimiter_metadata { 209 enable_temporal_delimiters: false 210} 211