Agora C++ API Reference for All Platforms
|
Inherits agora::RefCountInterface.
Inherited by agora::rtc::IVideoMixerSourceEx.
Public Member Functions | |
virtual int | addVideoTrack (const char *id, agora_refptr< IVideoTrack > track)=0 |
virtual int | removeVideoTrack (const char *id, agora_refptr< IVideoTrack > track)=0 |
virtual int | setStreamLayout (const char *id, const MixerLayoutConfig &config)=0 |
virtual int | delStreamLayout (const char *id)=0 |
virtual int | addImageSource (const char *id, const MixerLayoutConfig &config, ImageType type=kPng)=0 |
virtual int | delImageSource (const char *id)=0 |
virtual void | clearLayout ()=0 |
virtual int | refresh ()=0 |
virtual int | setBackground (uint32_t width, uint32_t height, int fps, uint32_t color_argb=0)=0 |
virtual int | setBackground (uint32_t width, uint32_t height, int fps, const char *url)=0 |
virtual int | setRotation (uint8_t rotation)=0 |
virtual int | getAvgMixerDelay ()=0 |
virtual int | setMasterClockSource (const char *id=NULL)=0 |
![]() | |
virtual void | AddRef () const =0 |
virtual RefCountReleaseStatus | Release () const =0 |
virtual bool | HasOneRef () const =0 |
Additional Inherited Members | |
![]() | |
virtual | ~RefCountInterface () |
The IVideoMixerSource class abstracts a multi-in-multi-out video source which receives video streams from multiple local or remote video tracks and generate mixed video stream in user defined output format. When only one video track is added to the mixer, it simply forwards the incoming video frames to its sinks.
|
pure virtual |
Add a video track for mixing.
id | The unique id of the stream. |
track | The instance of the video track that you want mixer to receive its video stream. |
|
pure virtual |
Remove the video track.
id | The unique id of the stream. |
track | The instance of the video track that you want to remove from the mixer. |
|
pure virtual |
Configures the layout of video frames comming from a specific track (indicated by uid) on the mixer canvas.
id | The unique id of the stream. |
config | The layout configuration |
|
pure virtual |
Remove the user layout on the mixer canvas
id | The unique id of the stream. |
uid | The uid of the stream. |
|
pure virtual |
Add a image source to the mixer with its layout configuration on the mixer canvas.
id | The unique id of the image. |
config | The layout configuration |
|
pure virtual |
Delete a image source to the mixer.
id | The unique id of the image. |
|
pure virtual |
Clear all the layout settings set previously
|
pure virtual |
Refresh the user layout on the mixer canvas
|
pure virtual |
Set the mixer canvas background to override the default configuration
width | width of the canvas |
height | height of the canvas |
fps | fps of the mixed video stream |
color_argb | mixer canvas background color in argb |
|
pure virtual |
Set the mixer canvas background to override the default configuration
width | width of the canvas |
height | height of the canvas |
fps | fps of the mixed video stream |
url | URL of the canvas background image |
|
pure virtual |
Set the rotation of the mixed video stream
rotation:0:none,1:90°,2:180°,3:270° |
|
pure virtual |
Get the average delay in ms introduced by the mixer module, which includes the average mixing delay plus the encoder delay.
|
pure virtual |
Set the master clock source for mixed video frame. The master clock source serves as the reference clock for audio/video synchronization after mixing.