Agora C++ API Reference for All Platforms
Public Member Functions | List of all members
agora::rtc::IVideoEncoderProvider Class Referenceabstract

Inherits agora::rtc::IExtensionProvider.

Public Member Functions

virtual ~IVideoEncoderProvider ()
 
virtual int enumerateEncoders (VideoCodecInfo *info_list, int &count)=0
 
virtual webrtc::VideoEncoder * createEncoder (const VideoCodecInfo &info)=0
 
virtual int destroyEncoder (webrtc::VideoEncoder *encoder)=0
 
virtual int getCustomProperty (const VideoCodecInfo &info, const char *key, void *data)
 
virtual int setCustomProperty (const VideoCodecInfo &info, const char *key, const void *data)
 
- Public Member Functions inherited from agora::rtc::IExtensionProvider
virtual void setExtensionControl (IExtensionControl *control)
 
virtual void enumerateExtensions (ExtensionMetaInfo *extension_list, int &extension_count)
 
virtual agora_refptr< IAudioFiltercreateAudioFilter (const char *name)
 
virtual agora_refptr< IExtensionVideoFiltercreateVideoFilter (const char *name)
 
virtual agora_refptr< IVideoSinkBasecreateVideoSink (const char *name)
 
virtual void setProperty (const char *key, const char *value)
 
- Public Member Functions inherited from agora::RefCountInterface
virtual void AddRef () const =0
 
virtual RefCountReleaseStatus Release () const =0
 
virtual bool HasOneRef () const =0
 

Additional Inherited Members

- Public Types inherited from agora::rtc::IExtensionProvider
enum  EXTENSION_TYPE {
  AUDIO_FILTER, VIDEO_PRE_PROCESSING_FILTER, VIDEO_POST_PROCESSING_FILTER, AUDIO_SINK,
  VIDEO_SINK, AUDIO_RECORDING_LOCAL_PLAYBACK_FILTER = 10000, AUDIO_POST_PROCESSING_FILTER = 10001, AUDIO_REMOTE_USER_PLAYBACK_FILTER = 10002,
  AUDIO_PCM_SOURCE_FILTER = 10003, AUDIO_PCM_SOURCE_SENDING_FILTER = 10004, AUDIO_PCM_SOURCE_LOCAL_PLAYBACK_FILTER = 10005, AUDIO_REMOTE_MIXED_PLAYBACK_FILTER = 10006,
  UNKNOWN = 0xFFFF
}
 
- Protected Member Functions inherited from agora::rtc::IExtensionProvider
virtual ~IExtensionProvider ()
 
- Protected Member Functions inherited from agora::RefCountInterface
virtual ~RefCountInterface ()
 

Constructor & Destructor Documentation

◆ ~IVideoEncoderProvider()

virtual agora::rtc::IVideoEncoderProvider::~IVideoEncoderProvider ( )
inlinevirtual

Member Function Documentation

◆ enumerateEncoders()

virtual int agora::rtc::IVideoEncoderProvider::enumerateEncoders ( VideoCodecInfo info_list,
int &  count 
)
pure virtual

◆ createEncoder()

virtual webrtc::VideoEncoder* agora::rtc::IVideoEncoderProvider::createEncoder ( const VideoCodecInfo info)
pure virtual

◆ destroyEncoder()

virtual int agora::rtc::IVideoEncoderProvider::destroyEncoder ( webrtc::VideoEncoder *  encoder)
pure virtual

◆ getCustomProperty()

virtual int agora::rtc::IVideoEncoderProvider::getCustomProperty ( const VideoCodecInfo info,
const char *  key,
void *  data 
)
inlinevirtual

◆ setCustomProperty()

virtual int agora::rtc::IVideoEncoderProvider::setCustomProperty ( const VideoCodecInfo info,
const char *  key,
const void *  data 
)
inlinevirtual