• 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# txtpbfmt: disable
14
15test_vector_metadata {
16  human_readable_description:
17    "A third-order ambisonics IAMF stream encoded using "
18    "`ambisonics_mode` = `PROJECTION` with an (almost) identity demixing "
19    "matrix."
20  file_name_prefix: "test_000043"
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    "7/IAMF Processing",
32    "7.1/demixing_matrix",
33    "7.3.2/Rendering an Audio Element",
34    "7.3.2.2/Rendering a Scene-Based Audio Element to Loudspeakers"
35  ]
36  base_test: "test_000038"
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_LPCM
52    num_samples_per_frame: 64
53    audio_roll_distance: 0
54    decoder_config_lpcm {
55      sample_format_flags: LPCM_LITTLE_ENDIAN
56      sample_size: 16
57      sample_rate: 48000
58    }
59  }
60}
61
62audio_element_metadata {
63  audio_element_id: 300
64  audio_element_type: AUDIO_ELEMENT_SCENE_BASED
65  reserved: 0
66  codec_config_id: 200
67  num_substreams: 16
68  audio_substream_ids: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
69  num_parameters: 0
70  ambisonics_config {
71    ambisonics_mode: AMBISONICS_MODE_PROJECTION
72    ambisonics_projection_config {
73      output_channel_count: 16
74      substream_count: 16
75      coupled_substream_count: 0
76      demixing_matrix: [
77        32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,  # col 0
78        0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,  # col 1
79        0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,  # col 2
80        0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,  # col 3
81        0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,  # col 4
82        0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,  # col 5
83        0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0,  # col 6
84        0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0, 0,  # col 7
85        0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0, 0,  # col 8
86        0, 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0, 0,  # col 9
87        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0, 0,  # col 10
88        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0, 0,  # col 11
89        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0, 0,  # col 12
90        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0, 0,  # col 13
91        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767, 0,  # col 14
92        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32767   # col 15
93      ]
94    }
95  }
96}
97
98mix_presentation_metadata {
99  mix_presentation_id: 42
100  count_label: 1
101  annotations_language: ["en-us"]
102  localized_presentation_annotations: ["test_mix_pres"]
103  num_sub_mixes: 1
104  sub_mixes {
105    num_audio_elements: 1
106    audio_elements {
107      audio_element_id: 300
108      localized_element_annotations: ["test_sub_mix_0_audio_element_0"]
109      rendering_config {
110        headphones_rendering_mode: HEADPHONES_RENDERING_MODE_STEREO
111      }
112      element_mix_gain {
113        param_definition {
114          parameter_id: 100
115          parameter_rate: 48000
116          param_definition_mode: 1
117          reserved: 0
118        }
119        default_mix_gain: 0
120      }
121    }
122    output_mix_gain {
123      param_definition {
124        parameter_id: 100
125        parameter_rate: 48000
126        param_definition_mode: 1
127        reserved: 0
128      }
129      default_mix_gain: 0
130    }
131    num_layouts: 1
132    layouts {
133      loudness_layout {
134        layout_type: LAYOUT_TYPE_LOUDSPEAKERS_SS_CONVENTION
135        ss_layout {
136          sound_system: SOUND_SYSTEM_A_0_2_0
137          reserved: 0
138        }
139      }
140      loudness {
141        info_type_bit_masks: []
142        integrated_loudness: -5807
143        digital_peak: -4704
144      }
145    }
146  }
147}
148
149audio_frame_metadata {
150  wav_filename: "sawtooth_8000_toa_48khz.wav"
151  samples_to_trim_at_end: 0
152  samples_to_trim_at_start: 0
153  audio_element_id: 300
154      channel_metadatas: [
155      { channel_id: 0 channel_label: CHANNEL_LABEL_A_0 },
156      { channel_id: 1 channel_label: CHANNEL_LABEL_A_1 },
157      { channel_id: 2 channel_label: CHANNEL_LABEL_A_2 },
158      { channel_id: 3 channel_label: CHANNEL_LABEL_A_3 },
159      { channel_id: 4 channel_label: CHANNEL_LABEL_A_4 },
160      { channel_id: 5 channel_label: CHANNEL_LABEL_A_5 },
161      { channel_id: 6 channel_label: CHANNEL_LABEL_A_6 },
162      { channel_id: 7 channel_label: CHANNEL_LABEL_A_7 },
163      { channel_id: 8 channel_label: CHANNEL_LABEL_A_8 },
164      { channel_id: 9 channel_label: CHANNEL_LABEL_A_9 },
165      { channel_id: 10 channel_label: CHANNEL_LABEL_A_10 },
166      { channel_id: 11 channel_label: CHANNEL_LABEL_A_11 },
167      { channel_id: 12 channel_label: CHANNEL_LABEL_A_12 },
168      { channel_id: 13 channel_label: CHANNEL_LABEL_A_13 },
169      { channel_id: 14 channel_label: CHANNEL_LABEL_A_14 },
170      { channel_id: 15 channel_label: CHANNEL_LABEL_A_15 }
171    ]
172}
173
174parameter_block_metadata {
175  parameter_id: 100
176  start_timestamp: 0
177  duration: 24000
178  num_subblocks: 1
179  constant_subblock_duration: 24000
180  subblocks: [
181    {
182      mix_gain_parameter_data {
183        animation_type: ANIMATE_STEP
184        param_data {
185          step {
186            start_point_value: 0
187          }
188        }
189      }
190    }
191  ]
192}
193
194temporal_delimiter_metadata {
195  enable_temporal_delimiters: false
196}
197