1# Copyright (c) 2024, 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 stereo Opus IAMF stream which encodes a 500 ms sine wav with a " 17 "frequency of 1000 Hz, and where the Audio Element OBU has extension " 18 "header bytes." 19 file_name_prefix: "test_000117" 20 is_valid: true 21 is_valid_to_decode: true 22 validate_user_loudness: true 23 mp4_fixed_timestamp: "2024-07-08 00:00:00" 24 test_repository_tags: [ 25 "github/aomediacodec/libiamf/main", 26 "github/aomediacodec/libiamf/v1.0.0-errata" 27 ] 28 primary_tested_spec_sections: [ 29 "3.2/obu_extension_flag", 30 "3.5/audio_roll_distance", 31 "3.9/Audio Frame OBU Syntax and Semantics", 32 "3.11.1/OPUS Specific", 33 "3.11.1/num_samples_per_frame", 34 "6.2.2/roll" 35 ] 36 base_test: "test_000020" 37 output_wav_file_bit_depth_override: 16 38} 39 40encoder_control_metadata { 41 add_build_information_tag: false 42} 43 44ia_sequence_header_metadata { 45 primary_profile: PROFILE_VERSION_SIMPLE 46 additional_profile: PROFILE_VERSION_SIMPLE 47} 48 49codec_config_metadata { 50 codec_config_id: 200 51 codec_config { 52 codec_id: CODEC_ID_OPUS 53 num_samples_per_frame: 960 54 audio_roll_distance: -4 55 decoder_config_opus { 56 version: 1 57 pre_skip: 312 58 input_sample_rate: 48000 59 opus_encoder_metadata { 60 target_bitrate_per_channel: 48000 61 application: APPLICATION_AUDIO 62 use_float_api: false 63 } 64 } 65 } 66} 67 68audio_element_metadata { 69 audio_element_id: 300 70 audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED 71 reserved: 0 72 codec_config_id: 200 73 num_substreams: 1 74 audio_substream_ids: [0] 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_STEREO 82 output_gain_is_present_flag: 0 83 recon_gain_is_present_flag: 0 84 reserved_a: 0 85 substream_count: 1 86 coupled_substream_count: 1 87 } 88 ] 89 } 90 obu_header { 91 obu_extension_flag: true 92 extension_header_size: 5 93 extension_header_bytes: "extra" 94 } 95} 96 97mix_presentation_metadata { 98 mix_presentation_id: 42 99 count_label: 1 100 annotations_language: ["en-us"] 101 localized_presentation_annotations: ["test_mix_pres"] 102 num_sub_mixes: 1 103 sub_mixes { 104 num_audio_elements: 1 105 audio_elements { 106 audio_element_id: 300 107 localized_element_annotations: ["test_sub_mix_0_audio_element_0"] 108 rendering_config { 109 headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO 110 } 111 element_mix_gain { 112 param_definition { 113 parameter_id: 999 # Non-existent; default will be used 114 parameter_rate: 48000 115 param_definition_mode: 1 116 reserved: 0 117 } 118 default_mix_gain: 0 119 } 120 } 121 output_mix_gain { 122 param_definition { 123 parameter_id: 999 # Non-existent; default will be used 124 parameter_rate: 48000 125 param_definition_mode: 1 126 reserved: 0 127 } 128 default_mix_gain: 0 129 } 130 num_layouts: 1 131 layouts { 132 loudness_layout { 133 layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION 134 ss_layout { 135 sound_system: SOUND_SYSTEM_A_0_2_0 136 reserved: 0 137 } 138 } 139 loudness { 140 info_type_bit_masks: [] 141 integrated_loudness: -5393 142 digital_peak: -5394 143 } 144 } 145 } 146} 147 148audio_frame_metadata { 149 wav_filename: "sine_1000_48khz.wav" 150 samples_to_trim_at_end: 648 151 samples_to_trim_at_start: 312 152 audio_element_id: 300 153 channel_metadatas: [ 154 { channel_id: 0 channel_label: CHANNEL_LABEL_L_2 }, 155 { channel_id: 1 channel_label: CHANNEL_LABEL_R_2 } 156 ] 157} 158 159temporal_delimiter_metadata { 160 enable_temporal_delimiters: false 161} 162