LeviLamina
Loading...
Searching...
No Matches
VideoRtpTrackSource.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/rtc/VideoSinkInterface.h"
7#include "mc/external/rtc/VideoSourceInterface.h"
8#include "mc/external/webrtc/VideoTrackSource.h"
9
10// auto generated forward declare list
11// clang-format off
12namespace webrtc { class RecordableEncodedFrame; }
13namespace webrtc { class VideoFrame; }
14// clang-format on
15
16namespace webrtc {
17
19public:
20 // VideoRtpTrackSource inner types declare
21 // clang-format off
22 class Callback;
23 // clang-format on
24
25 // VideoRtpTrackSource inner types define
26 class Callback {
27 public:
28 // virtual functions
29 // NOLINTBEGIN
30 // vIndex: 0
31 virtual ~Callback() = default;
32
33 // vIndex: 1
34 virtual void OnGenerateKeyFrame() = 0;
35
36 // vIndex: 2
37 virtual void OnEncodedSinkEnabled(bool) = 0;
38 // NOLINTEND
39
40 public:
41 // virtual function thunks
42 // NOLINTBEGIN
43
44 // NOLINTEND
45 };
46
47public:
48 // member variables
49 // NOLINTBEGIN
55 // NOLINTEND
56
57public:
58 // prevent constructor by default
62
63public:
64 // virtual functions
65 // NOLINTBEGIN
66 // vIndex: 13
67 virtual ::rtc::VideoSourceInterface<::webrtc::VideoFrame>* source() /*override*/;
68
69 // vIndex: 8
70 virtual bool SupportsEncodedOutput() const /*override*/;
71
72 // vIndex: 9
73 virtual void GenerateKeyFrame() /*override*/;
74
75 // vIndex: 10
76 virtual void AddEncodedSink(::rtc::VideoSinkInterface<::webrtc::RecordableEncodedFrame>* sink) /*override*/;
77
78 // vIndex: 11
79 virtual void RemoveEncodedSink(::rtc::VideoSinkInterface<::webrtc::RecordableEncodedFrame>* sink) /*override*/;
80
81 // vIndex: 0
82 virtual ~VideoRtpTrackSource() /*override*/;
83 // NOLINTEND
84
85public:
86 // member functions
87 // NOLINTBEGIN
88 MCNAPI void BroadcastRecordableEncodedFrame(::webrtc::RecordableEncodedFrame const& frame) const;
89
90 MCNAPI void ClearCallback();
91
92 MCNAPI explicit VideoRtpTrackSource(::webrtc::VideoRtpTrackSource::Callback* callback);
93
94 MCNAPI ::rtc::VideoSinkInterface<::webrtc::VideoFrame>* sink();
95 // NOLINTEND
96
97public:
98 // constructor thunks
99 // NOLINTBEGIN
100 MCNAPI void* $ctor(::webrtc::VideoRtpTrackSource::Callback* callback);
101 // NOLINTEND
102
103public:
104 // destructor thunk
105 // NOLINTBEGIN
106 MCNAPI void $dtor();
107 // NOLINTEND
108
109public:
110 // virtual function thunks
111 // NOLINTBEGIN
112 MCNAPI ::rtc::VideoSourceInterface<::webrtc::VideoFrame>* $source();
113
114 MCNAPI bool $SupportsEncodedOutput() const;
115
116 MCNAPI void $GenerateKeyFrame();
117
118 MCNAPI void $AddEncodedSink(::rtc::VideoSinkInterface<::webrtc::RecordableEncodedFrame>* sink);
119
120 MCNAPI void $RemoveEncodedSink(::rtc::VideoSinkInterface<::webrtc::RecordableEncodedFrame>* sink);
121 // NOLINTEND
122
123public:
124 // vftables
125 // NOLINTBEGIN
126 MCNAPI static void** $vftable();
127
128 MCNAPI static void** $vftableForRefCountInterface();
129
130 MCNAPI static void** $vftableForNotifierInterface();
131 // NOLINTEND
132};
133
134} // namespace webrtc
Definition RecordableEncodedFrame.h:18
Definition VideoFrame.h:19
Definition VideoRtpTrackSource.h:26
Definition VideoRtpTrackSource.h:18
MCAPI void $RemoveEncodedSink(::rtc::VideoSinkInterface<::webrtc::RecordableEncodedFrame > *sink)
MCAPI void BroadcastRecordableEncodedFrame(::webrtc::RecordableEncodedFrame const &frame) const
MCAPI ::rtc::VideoSourceInterface<::webrtc::VideoFrame > * $source()
static MCAPI void ** $vftableForRefCountInterface()
MCAPI void $AddEncodedSink(::rtc::VideoSinkInterface<::webrtc::RecordableEncodedFrame > *sink)
static MCAPI void ** $vftableForNotifierInterface()
MCAPI ::rtc::VideoSinkInterface<::webrtc::VideoFrame > * sink()
MCAPI bool $SupportsEncodedOutput() const
MCAPI void * $ctor(::webrtc::VideoRtpTrackSource::Callback *callback)
static MCAPI void ** $vftable()
Definition VideoTrackSource.h:21
Definition Alias.h:14