|
Agora Java API Reference for Android
|
#include <NGIAgoraMediaNode.h>
Classes | |
| class | Control |
Public Types | |
| enum | ProcessMode { kSync, kAsync } |
| enum | ProcessResult { kSuccess, kBypass, kDrop } |
Public Member Functions | |
| virtual void | getProcessMode (ProcessMode &mode, bool &independent_thread)=0 |
| SDK will invoke this API first to get the filter's requested process mode ProcessMode. More... | |
| virtual int | start (agora::agora_refptr< Control > control)=0 |
| SDK will invoke this API before feeding video frame data to the filter. Filter can perform its initialization/preparation job in this step. More... | |
| virtual int | stop ()=0 |
| SDK will invoke this API when the data stream is about to stop. Filter can perform cleanup jobs in this step. More... | |
| virtual void | getVideoFormatWanted (VideoFrameData::Type &type, RawPixelBuffer::Format &format)=0 |
| SDK will invoke this API every time before sending data to the filter. Filter can desigante the type VideoFrameInfo::Type and format MemPixelBuffer::Format of the next frame. SDK will then try to perform type / format conversion before sending data to the filter. More... | |
| virtual ProcessResult | pendVideoFrame (agora::agora_refptr< IVideoFrame > frame) |
| SDK will invoke this API to send video frame to the filter if process mode is "Async". Filter invokes control's "deliverFrame" to send back the frame after processing. More... | |
| virtual ProcessResult | adaptVideoFrame (agora::agora_refptr< IVideoFrame > in, agora::agora_refptr< IVideoFrame > &out) |
| SDK will invoke this API to send video frame to the filter if process mode is "Sync". More... | |
| virtual bool | getRotationApplied () |
| virtual bool | isExtensionFilter () |
| virtual bool | adaptVideoFrame (const media::base::VideoFrame &capturedFrame, media::base::VideoFrame &adaptedFrame) |
Public Member Functions inherited from agora::rtc::IVideoFilter | |
| virtual void | setEnabled (bool enable) |
| virtual bool | isEnabled () |
| virtual int | setProperty (const char *key, const void *buf, size_t buf_size) |
| virtual int | getProperty (const char *key, void *buf, size_t buf_size) |
| virtual bool | onDataStreamWillStart () |
| virtual void | onDataStreamWillStop () |
| virtual bool | isExternal () |
Public Member Functions inherited from agora::RefCountInterface | |
| virtual void | AddRef () const =0 |
| virtual RefCountReleaseStatus | Release () const =0 |
| virtual bool | HasOneRef () const =0 |
The IExtensionVideoFilter class.
This class defines the interfaces that a external video extension provider can implement so as to be loaded by SDK as an "3rd party extension" for video pre- or post- processing.
|
pure virtual |
SDK will invoke this API first to get the filter's requested process mode ProcessMode.
| mode | [out] filter assign its desired the process mode ProcessMode |
| independent_thread | deprecated. SDK will ignore this parameter. |
|
pure virtual |
SDK will invoke this API before feeding video frame data to the filter. Filter can perform its initialization/preparation job in this step.
| control | object to IExtensionFilter::Control that pass to the filter which can be used for future interaction with the SDK |
|
pure virtual |
SDK will invoke this API when the data stream is about to stop. Filter can perform cleanup jobs in this step.
|
pure virtual |
SDK will invoke this API every time before sending data to the filter. Filter can desigante the type VideoFrameInfo::Type and format MemPixelBuffer::Format of the next frame. SDK will then try to perform type / format conversion before sending data to the filter.
| type | requested type of the next frame |
| format | requested formant of the next frame |
|
virtual |
SDK will invoke this API to send video frame to the filter if process mode is "Async". Filter invokes control's "deliverFrame" to send back the frame after processing.
| frame | frame pending for processing |
|
virtual |
SDK will invoke this API to send video frame to the filter if process mode is "Sync".
| frame | frame pending for processing |
|
virtual |
This function indicates if the filter is implemented by third-party providers.
true: The filter is implemented by third-party providers.false: otherwise. Reimplemented from agora::rtc::IVideoFilter.
|
virtual |
Adapts the video frame.
| capturedFrame | The reference to the captured video frame that you want to adapt. |
| adaptedFrame | The reference to the adapted video frame. |
true: Success.false: Failure, if, for example, the IVideofilter object drops the video frame. Implements agora::rtc::IVideoFilterBase.
1.8.18