Agora C++ API Reference for All Platforms
Loading...
Searching...
No Matches
NGIAgoraMediaNodeFactory.h
1//
2// Agora SDK
3//
4// Copyright (c) 2019 Agora.io. All rights reserved.
5//
6
7#pragma once // NOLINT(build/header_guard)
8
9#include "AgoraBase.h"
10#include <api/cpp/aosl_ares_class.h>
11
12namespace agora {
13namespace rtc {
14
18class ICameraCapturer;
19class IScreenCapturer;
23class IVideoRenderer;
24class IVideoFilter;
25class IAudioFilter;
26class IVideoSinkBase;
32class IMediaRecorder2;
33
38 public:
51
64
76
77#if !defined(__ANDROID__) && !(defined(__APPLE__) && TARGET_OS_IPHONE) && !defined(__OHOS__)
89#endif
90
102
114
127
140
151
164 virtual agora_refptr<IAudioFilter> createAudioFilter(const char* provider_name,
165 const char* extension_name) = 0;
166
179 virtual agora_refptr<IVideoFilter> createVideoFilter(const char* provider_name,
180 const char* extension_name) = 0;
181
194 virtual agora_refptr<IVideoSinkBase> createVideoSink(const char* provider_name,
195 const char* extension_name) = 0;
196
210
222
232
234
235#if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__OHOS__)
244 virtual agora_refptr<IScreenCapturer2> createScreenCapturer2(const char* provider_name,
245 const char* extension_name) = 0;
246#else
255 virtual agora_refptr<IScreenCapturer> createScreenCapturer(const char* provider_name,
256 const char* extension_name) = 0;
257#endif
258
259 protected:
261};
262
263} // namespace rtc
264} // namespace agora
Definition AgoraRefPtr.h:31
Definition AgoraRefPtr.h:44
Definition NGIAgoraMediaNode.h:277
Definition AgoraExtensions.h:12
Definition NGIAgoraMediaNode.h:244
Definition NGIAgoraCameraCapturer.h:20
Definition NGIAgoraMediaNodeFactory.h:37
virtual agora_refptr< IMediaStreamingSource > createMediaStreamingSource()=0
Creates a media streaming source object and returns the pointer.
virtual agora_refptr< ICameraCapturer > createCameraCapturer()=0
virtual agora_refptr< IAudioEncodedFrameSender > createAudioEncodedFrameSender()=0
virtual agora_refptr< IVideoFrameTransceiver > createVideoFrameTransceiver()=0
virtual agora_refptr< IMediaRecorder2 > createMediaRecorder()=0
virtual agora_refptr< IVideoFilter > createVideoFilter(const char *provider_name, const char *extension_name)=0
virtual agora_refptr< IAudioPcmDataSender > createAudioPcmDataSender()=0
virtual agora_refptr< IAudioFilter > createAudioFilter(const char *provider_name, const char *extension_name)=0
virtual agora_refptr< IVideoMixerSource > createVideoMixer()=0
virtual agora_refptr< IScreenCapturer > createScreenCapturer()=0
virtual agora_refptr< IMediaPlayerSource > createMediaPlayerSource(media::base::MEDIA_PLAYER_SOURCE_TYPE type=agora::media::base::MEDIA_PLAYER_SOURCE_DEFAULT)=0
virtual agora_refptr< IScreenCapturer > createScreenCapturer(const char *provider_name, const char *extension_name)=0
virtual agora_refptr< IVideoSinkBase > createVideoSink(const char *provider_name, const char *extension_name)=0
virtual agora_refptr< IVideoEncodedImageSender > createVideoEncodedImageSender()=0
virtual agora_refptr< IVideoFrameSender > createVideoFrameSender()=0
virtual agora_refptr< IVideoRenderer > createVideoRenderer()=0
virtual agora_refptr< IMediaPacketSender > createMediaPacketSender()=0
virtual agora_refptr< IScreenCapturer2 > createScreenCapturer2(const char *provider_name, const char *extension_name)=0
~IMediaNodeFactory()
Definition NGIAgoraMediaNodeFactory.h:260
Definition NGIAgoraMediaNode.h:361
Definition IAgoraMediaPlayerSource.h:22
Definition IAgoraMediaRecorder2.h:19
The IMediaStreamingSource class provides access to a media streaming source demuxer....
Definition IAgoraMediaStreamingSource.h:97
Definition NGIAgoraRemoteAudioMixerSource.h:22
Definition NGIAgoraScreenCapturer.h:146
Definition NGIAgoraScreenCapturer.h:19
Definition NGIAgoraMediaNode.h:470
Definition NGIAgoraMediaNode.h:94
Definition NGIAgoraMediaNode.h:446
Definition NGIAgoraMediaNode.h:648
Definition NGIAgoraVideoMixerSource.h:46
Definition NGIAgoraMediaNode.h:569
Definition NGIAgoraMediaNode.h:167
MEDIA_PLAYER_SOURCE_TYPE
Definition AgoraMediaBase.h:1122
@ MEDIA_PLAYER_SOURCE_DEFAULT
Definition AgoraMediaBase.h:1128
Definition AgoraExtensions.h:5
Definition AgoraAtomicOps.h:21