LeviLamina
Loading...
Searching...
No Matches
AudioMixer.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 AudioFrame; }
11// clang-format on
12
13namespace webrtc {
14
16public:
17 // AudioMixer inner types declare
18 // clang-format off
19 class Source;
20 // clang-format on
21
22 // AudioMixer inner types define
23 class Source {
24 public:
25 // Source inner types define
26 enum class AudioFrameInfo : int {
27 KNormal = 0,
28 KMuted = 1,
29 KError = 2,
30 };
31
32 public:
33 // virtual functions
34 // NOLINTBEGIN
35 virtual ::webrtc::AudioMixer::Source::AudioFrameInfo GetAudioFrameWithInfo(int, ::webrtc::AudioFrame*) = 0;
36
37 virtual int Ssrc() const = 0;
38
39 virtual int PreferredSampleRate() const = 0;
40
41 virtual ~Source() = default;
42 // NOLINTEND
43
44 public:
45 // virtual function thunks
46 // NOLINTBEGIN
47
48 // NOLINTEND
49 };
50
51public:
52 // virtual functions
53 // NOLINTBEGIN
54 virtual bool AddSource(::webrtc::AudioMixer::Source*) = 0;
55
56 virtual void RemoveSource(::webrtc::AudioMixer::Source*) = 0;
57
58 virtual void Mix(uint64, ::webrtc::AudioFrame*) = 0;
59
60 virtual ~AudioMixer() /*override*/ = default;
61 // NOLINTEND
62
63public:
64 // virtual function thunks
65 // NOLINTBEGIN
66
67 // NOLINTEND
68};
69
70} // namespace webrtc
Definition AudioFrame.h:7
Definition AudioMixer.h:23
Definition AudioMixer.h:15
Definition RefCountInterface.h:10