LeviLamina
Loading...
Searching...
No Matches
AudioEncoder.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/rtc/BufferT.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace webrtc { class DataRate; }
11namespace webrtc { class RtcEventLog; }
12namespace webrtc { class TimeDelta; }
13namespace webrtc { struct ANAStats; }
14namespace webrtc { struct BitrateAllocationUpdate; }
15// clang-format on
16
17namespace webrtc {
18
20public:
21 // AudioEncoder inner types declare
22 // clang-format off
23 struct EncodedInfo;
24 struct EncodedInfoLeaf;
25 // clang-format on
26
27 // AudioEncoder inner types define
28 enum class CodecType : int {
29 KOther = 0,
30 KOpus = 1,
31 KIsac = 2,
32 KPcmA = 3,
33 KPcmU = 4,
34 KG722 = 5,
35 KIlbc = 6,
36 KMaxLoggedAudioCodecTypes = 7,
37 };
38
40 public:
41 // member variables
42 // NOLINTBEGIN
49 // NOLINTEND
50
51 public:
52 // prevent constructor by default
53 EncodedInfoLeaf& operator=(EncodedInfoLeaf const&);
56 };
57
59 public:
60 // member variables
61 // NOLINTBEGIN
63 // NOLINTEND
64
65 public:
66 // prevent constructor by default
67 EncodedInfo& operator=(EncodedInfo const&);
70 };
71
72 enum class Application : int {
73 KSpeech = 0,
74 KAudio = 1,
75 };
76
77public:
78 // virtual functions
79 // NOLINTBEGIN
80 // vIndex: 0
81 virtual ~AudioEncoder() = default;
82
83 // vIndex: 1
84 virtual int SampleRateHz() const = 0;
85
86 // vIndex: 2
87 virtual uint64 NumChannels() const = 0;
88
89 // vIndex: 3
90 virtual int RtpTimestampRateHz() const;
91
92 // vIndex: 4
93 virtual uint64 Num10MsFramesInNextPacket() const = 0;
94
95 // vIndex: 5
96 virtual uint64 Max10MsFramesInAPacket() const = 0;
97
98 // vIndex: 6
99 virtual int GetTargetBitrate() const = 0;
100
101 // vIndex: 7
102 virtual void Reset() = 0;
103
104 // vIndex: 8
105 virtual bool SetFec(bool);
106
107 // vIndex: 9
108 virtual bool SetDtx(bool);
109
110 // vIndex: 10
111 virtual bool GetDtx() const;
112
113 // vIndex: 11
114 virtual bool SetApplication(::webrtc::AudioEncoder::Application);
115
116 // vIndex: 12
117 virtual void SetMaxPlaybackRate(int);
118
119 // vIndex: 13
120 virtual void SetTargetBitrate(int);
121
122 // vIndex: 14
123 virtual ::rtc::ArrayView<::std::unique_ptr<::webrtc::AudioEncoder>> ReclaimContainedEncoders();
124
125 // vIndex: 15
126 virtual bool EnableAudioNetworkAdaptor(::std::string const&, ::webrtc::RtcEventLog*);
127
128 // vIndex: 16
129 virtual void DisableAudioNetworkAdaptor();
130
131 // vIndex: 17
132 virtual void OnReceivedUplinkPacketLossFraction(float);
133
134 // vIndex: 18
135 virtual void OnReceivedUplinkRecoverablePacketLossFraction(float);
136
137 // vIndex: 19
138 virtual void OnReceivedTargetAudioBitrate(int);
139
140 // vIndex: 20
141 virtual void OnReceivedUplinkBandwidth(int, ::std::optional<int64>);
142
143 // vIndex: 21
144 virtual void OnReceivedUplinkAllocation(::webrtc::BitrateAllocationUpdate);
145
146 // vIndex: 22
147 virtual void OnReceivedRtt(int);
148
149 // vIndex: 23
150 virtual void OnReceivedOverhead(uint64);
151
152 // vIndex: 24
153 virtual void SetReceiverFrameLengthRange(int, int);
154
155 // vIndex: 25
156 virtual ::webrtc::ANAStats GetANAStats() const;
157
158 // vIndex: 26
159 virtual ::std::optional<::std::pair<::webrtc::TimeDelta, ::webrtc::TimeDelta>> GetFrameLengthRange() const = 0;
160
161 // vIndex: 27
162 virtual ::std::optional<::std::pair<::webrtc::DataRate, ::webrtc::DataRate>> GetBitrateRange() const;
163
164 // vIndex: 28
165 virtual ::webrtc::AudioEncoder::EncodedInfo
167 // NOLINTEND
168
169public:
170 // destructor thunk
171 // NOLINTBEGIN
172
173 // NOLINTEND
174
175public:
176 // virtual function thunks
177 // NOLINTBEGIN
178
179 // NOLINTEND
180};
181
182} // namespace webrtc
Definition _HeaderOutputPredefine.h:238
Definition BufferT.h:8
Definition AudioEncoder.h:19
Definition RtcEventLog.h:13
Definition Alias.h:14
Definition AudioEncoder.h:39
Definition AudioEncoder.h:58
Definition BitrateAllocationUpdate.h:7