Agora C++ API Reference for All Platforms
Loading...
Searching...
No Matches
media_node_factory_i.h
1//
2// Agora Media SDK
3//
4// Created by Sting Feng in 2015-05.
5// Copyright (c) 2015 Agora IO. All rights reserved.
6//
7#pragma once
8
9#include "AgoraRefPtr.h"
10#include "IAgoraRtcEngine.h"
11
12#include "NGIAgoraMediaNodeFactory.h"
13// #include "engine_adapter/audio/audio_node_interface.h"
14
15#include "video_node_i.h"
16#include "screen_capture_i.h"
17
18namespace agora {
19namespace rtc {
20
22 public:
24
28
41 media::IVideoFrameObserver* observer, VideoTrackInfo trackInfo) = 0;
42
56 media::IVideoFrameObserver* observer, VideoTrackInfo trackInfo) = 0;
58#if !(defined(__ANDROID__) || (defined (TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__OHOS__))
60#endif
68 const char* extension_name) = 0;
70 const char* extension_name) = 0;
72 const char* extension_name) = 0;
80#if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__OHOS__)
82 const char* provider_name, const char* extension_name) = 0;
83#else
85 const char* provider_name, const char* extension_name) = 0;
86#endif
87};
88
90 public:
92
93 virtual void OnMediaPacket(const uint8_t* packet, size_t length,
94 const media::base::PacketOptions& options) = 0;
95};
96
98 public:
100
101 virtual void RegisterMediaPacketCallback(IMediaPacketCallback* dataCallback) = 0;
103};
104
106 public:
108
109 virtual void OnPeerMediaControlPacket(user_id_t userId, const uint8_t* packet, size_t length) = 0;
110 virtual void OnBroadcastMediaControlPacket(const uint8_t* packet, size_t length) = 0;
111};
112
114 public:
116
118 IMediaControlPacketCallback* ctrlDataCallback) = 0;
120 virtual int sendBroadcastMediaControlPacketLLApiInternal(const uint8_t* packet,
121 size_t length) = 0;
122};
123
124} // namespace rtc
125} // namespace agora
Definition AgoraRefPtr.h:44
Definition AgoraMediaBase.h:1664
Definition media_node_factory_i.h:105
virtual ~IMediaControlPacketCallback()
Definition media_node_factory_i.h:107
virtual void OnPeerMediaControlPacket(user_id_t userId, const uint8_t *packet, size_t length)=0
virtual void OnBroadcastMediaControlPacket(const uint8_t *packet, size_t length)=0
Definition media_node_factory_i.h:113
virtual void RegisterMediaControlPacketCallback(IMediaControlPacketCallback *ctrlDataCallback)=0
virtual ~IMediaControlPacketSenderEx()
Definition media_node_factory_i.h:115
virtual int sendBroadcastMediaControlPacketLLApiInternal(const uint8_t *packet, size_t length)=0
virtual void UnregisterMediaControlPacketCallback()=0
Definition NGIAgoraMediaNode.h:387
Definition media_node_factory_i.h:21
virtual agora_refptr< IAudioEncodedFrameSender > createAudioEncodedFrameSenderLLApiInternal()=0
virtual agora::agora_refptr< agora::rtc::IVideoEncodedImageSenderEx > createVideoEncodedImageSenderLLApiInternal()=0
virtual agora_refptr< IAudioFilter > createAudioFilterLLApiInternal(const char *provider_name, const char *extension_name)=0
virtual agora_refptr< rtc::IMediaPlayerSource > createMediaPlayerSourceLLApiInternal(media::base::MEDIA_PLAYER_SOURCE_TYPE type)=0
virtual agora_refptr< IVideoFilter > createVideoFilterLLApiInternal(const char *provider_name, const char *extension_name)=0
virtual agora_refptr< IScreenCapturerEx > createScreenCapturerLLApiInternal()=0
virtual agora_refptr< rtc::IObservableVideoFilter > createObservableVideoFilter(media::IVideoFrameObserver *observer, VideoTrackInfo trackInfo)=0
virtual agora_refptr< IScreenCapturerEx2 > createScreenCapturer2LLApiInternal(const char *provider_name, const char *extension_name)=0
virtual ~IMediaNodeFactoryEx()
Definition media_node_factory_i.h:23
virtual agora_refptr< ICameraCapturerEx > createCameraCapturerLLApiInternal()=0
virtual agora_refptr< rtc::IObservableVideoSink > createObservableVideoSink(media::IVideoFrameObserver *observer, VideoTrackInfo trackInfo)=0
virtual agora_refptr< IMediaPacketSender > createMediaPacketSenderLLApiInternal()=0
virtual agora_refptr< IMediaRecorder2 > createMediaRecorderLLApiInternal()=0
virtual agora_refptr< IVideoRenderer > createVideoRendererLLApiInternal()=0
virtual agora_refptr< IVideoSinkBase > createVideoSinkLLApiInternal(const char *provider_name, const char *extension_name)=0
virtual agora_refptr< IAudioPcmDataSender > createAudioPcmDataSenderLLApiInternal()=0
virtual agora_refptr< IVideoFrameTransceiverEx > createVideoFrameTransceiverLLApiInternal()=0
virtual agora_refptr< rtc::IMediaStreamingSource > createMediaStreamingSourceLLApiInternal()=0
virtual agora_refptr< IScreenCapturerEx > createScreenCapturerLLApiInternal(const char *provider_name, const char *extension_name)=0
virtual agora_refptr< IVideoFrameSenderEx > createVideoFrameSenderLLApiInternal()=0
virtual agora_refptr< IVideoFrameAdapter > createVideoFrameAdapter()=0
virtual agora_refptr< IVideoMixerSourceEx > createVideoMixerLLApiInternal()=0
Definition NGIAgoraMediaNodeFactory.h:37
Definition media_node_factory_i.h:89
virtual ~IMediaPacketCallback()
Definition media_node_factory_i.h:91
virtual void OnMediaPacket(const uint8_t *packet, size_t length, const media::base::PacketOptions &options)=0
Definition media_node_factory_i.h:97
virtual void RegisterMediaPacketCallback(IMediaPacketCallback *dataCallback)=0
virtual ~IMediaPacketSenderEx()
Definition media_node_factory_i.h:99
virtual void UnregisterMediaPacketCallback()=0
Definition NGIAgoraMediaNode.h:361
MEDIA_PLAYER_SOURCE_TYPE
Definition AgoraMediaBase.h:1122
Definition AgoraExtensions.h:5
Definition AgoraAtomicOps.h:21
const char * user_id_t
Definition AgoraBase.h:853
Definition AgoraMediaBase.h:322
Definition AgoraBase.h:3694