• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 2-layer IAMF stream encoded using AAC with the last layer "
17    "being 5.1."
18  file_name_prefix: "test_000092"
19  is_valid: true
20  is_valid_to_decode: true
21  validate_user_loudness: true
22  mp4_fixed_timestamp: "2023-07-17 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/num_parameters",
29    "3.6.2/channel_audio_layer_config",
30    "3.6.2/loudspeaker_layout == Stereo",
31    "3.6.2/loudspeaker_layout == 5.1",
32    "3.6.2/num_layers",
33    "3.9/Audio Frame OBU Syntax and Semantics",
34    "3.11.2/AAC-LC Specific"
35  ]
36  base_test: "test_000049"
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_AAC_LC
52    num_samples_per_frame: 1024
53    audio_roll_distance: -1
54    decoder_config_aac: {
55      buffer_size_db: 0
56      max_bitrate: 0
57      average_bit_rate: 0
58      decoder_specific_info {
59        sample_frequency_index: AAC_SAMPLE_FREQUENCY_INDEX_48000
60      }
61      aac_encoder_metadata {
62        bitrate_mode: 0  #  Constant bit rate mode.
63        enable_afterburner: true
64        signaling_mode: 2  # Explicit hierarchical signaling.
65      }
66    }
67  }
68}
69
70audio_element_metadata {
71  audio_element_id: 300
72  audio_element_type: AUDIO_ELEMENT_CHANNEL_BASED
73  reserved: 0
74  codec_config_id: 200
75  num_substreams: 4
76  audio_substream_ids: [0, 1, 2, 3]
77  num_parameters: 2
78  audio_element_params {
79    param_definition_type: PARAM_DEFINITION_TYPE_DEMIXING
80    demixing_param: {
81      param_definition {
82        parameter_id: 998  # Non-existent; default will be used
83        parameter_rate: 48000
84        param_definition_mode: 0
85        reserved: 0
86        duration: 1024
87        num_subblocks: 1
88        constant_subblock_duration: 1024
89      }
90      default_demixing_info_parameter_data: {
91        dmixp_mode: DMIXP_MODE_2
92      }
93      default_w: 0
94    }
95  }
96  audio_element_params {
97    param_definition_type: PARAM_DEFINITION_TYPE_RECON_GAIN
98    recon_gain_param {
99      param_definition {
100        parameter_id: 999  # Non-existent; default will be used
101        parameter_rate: 48000
102        param_definition_mode: 0
103        reserved: 0
104        duration: 1024
105        num_subblocks: 1
106        constant_subblock_duration: 1024
107      }
108    }
109  }
110  scalable_channel_layout_config {
111    num_layers: 2
112    reserved: 0
113    channel_audio_layer_configs: [
114      {
115        loudspeaker_layout: LOUDSPEAKER_LAYOUT_STEREO
116        output_gain_is_present_flag: 0
117        recon_gain_is_present_flag: 0
118        reserved_a: 0
119        substream_count: 1
120        coupled_substream_count: 1
121      },
122      {
123        loudspeaker_layout: LOUDSPEAKER_LAYOUT_5_1_CH
124        output_gain_is_present_flag: 0
125        recon_gain_is_present_flag: 1
126        reserved_a: 0
127        substream_count: 3
128        coupled_substream_count: 1
129      }
130    ]
131  }
132}
133
134mix_presentation_metadata {
135  mix_presentation_id: 42
136  count_label: 1
137  annotations_language: ["en-us"]
138  localized_presentation_annotations: ["test_mix_pres"]
139  num_sub_mixes: 1
140  sub_mixes {
141    num_audio_elements: 1
142    audio_elements {
143      audio_element_id: 300
144      localized_element_annotations: ["test_sub_mix_0_audio_element_0"]
145      rendering_config {
146        headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
147      }
148      element_mix_gain {
149        param_definition {
150          parameter_id: 996  # Non-existent; default will be used
151          parameter_rate: 48000
152          param_definition_mode: 1
153          reserved: 0
154        }
155        default_mix_gain: 0
156      }
157    }
158    output_mix_gain {
159      param_definition {
160        parameter_id: 995  # 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: -4618
179        digital_peak: -630
180      }
181    }
182    layouts {
183      loudness_layout {
184        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
185        ss_layout {
186          sound_system: SOUND_SYSTEM_B_0_5_0
187          reserved: 0
188        }
189      }
190      loudness {
191        info_type_bit_masks: []
192        integrated_loudness: -4637
193        digital_peak: -1009
194      }
195    }
196  }
197}
198
199audio_frame_metadata {
200  wav_filename: "Mechanism_5s.wav"
201  samples_to_trim_at_end: 640
202  samples_to_trim_at_start: 2048
203  audio_element_id: 300
204  channel_metadatas: [
205    { channel_id: 0 channel_label: CHANNEL_LABEL_L_5 },
206    { channel_id: 1 channel_label: CHANNEL_LABEL_R_5 },
207    { channel_id: 2 channel_label: CHANNEL_LABEL_CENTRE },
208    { channel_id: 3 channel_label: CHANNEL_LABEL_LFE },
209    { channel_id: 4 channel_label: CHANNEL_LABEL_LS_5 },
210    { channel_id: 5 channel_label: CHANNEL_LABEL_RS_5 }
211  ]
212}
213
214temporal_delimiter_metadata {
215  enable_temporal_delimiters: false
216}
217