Agora RTC Objective-C API Reference Refactor

Public Member Functions
IVideoFrame Class Referenceabstract

Inherits RefCountInterface.

## Public Member Functions
virtual int | getVideoFrameData (VideoFrameData &data) const =0
virtual int | fillVideoFrameData (const VideoFrameData &data)=0
virtual int | getVideoFrameMetaData (VideoFrameMetaDataType type, void *data)=0
virtual int | fillVideoFrameMetaData (VideoFrameMetaDataType type, const void *data)=0

## Detailed Description

The IVideoFrame class defines the interface to send video frame data to the SDK or get video frame data from the SDK.

## Constructor & Destructor Documentation

## ◆ ~IVideoFrame()

~IVideoFrame | ( |  | ) |
| inline protected

## Member Function Documentation

## ◆ getVideoFrameData()

virtual int getVideoFrameData | ( | VideoFrameData & | data | ) | const
| pure virtual

Get the concrete video frame data of the underlying buffer.

Parameters

  data | [out] The video frame data.

Returns
  - int: error code. 0 for success.

## ◆ fillVideoFrameData()

virtual int fillVideoFrameData | ( | const VideoFrameData & | data | ) |
| pure virtual

Fill the underlying buffer with source buffer info contained in VideoFrameData For frames of type "Type::kMemPixels", This function first tries to fill in-place with no copy and reallocation. When it fails, a copy or copy-plus-reallocation may happen

Parameters

  data | [in] Data to be filled in.

Returns
  - 0: if succeeds
  - <0: failure

## ◆ getVideoFrameMetaData()

virtual int getVideoFrameMetaData | ( | VideoFrameMetaDataType | type,
|  | void * | data
| ) |  |
| pure virtual

Get the underlying meta data of the given type. e.g. If type is VideoFrameMetaDataType::kAlphaChannel, then data value can be casted to AlphaChannel;

Parameters

  type | VideoFrameMetaDataType type of the meta data wanted
  data | [out] pointer to the the meta data object of the given type

Returns
  - 0: if succeeds
  - <0: failure

## ◆ fillVideoFrameMetaData()

virtual int fillVideoFrameMetaData | ( | VideoFrameMetaDataType | type,
|  | const void * | data
| ) |  |
| pure virtual

Fill the underlying meta data of the given type. e.g. If type is VideoFrameMetaDataType::kAlphaChannel, then data should point to AlphaChannel object;

Parameters

  type | VideoFrameMetaDataType type of the meta data to fill
  data | [in] pointer to the the meta data object of the given type

Returns
  - 0: if succeeds
  - <0: failure

## ◆ AddRef()

virtual void AddRef | ( |  | ) | const
| pure virtual inherited

## ◆ Release()

virtual RefCountReleaseStatus Release | ( |  | ) | const
| pure virtual inherited

## ◆ HasOneRef()

virtual bool HasOneRef | ( |  | ) | const
| pure virtual inherited