• 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
11syntax = "proto2";
12
13package iamf_tools_cli_proto;
14
15import "iamf/cli/proto/arbitrary_obu.proto";
16import "iamf/cli/proto/audio_element.proto";
17import "iamf/cli/proto/audio_frame.proto";
18import "iamf/cli/proto/codec_config.proto";
19import "iamf/cli/proto/encoder_control_metadata.proto";
20import "iamf/cli/proto/ia_sequence_header.proto";
21import "iamf/cli/proto/mix_presentation.proto";
22import "iamf/cli/proto/parameter_block.proto";
23import "iamf/cli/proto/temporal_delimiter.proto";
24import "iamf/cli/proto/test_vector_metadata.proto";
25
26message UserMetadata {
27  reserved 1, 5;
28  // Top-level metadata about the file.
29  optional TestVectorMetadata test_vector_metadata = 9;
30  // Knobs to control the encoder behavior.
31  optional EncoderControlMetadata encoder_control_metadata = 12;
32
33  // Descriptor OBUs.
34  repeated IASequenceHeaderObuMetadata ia_sequence_header_metadata = 10;
35  repeated CodecConfigObuMetadata codec_config_metadata = 2;
36  repeated AudioElementObuMetadata audio_element_metadata = 3;
37  repeated MixPresentationObuMetadata mix_presentation_metadata = 4;
38
39  // Temporal Unit OBUs.
40  repeated AudioFrameObuMetadata audio_frame_metadata = 6;
41  repeated ParameterBlockObuMetadata parameter_block_metadata = 7;
42  optional TemporalDelimiterObuMetadata temporal_delimiter_metadata = 8;
43
44  // A list of arbitrary OBUs to insert blindly into the stream. There is no
45  // attempt to validate or process any side effects of adding the OBUs.
46  repeated ArbitraryObuMetadata arbitrary_obu_metadata = 11;
47
48  // Next ID: 13
49}
50