Agora Java API Reference for Android
Public Member Functions | List of all members
agora::rtc::IExtensionVideoFilter::Control Class Referenceabstract

#include <NGIAgoraMediaNode.h>

Inheritance diagram for agora::rtc::IExtensionVideoFilter::Control:
agora::RefCountInterface

Public Member Functions

virtual ProcessResult deliverVideoFrame (agora::agora_refptr< IVideoFrame > frame)=0
 Filter can invoke this function to deliver the processed frame to SDK if the Process Mode is designated as "kAsync" by the filter via "getProcessMode". More...
 
virtual agora::agora_refptr< IVideoFrameMemoryPoolgetMemoryPool ()=0
 Filter can invoke this function to get the IVideoFrameMemoryPool object if a new IVideoFrame data object is needed.
 
virtual int postEvent (const char *key, const char *value)=0
 Post an event and notify the end users. More...
 
virtual void printLog (commons::LOG_LEVEL level, const char *format,...)=0
 print log to the SDK. More...
 
virtual void disableMe (int error, const char *msg)=0
 Ask SDK to disable the current filter if a fatal error is detected. More...
 
- Public Member Functions inherited from agora::RefCountInterface
virtual void AddRef () const =0
 
virtual RefCountReleaseStatus Release () const =0
 
virtual bool HasOneRef () const =0
 

Detailed Description

The IExtensionVideoFilter::Control class.

This class defines the interfaces that the extension filter can leverage to interact with the SDK. The "IExtensionVideoFilter::Control" object will be passed to the filter when SDK invoke the filter's "start" interface.

Member Function Documentation

◆ deliverVideoFrame()

virtual ProcessResult agora::rtc::IExtensionVideoFilter::Control::deliverVideoFrame ( agora::agora_refptr< IVideoFrame frame)
pure virtual

Filter can invoke this function to deliver the processed frame to SDK if the Process Mode is designated as "kAsync" by the filter via "getProcessMode".

Parameters
framethe processed video frame
Returns
see ProcessResult

◆ postEvent()

virtual int agora::rtc::IExtensionVideoFilter::Control::postEvent ( const char *  key,
const char *  value 
)
pure virtual

Post an event and notify the end users.

Parameters
key'\0' ended string that describes the key of the event
value'\0' ended string that describes the value of the event

◆ printLog()

virtual void agora::rtc::IExtensionVideoFilter::Control::printLog ( commons::LOG_LEVEL  level,
const char *  format,
  ... 
)
pure virtual

print log to the SDK.

Parameters
levelLog level agora::commons::LOG_LEVEL
formatlog formatter string
...variadic arguments

◆ disableMe()

virtual void agora::rtc::IExtensionVideoFilter::Control::disableMe ( int  error,
const char *  msg 
)
pure virtual

Ask SDK to disable the current filter if a fatal error is detected.

Parameters
errorerror code
msgerror message