Agora RTC Objective-C API Reference Refactor

Public Member Functions
IVideoRenderer Class Referenceabstract

Inherits IVideoSinkBase.

## Public Member Functions
virtual int | setRenderMode (media::base::RENDER_MODE_TYPE renderMode, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | setRenderMode (void *view, media::base::RENDER_MODE_TYPE renderMode, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | setMirror (bool mirror, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | setMirror (void *view, bool mirror, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | setView (void *view, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | addView (void *view, const Rectangle &cropArea, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | unsetView (aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | removeView (void *view)=0
virtual int | setProperty (const char *key, const void *buf, int buf_size)
virtual int | getProperty (const char *key, void *buf, int buf_size)
virtual int | onFrame (const media::base::VideoFrame &videoFrame)=0
virtual bool | isExternalSink ()
virtual bool | onDataStreamWillStart ()
virtual void | onDataStreamWillStop ()
virtual bool | applyMirror ()
virtual bool | applyRotation ()

## Detailed Description

The `IVideoRenderer` class.

## Member Function Documentation

## ◆ setRenderMode() [1/2]

virtual int setRenderMode | ( | media::base::RENDER_MODE_TYPE | renderMode,
|  | aosl_ref_t | ares = `AOSL_REF_INVALID`
| ) |  |
| pure virtual

Sets the render mode.

Parameters

  renderMode | The video render mode.

Returns
  - 0: Success.
  - < 0: Failure.

## ◆ setRenderMode() [2/2]

virtual int setRenderMode | ( | void * | view,
|  | media::base::RENDER_MODE_TYPE | renderMode,
|  | aosl_ref_t | ares = `AOSL_REF_INVALID`
| ) |  |
| pure virtual

Sets the render mode of the view.

Parameters

  view | the view to set render mode.
  renderMode | The video render mode.

Returns
  - 0: Success.
  - < 0: Failure.

## ◆ setMirror() [1/2]

virtual int setMirror | ( | bool | mirror,
|  | aosl_ref_t | ares = `AOSL_REF_INVALID`
| ) |  |
| pure virtual

Sets whether to mirror the video.

Parameters

  mirror | Whether to mirror the video: `true`: Mirror the video. `false`: Do not mirror the video.

Returns
  - 0: Success.
  - < 0: Failure.

## ◆ setMirror() [2/2]

virtual int setMirror | ( | void * | view,
|  | bool | mirror,
|  | aosl_ref_t | ares = `AOSL_REF_INVALID`
| ) |  |
| pure virtual

Sets whether to mirror the video.

Parameters

  view | the view to set mirror mode.
  mirror | Whether to mirror the video: `true`: Mirror the video. `false`: Do not mirror the video.

Returns
  - 0: Success.
  - < 0: Failure.

## ◆ setView()

virtual int setView | ( | void * | view,
|  | aosl_ref_t | ares = `AOSL_REF_INVALID`
| ) |  |
| pure virtual

Sets the video display window.

Parameters

  view | The pointer to the video display window.

Returns
  - 0: Success.
  - < 0: Failure.

## ◆ addView()

virtual int addView | ( | void * | view,
|  | const Rectangle & | cropArea,
|  | aosl_ref_t | ares = `AOSL_REF_INVALID`
| ) |  |
| pure virtual

Sets the video display window.

Parameters

  view | The pointer to the video display window.
  cropArea | (Optional) Sets the relative location of the region to show. See Rectangle.

Returns
  - 0: Success.
  - < 0: Failure.

## ◆ unsetView()

virtual int unsetView | ( | aosl_ref_t | ares = `AOSL_REF_INVALID` | ) |
| pure virtual

Stops rendering the video view on the window.

Returns
  - 0: Success.
  - < 0: Failure.

## ◆ removeView()

virtual int removeView | ( | void * | view | ) |
| pure virtual

remove rendering the video view on the window.

Returns
  - 0: Success.
  - < 0: Failure.

## ◆ setProperty()

virtual int setProperty | ( | const char * | key,
|  | const void * | buf,
|  | int | buf_size
| ) |  |
| inline virtual inherited

Sets a private property in the `IVideoFilter` class.

Parameters

  key | The pointer to the property name.
  buf | The pointer to the buffer of this private property.
  buf_size | The buffer size of this private property.

Returns
  - The actual size of the private property, if the method call succeeds.
  - -1, if the method call fails.

## ◆ getProperty()

virtual int getProperty | ( | const char * | key,
|  | void * | buf,
|  | int | buf_size
| ) |  |
| inline virtual inherited

Gets a private property in the `IVideoFilter` class.

Parameters

  key | The pointer to the property name.
  buf | The pointer to the buffer of this private property.
  buf_size | The buffer size of this private property.

Returns
  - The actual size of the private property, if the method call succeeds.
  - -1, if the method call fails.

## ◆ onFrame()

virtual int onFrame | ( | const media::base::VideoFrame & | videoFrame | ) |
| pure virtual inherited

Occurs when the `IVideoSinkBase` object receives the video frame.

Parameters

  videoFrame | The reference to the video frame.

## ◆ isExternalSink()

virtual bool isExternalSink | ( |  | ) |
| inline virtual inherited

Used internally to distinguish between external and internal sinks. External application should not override this interface.

## ◆ onDataStreamWillStart()

virtual bool onDataStreamWillStart | ( |  | ) |
| inline virtual inherited

This function is invoked right before data stream starts. Custom sink can override this function for initialization.

Returns
  - `true`, if initialization succeeds.
  - `false`, if initialization fails.

## ◆ onDataStreamWillStop()

virtual void onDataStreamWillStop | ( |  | ) |
| inline virtual inherited

This function is invoked right before data stream stops. Custom sink can override this function for deinitialization.

## ◆ applyMirror()

virtual bool applyMirror | ( |  | ) |
| inline virtual inherited

Whether to mirror the video frame.

Returns
  - true: mirror the video frame.
  - false: do not mirror the video frame.

## ◆ applyRotation()

virtual bool applyRotation | ( |  | ) |
| inline virtual inherited

Whether to rotate the video frame.

Returns
  - true: rotate the video frame.
  - false: do not rotate the video frame.

## ◆ AddRef()

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

## ◆ Release()

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

## ◆ HasOneRef()

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