Agora C++ API Reference for All Platforms
|
13 #include "AgoraRefPtr.h"
15 #include "NGIAgoraCameraCapturer.h"
16 #include "NGIAgoraVideoMixerSource.h"
17 #include "NGIAgoraScreenCapturer.h"
18 #include "NGIAgoraMediaNodeFactory.h"
19 #include "NGIAgoraMediaNode.h"
20 #include "modules/desktop_capture/desktop_capturer.h"
21 #include "api/video/video_frame.h"
28 struct VideoSinkWants;
30 template <
typename V
ideoFrameT>
65 webrtc::VideoFrame& adaptedFrame) = 0;
108 #if defined(__ANDROID__) || defined(TARGET_OS_IPHONE)
112 #if defined(__ANDROID__)
138 virtual void SetCaptureSource(
bool allow_magnification_api,
bool allow_directx_capturer) = 0;
139 virtual void GetCaptureSource(
bool& allow_magnification_api,
bool& allow_directx_capturer) = 0;
165 virtual int onFrame(
const webrtc::VideoFrame& videoFrame) = 0;
232 virtual void onFrame(
const std::string& uid,
const webrtc::VideoFrame& frame) = 0;
240 virtual int onFrame(
const webrtc::VideoFrame& videoFrame) = 0;
int framesPerSecond
Definition: video_node_i.h:191
Definition: video_node_i.h:204
virtual ~IVideoMixerSourceEx()=default
virtual void SetCaptureSource(bool allow_magnification_api, bool allow_directx_capturer)=0
virtual int sendVideoFrame(const media::base::ExternalVideoFrame &videoFrame)=0
CAMERA_OUTPUT_DATA_TYPE
Definition: video_node_i.h:95
Definition: video_node_i.h:77
virtual int GetCaptureType()=0
virtual int setViewEx(uintptr_t handle)
Definition: video_node_i.h:171
virtual void GetCaptureSource(bool &allow_magnification_api, bool &allow_directx_capturer)=0
virtual bool adaptVideoFrame(const media::base::VideoFrame &capturedFrame, media::base::VideoFrame &adaptedFrame)=0
virtual void registerMixedFrameCallback(::rtc::VideoSinkInterface< webrtc::VideoFrame > *dataCallback)=0
Definition: AgoraRefPtr.h:44
static const char *const BUILT_IN_MAJOR_TEE
Definition: video_node_i.h:54
Definition: NGIAgoraMediaNode.h:755
Definition: video_node_i.h:153
@ RENDERER_EXT_OBSERVER
Definition: video_node_i.h:40
virtual void onScreenCaptureStateChanged(IScreenCapturerEx::SCREEN_CAPTURER_STATE state)
Definition: video_node_i.h:155
Definition: common_defines.h:11
SCREEN_CAPTURER_STATE
Definition: video_node_i.h:121
Definition: AgoraBase.h:1971
@ SCREEN_CAPTURER_STOPPED
Definition: video_node_i.h:123
virtual void SetExcludeWindowList(const std::vector< void * > &window_list)=0
virtual int InitUsingLastRegionSetting()=0
std::string image
Definition: video_node_i.h:187
virtual bool adaptVideoFrame(const webrtc::VideoFrame &capturedFrame, webrtc::VideoFrame &adaptedFrame)=0
static const char *const BUILT_IN_PREVIEW_TEE
Definition: video_node_i.h:53
virtual void deRegisterMixedFrameCallback(::rtc::VideoSinkInterface< webrtc::VideoFrame > *dataCallback)=0
virtual void attachUserInfo(uid_t uid, uint64_t state_space)
Definition: video_node_i.h:176
VIDEO_FRAME_TYPE frameType
Definition: video_node_i.h:188
virtual void RegisterCaptureDataCallback(std::weak_ptr<::rtc::VideoSinkInterface< webrtc::VideoFrame >> dataCallback)=0
virtual int unregisterScreenCaptureObserver(IScreenCaptureObserver *observer)
Definition: video_node_i.h:148
virtual ~IVideoEncodedImageCallback()
Definition: video_node_i.h:200
virtual CAMERA_OUTPUT_DATA_TYPE getCameraOutputDataType()=0
virtual bool FocusOnSelectedSource()=0
@ CAMERA_OUTPUT_RAW
Definition: video_node_i.h:96
Definition: NGIAgoraMediaNode.h:613
virtual int registerScreenCaptureObserver(IScreenCaptureObserver *observer)
Definition: video_node_i.h:145
static const char *const BUILT_IN_WATERMARK_FILTER
Definition: video_node_i.h:51
Definition: AgoraAtomicOps.h:21
Definition: video_node_i.h:226
static const char *const BUILT_IN_MINOR_ADAPTER
Definition: video_node_i.h:56
virtual void startMixing()=0
virtual void DeRegisterVideoFrameCallback()=0
Definition: NGIAgoraScreenCapturer.h:18
virtual bool applyMirror()
Definition: video_node_i.h:167
virtual ~IScreenCaptureObserver()
Definition: video_node_i.h:159
VIDEO_CODEC_TYPE
Definition: AgoraBase.h:1439
@ RENDERER_BUILT_IN_RENDERER
Definition: video_node_i.h:39
virtual int CaptureMouseCursor(bool capture)=0
virtual ~IVideoFrameSenderEx()
Definition: video_node_i.h:217
@ RENDERER_NONE
Definition: video_node_i.h:38
VIDEO_ORIENTATION
Definition: AgoraBase.h:1251
virtual void attachStatsSpace(uint64_t stats_space)
Definition: video_node_i.h:69
virtual int StopCapture()=0
virtual int sendVideoFrame(const webrtc::VideoFrame &videoFrame)=0
Definition: NGIAgoraCameraCapturer.h:19
Definition: NGIAgoraVideoTrack.h:245
static const char *const BUILT_IN_MINOR_TEE
Definition: video_node_i.h:55
Definition: video_node_i.h:213
VIDEO_FRAME_TYPE
Definition: AgoraBase.h:1316
virtual void onSinkWantsChanged(const ::rtc::VideoSinkWants &wants)=0
Definition: video_node_i.h:238
virtual bool hasVideoTrack(const std::string &id)=0
Definition: NGIAgoraVideoMixerSource.h:44
virtual void deRegisterFrameCallback(::rtc::VideoSinkInterface< webrtc::VideoFrame > *dataCallback)=0
virtual void registerFrameCallback(::rtc::VideoSinkInterface< webrtc::VideoFrame > *dataCallback)=0
virtual int onFrame(const media::base::VideoFrame &videoFrame)=0
virtual void setPreviewInfo(const PreviewMetaInfo &info)
Definition: video_node_i.h:109
virtual int getHeight() const =0
~IVideoFilterEx()
Definition: video_node_i.h:72
Definition: NGIAgoraMediaNode.h:712
virtual void OnVideoEncodedImage(agora_refptr< VideoEncodedImageData > data)=0
virtual int getWidth() const =0
~IVideoFrameAdapter()
Definition: video_node_i.h:92
virtual int onFrame(const webrtc::VideoFrame &videoFrame)=0
@ CAMERA_OUTPUT_TEXTURE_AND_RAW
Definition: video_node_i.h:98
virtual void observeTxDelay(ILocalVideoTrack *track)=0
virtual bool applyRotation()
Definition: video_node_i.h:169
@ ERR_NOT_SUPPORTED
Definition: AgoraBase.h:496
virtual void ForcedUsingScreenCapture(bool using_screen_capture)=0
VIDEO_ORIENTATION rotation
Definition: video_node_i.h:193
virtual void DeRegisterEncodedImageCallback()=0
Definition: video_node_i.h:198
InternalRendererType
Definition: video_node_i.h:37
virtual int GetScreenDimensions(VideoDimensions &dimension)=0
static const char *const BUILT_IN_ROTATOR
Definition: video_node_i.h:52
virtual void RegisterVideoFrameCallback(::rtc::VideoSinkInterface< webrtc::VideoFrame > *dataCallback)=0
virtual int InitUsingLastScreenSetting(const rtc::Rectangle ®ionRect)=0
virtual webrtc::DesktopCapturer::SourceId GetSourceId()=0
Definition: NGIAgoraMediaNode.h:589
virtual ~IVideoEncodedImageSenderEx()
Definition: video_node_i.h:206
virtual void setCameraSelected(int android_camera_module_selected)=0
Definition: AgoraRefPtr.h:31
virtual void SetFrameRate(int rate)=0
VIDEO_STREAM_TYPE
Definition: AgoraBase.h:1686
virtual int getViewMetaInfo(PreviewMetaInfo &info)
Definition: video_node_i.h:181
virtual ~ICameraCapturerEx()
Definition: video_node_i.h:103
@ SCREEN_CAPTURER_STARTED
Definition: video_node_i.h:122
virtual int onFrame(const webrtc::VideoFrame &videoFrame)=0
Definition: video_node_i.h:119
bool isExternal() override
Definition: video_node_i.h:68
Definition: video_node_i.h:162
virtual ~IScreenCapturerEx()
Definition: video_node_i.h:126
Definition: video_node_i.h:60
Definition: AgoraBase.h:1390
VIDEO_CODEC_TYPE codec
Definition: video_node_i.h:194
static const char *const BUILT_IN_MIRROR_FILTER
Definition: video_node_i.h:50
Definition: video_node_i.h:101
virtual void setCameraOutputDataType(CAMERA_OUTPUT_DATA_TYPE type)
Definition: video_node_i.h:105
Definition: video_node_i.h:186
unsigned int uid_t
Definition: AgoraMediaBase.h:25
int height
Definition: video_node_i.h:190
@ CAMERA_OUTPUT_TEXTURE
Definition: video_node_i.h:97
virtual void setOutputRotation(webrtc::VideoRotation rotation)
Definition: video_node_i.h:89
virtual void onFrame(const std::string &uid, const webrtc::VideoFrame &frame)=0
virtual void RegisterEncodedImageCallback(IVideoEncodedImageCallback *dataCallback)=0
Definition: video_node_i.h:31
static const char *const BUILT_IN_ADAPTER
Definition: video_node_i.h:49
Definition: NGIAgoraMediaNode.h:145
VIDEO_STREAM_TYPE streamType
Definition: video_node_i.h:195
virtual void setOutputFormat(const VideoFormat &format, bool fixed=false)=0
Definition: video_node_i.h:27
virtual void stopMixing()=0
virtual void setCameraPqFirst(bool pq_first)=0
int width
Definition: video_node_i.h:189
virtual int StartCapture()=0