• 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 third-order ambisonics IAMF stream encoded using "
17    "`ambisonics_mode` = `MONO`."
18  file_name_prefix: "test_000094"
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.3/ambisonics_mono_config",
29    "3.11.2/AAC-LC Specific",
30    "7/IAMF Processing",
31    "7.1/channel_mapping",
32    "7.3.2/Rendering an Audio Element",
33    "7.3.2.2/Rendering a Scene-Based Audio Element to Loudspeakers"
34  ]
35  base_test: "test_000039"
36}
37
38encoder_control_metadata {
39  add_build_information_tag: false
40}
41
42ia_sequence_header_metadata {
43  primary_profile: PROFILE_VERSION_SIMPLE
44  additional_profile: PROFILE_VERSION_SIMPLE
45}
46
47codec_config_metadata {
48  codec_config_id: 200
49  codec_config {
50    codec_id: CODEC_ID_AAC_LC
51    num_samples_per_frame: 1024
52    audio_roll_distance: -1
53    decoder_config_aac: {
54      buffer_size_db: 0
55      max_bitrate: 0
56      average_bit_rate: 0
57      decoder_specific_info {
58        sample_frequency_index: AAC_SAMPLE_FREQUENCY_INDEX_48000
59      }
60      aac_encoder_metadata {
61        bitrate_mode: 0  #  Constant bit rate mode.
62        enable_afterburner: true
63        signaling_mode: 2  # Explicit hierarchical signaling.
64      }
65    }
66  }
67}
68
69audio_element_metadata {
70  audio_element_id: 300
71  audio_element_type: AUDIO_ELEMENT_SCENE_BASED
72  reserved: 0
73  codec_config_id: 200
74  num_substreams: 16
75  audio_substream_ids: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
76  num_parameters: 0
77  ambisonics_config {
78    ambisonics_mode: AMBISONICS_MODE_MONO
79    ambisonics_mono_config {
80      output_channel_count: 16
81      substream_count: 16
82      channel_mapping: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
83    }
84  }
85}
86
87mix_presentation_metadata {
88  mix_presentation_id: 42
89  count_label: 1
90  annotations_language: ["en-us"]
91  localized_presentation_annotations: ["test_mix_pres"]
92  num_sub_mixes: 1
93  sub_mixes {
94    num_audio_elements: 1
95    audio_elements {
96      audio_element_id: 300
97      localized_element_annotations: ["test_sub_mix_0_audio_element_0"]
98      rendering_config {
99        headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
100      }
101      element_mix_gain {
102        param_definition {
103          parameter_id: 100
104          parameter_rate: 48000
105          param_definition_mode: 1
106          reserved: 0
107        }
108        default_mix_gain: 0
109      }
110    }
111    output_mix_gain {
112      param_definition {
113        parameter_id: 100
114        parameter_rate: 48000
115        param_definition_mode: 1
116        reserved: 0
117      }
118      default_mix_gain: 0
119    }
120    num_layouts: 1
121    layouts {
122      loudness_layout {
123        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
124        ss_layout {
125          sound_system: SOUND_SYSTEM_A_0_2_0
126          reserved: 0
127        }
128      }
129      loudness {
130        info_type_bit_masks: []
131        integrated_loudness: -5807
132        digital_peak: -4704
133      }
134    }
135  }
136}
137
138audio_frame_metadata {
139  wav_filename: "sawtooth_8000_toa_48khz.wav"
140  samples_to_trim_at_end: 576
141  samples_to_trim_at_start: 2048
142  audio_element_id: 300
143  channel_metadatas: [
144    { channel_id: 0 channel_label: CHANNEL_LABEL_A_0 },
145    { channel_id: 1 channel_label: CHANNEL_LABEL_A_1 },
146    { channel_id: 2 channel_label: CHANNEL_LABEL_A_2 },
147    { channel_id: 3 channel_label: CHANNEL_LABEL_A_3 },
148    { channel_id: 4 channel_label: CHANNEL_LABEL_A_4 },
149    { channel_id: 5 channel_label: CHANNEL_LABEL_A_5 },
150    { channel_id: 6 channel_label: CHANNEL_LABEL_A_6 },
151    { channel_id: 7 channel_label: CHANNEL_LABEL_A_7 },
152    { channel_id: 8 channel_label: CHANNEL_LABEL_A_8 },
153    { channel_id: 9 channel_label: CHANNEL_LABEL_A_9 },
154    { channel_id: 10 channel_label: CHANNEL_LABEL_A_10 },
155    { channel_id: 11 channel_label: CHANNEL_LABEL_A_11 },
156    { channel_id: 12 channel_label: CHANNEL_LABEL_A_12 },
157    { channel_id: 13 channel_label: CHANNEL_LABEL_A_13 },
158    { channel_id: 14 channel_label: CHANNEL_LABEL_A_14 },
159    { channel_id: 15 channel_label: CHANNEL_LABEL_A_15 }
160  ]
161}
162
163parameter_block_metadata {
164  parameter_id: 100
165  start_timestamp: 0
166  duration: 26624
167  num_subblocks: 1
168  constant_subblock_duration: 26624
169  subblocks: [
170    {
171      mix_gain_parameter_data {
172        animation_type: ANIMATE_STEP
173        param_data {
174          step {
175            start_point_value: 0
176          }
177        }
178      }
179    }
180  ]
181}
182
183temporal_delimiter_metadata {
184  enable_temporal_delimiters: false
185}
186