File: fuzzer_media_configuration.proto

package info (click to toggle)
chromium 138.0.7204.183-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 6,071,908 kB
  • sloc: cpp: 34,937,088; ansic: 7,176,967; javascript: 4,110,704; python: 1,419,953; asm: 946,768; xml: 739,971; pascal: 187,324; sh: 89,623; perl: 88,663; objc: 79,944; sql: 50,304; cs: 41,786; fortran: 24,137; makefile: 21,806; php: 13,980; tcl: 13,166; yacc: 8,925; ruby: 7,485; awk: 3,720; lisp: 3,096; lex: 1,327; ada: 727; jsp: 228; sed: 36
file content (110 lines) | stat: -rw-r--r-- 3,516 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

syntax = "proto2";

package mc_fuzzer;

message MediaConfigProto {
  message VideoConfigProto {
    // String describing mime-type and codecs (e.g. 'video/webm; codecs="vp8"').
    optional string content_type = 1;

    // Width of the video in pixels.
    optional uint32 width = 2;

    // Height of the video in pixels.
    optional uint32 height = 3;

    // Bitrate for 1 second of video in bits-per-second.
    optional uint32 bitrate = 4;

    // String representing the videos frames-per-second (e.g. "60").
    optional double framerate = 5;

    // Boolean representing if the spatial scalabilty is required.
    optional bool spatial_scalability = 6;

    // String representing the scalability mode (e.g. "L3T3_KEY").
    optional string scalability_mode = 7;
  }
  optional VideoConfigProto video = 1;

  message AudioConfigProto {
    // String describing mime-type and codecs (e.g. 'audio/webm;
    // codecs="vorbis"').
    optional string content_type = 1;

    // String representing number of audio channels (e.g. '5.1').
    optional string channels = 2;

    // Bitrate for 1 second of audio in bits-per-second.
    optional uint32 bitrate = 3;

    // Number of audio samples-per-second.
    optional uint32 samplerate = 4;
  }
  optional AudioConfigProto audio = 2;

  // What type of decoding is it?
  enum MediaType {
    DECODING_FILE = 0;
    DECODING_MEDIA_SOURCE = 1;
    DECODING_WEBRTC = 2;
    ENCODING_WEBRTC = 3;
  }
  optional MediaType type = 3;

  // For detailed descriptions see
  // https://wicg.github.io/media-capabilities/#dictdef-mediacapabilitieskeysystemconfiguration
  message KeySystemConfig {
    // Levels of requirement for various MediaKeys features.
    enum MediaKeysRequirement {
      REQUIRED = 0;
      // NOTE, NOT_REQUIRED maps to "OPTIONAL" in the spec, but OPTIONAL causes
      // conflict with macros in Windows.h
      NOT_REQUIRED = 1;
      NOT_ALLOWED = 2;
    }

    // Types of media keys sessions.
    enum MediaKeySessionType {
      TEMPORARY = 0;
      PERSISTENT_LICENSE = 1;
    }

    // Name of the key system to use in decoding.
    optional string key_system = 1;

    // Indicates the format of accompanying Initialization Data.
    optional string init_data_type = 2;

    // The robustness level associated with the audio content type.
    // DEPRECATED: use audio.robustness.
    optional string audio_robustness = 3 [deprecated = true];

    // The robustness level associated with the video content type.
    // DEPRECATED: use video.robustness.
    optional string video_robustness = 4 [deprecated = true];

    // Whether use of a Distinctive Identifier(s) is required.
    optional MediaKeysRequirement distinctive_identifier = 5
        [default = NOT_REQUIRED];

    // Whether the ability to persist state is required.
    optional MediaKeysRequirement persistent_state = 6 [default = NOT_REQUIRED];

    // A list of MediaKeySessionTypes that must be supported.
    repeated MediaKeySessionType session_types = 7;

    message KeySystemTrackConfig {
      // The robustness level associated with a given track.
      optional string robustness = 1;
    }
    // Track-specific key system details.
    optional KeySystemTrackConfig key_system_audio_config = 8;
    optional KeySystemTrackConfig key_system_video_config = 9;
  }
  optional KeySystemConfig key_system_config = 4;
}