LeviLamina
Loading...
Searching...
No Matches
VideoEncoderConfig.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/webrtc/RefCountInterface.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace webrtc { class FieldTrialsView; }
11namespace webrtc { struct VideoCodecAV1; }
12namespace webrtc { struct VideoCodecVP8; }
13namespace webrtc { struct VideoCodecVP9; }
14namespace webrtc { struct VideoStream; }
15// clang-format on
16
17namespace webrtc {
18
19class VideoEncoderConfig {
20public:
21 // VideoEncoderConfig inner types declare
22 // clang-format off
28 // clang-format on
29
30 // VideoEncoderConfig inner types define
31 enum class ContentType : int {
32 KRealtimeVideo = 0,
33 KScreen = 1,
34 };
35
37 public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual void FillVideoCodecVp8(::webrtc::VideoCodecVP8*) const;
41
42 virtual void FillVideoCodecVp9(::webrtc::VideoCodecVP9*) const;
43
44 virtual void FillVideoCodecAv1(::webrtc::VideoCodecAV1*) const;
45
46 virtual ~EncoderSpecificSettings() /*override*/ = default;
47 // NOLINTEND
48 };
49
51 public:
52 // virtual functions
53 // NOLINTBEGIN
54 virtual ::std::vector<::webrtc::VideoStream>
55 CreateEncoderStreams(::webrtc::FieldTrialsView const&, int, int, ::webrtc::VideoEncoderConfig const&) = 0;
56
57 virtual ~VideoStreamFactoryInterface() /*override*/ = default;
58 // NOLINTEND
59 };
60
61 class Av1EncoderSpecificSettings : public ::webrtc::VideoEncoderConfig::EncoderSpecificSettings {
62 public:
63 // member variables
64 // NOLINTBEGIN
66 // NOLINTEND
67
68 public:
69 // prevent constructor by default
70 Av1EncoderSpecificSettings& operator=(Av1EncoderSpecificSettings const&);
71 Av1EncoderSpecificSettings(Av1EncoderSpecificSettings const&);
72 Av1EncoderSpecificSettings();
73
74 public:
75 // virtual functions
76 // NOLINTBEGIN
77 virtual void FillVideoCodecAv1(::webrtc::VideoCodecAV1*) const /*override*/;
78
79 virtual ~Av1EncoderSpecificSettings() /*override*/ = default;
80 // NOLINTEND
81 };
82
83 class Vp8EncoderSpecificSettings : public ::webrtc::VideoEncoderConfig::EncoderSpecificSettings {
84 public:
85 // member variables
86 // NOLINTBEGIN
88 // NOLINTEND
89
90 public:
91 // prevent constructor by default
92 Vp8EncoderSpecificSettings& operator=(Vp8EncoderSpecificSettings const&);
93 Vp8EncoderSpecificSettings(Vp8EncoderSpecificSettings const&);
94 Vp8EncoderSpecificSettings();
95
96 public:
97 // virtual functions
98 // NOLINTBEGIN
99 virtual void FillVideoCodecVp8(::webrtc::VideoCodecVP8*) const /*override*/;
100
101 virtual ~Vp8EncoderSpecificSettings() /*override*/ = default;
102 // NOLINTEND
103 };
104
105 class Vp9EncoderSpecificSettings : public ::webrtc::VideoEncoderConfig::EncoderSpecificSettings {
106 public:
107 // member variables
108 // NOLINTBEGIN
110 // NOLINTEND
111
112 public:
113 // prevent constructor by default
114 Vp9EncoderSpecificSettings& operator=(Vp9EncoderSpecificSettings const&);
115 Vp9EncoderSpecificSettings(Vp9EncoderSpecificSettings const&);
116 Vp9EncoderSpecificSettings();
117
118 public:
119 // virtual functions
120 // NOLINTBEGIN
121 virtual void FillVideoCodecVp9(::webrtc::VideoCodecVP9*) const /*override*/;
122
123 virtual ~Vp9EncoderSpecificSettings() /*override*/ = default;
124 // NOLINTEND
125 };
126
127public:
128 // member variables
129 // NOLINTBEGIN
145 // NOLINTEND
146
147public:
148 // prevent constructor by default
149 VideoEncoderConfig& operator=(VideoEncoderConfig const&);
150 VideoEncoderConfig(VideoEncoderConfig const&);
151 VideoEncoderConfig();
152};
153
154} // namespace webrtc
Definition FieldTrialsView.h:7
Definition RefCountInterface.h:10
Definition VideoEncoderConfig.h:36
Definition VideoEncoderConfig.h:19
Definition Alias.h:14
Definition VideoCodecAV1.h:7
Definition VideoCodecVP8.h:7
Definition VideoCodecVP9.h:7
Definition VideoStream.h:7