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# txtpbfmt: disable 14 15test_vector_metadata { 16 human_readable_description: 17 "A third-order ambisonics IAMF stream encoded using Opus and " 18 "`ambisonics_mode` = `PROJECTION` with an (almost) identity demixing " 19 "matrix." 20 file_name_prefix: "test_000115" 21 is_valid: true 22 is_valid_to_decode: true 23 validate_user_loudness: true 24 mp4_fixed_timestamp: "2023-05-12 00:00:00" 25 test_repository_tags: [ 26 "github/aomediacodec/libiamf/main", 27 "github/aomediacodec/libiamf/v1.0.0-errata" 28 ] 29 primary_tested_spec_sections: [ 30 "3.6.3/ambisonics_projection_config", 31 "3.11.1/OPUS Specific", 32 "7.5.1/Loudness Normalization", 33 "7.5.2/Limiter" 34 ] 35 base_test: "test_000107" 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_SIMPLE 45 additional_profile: PROFILE_VERSION_SIMPLE 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 audio_element_id: 300 69 audio_element_type: AUDIO_ELEMENT_SCENE_BASED 70 reserved: 0 71 codec_config_id: 200 72 num_substreams: 16 73 audio_substream_ids: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15] 74 num_parameters: 0 75 ambisonics_config { 76 ambisonics_mode: AMBISONICS_MODE_PROJECTION 77 ambisonics_projection_config { 78 output_channel_count: 16 79 substream_count: 16 80 coupled_substream_count: 0 81 demixing_matrix: [ 82 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, # col 0 83 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, # col 1 84 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, # col 2 85 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, # col 3 86 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, # col 4 87 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, # col 5 88 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, # col 6 89 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, # col 7 90 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, # col 8 91 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, # col 9 92 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, # col 10 93 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, # col 11 94 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, # col 12 95 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, # col 13 96 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, # col 14 97 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767 # col 15 98 ] 99 } 100 } 101} 102 103mix_presentation_metadata { 104 mix_presentation_id: 42 105 count_label: 1 106 annotations_language: ["en-us"] 107 localized_presentation_annotations: ["test_mix_pres"] 108 num_sub_mixes: 1 109 sub_mixes { 110 num_audio_elements: 1 111 audio_elements { 112 audio_element_id: 300 113 localized_element_annotations: ["test_sub_mix_0_audio_element_0"] 114 rendering_config { 115 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 116 } 117 element_mix_gain { 118 param_definition { 119 parameter_id: 999 # Non-existent; default will be used 120 parameter_rate: 48000 121 param_definition_mode: 1 122 reserved: 0 123 } 124 default_mix_gain: 0 125 } 126 } 127 output_mix_gain { 128 param_definition { 129 parameter_id: 998 # Non-existent; default will be used 130 parameter_rate: 48000 131 param_definition_mode: 1 132 reserved: 0 133 } 134 default_mix_gain: 0 135 } 136 num_layouts: 1 137 layouts { 138 loudness_layout { 139 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 140 ss_layout { 141 sound_system: SOUND_SYSTEM_A_0_2_0 142 reserved: 0 143 } 144 } 145 loudness { 146 info_type_bit_masks: [] 147 integrated_loudness: -2834 148 digital_peak: 0 149 } 150 } 151 } 152} 153 154audio_frame_metadata { 155 wav_filename: "Transport_TOA_5s.wav" 156 samples_to_trim_at_end: 648 157 samples_to_trim_at_start: 312 158 audio_element_id: 300 159 channel_metadatas: [ 160 { channel_id: 0 channel_label: CHANNEL_LABEL_A_0 }, 161 { channel_id: 1 channel_label: CHANNEL_LABEL_A_1 }, 162 { channel_id: 2 channel_label: CHANNEL_LABEL_A_2 }, 163 { channel_id: 3 channel_label: CHANNEL_LABEL_A_3 }, 164 { channel_id: 4 channel_label: CHANNEL_LABEL_A_4 }, 165 { channel_id: 5 channel_label: CHANNEL_LABEL_A_5 }, 166 { channel_id: 6 channel_label: CHANNEL_LABEL_A_6 }, 167 { channel_id: 7 channel_label: CHANNEL_LABEL_A_7 }, 168 { channel_id: 8 channel_label: CHANNEL_LABEL_A_8 }, 169 { channel_id: 9 channel_label: CHANNEL_LABEL_A_9 }, 170 { channel_id: 10 channel_label: CHANNEL_LABEL_A_10 }, 171 { channel_id: 11 channel_label: CHANNEL_LABEL_A_11 }, 172 { channel_id: 12 channel_label: CHANNEL_LABEL_A_12 }, 173 { channel_id: 13 channel_label: CHANNEL_LABEL_A_13 }, 174 { channel_id: 14 channel_label: CHANNEL_LABEL_A_14 }, 175 { channel_id: 15 channel_label: CHANNEL_LABEL_A_15 } 176 ] 177} 178 179temporal_delimiter_metadata { 180 enable_temporal_delimiters: false 181} 182