cn.tee3.avd_SDK-C++  2.1.0
mvideomixer.h
浏览该文件的文档.
1 #ifndef RT_VideoMixer_H_
2 #define RT_VideoMixer_H_
3 
4 #include "common.h"
5 #include "videorender.h"
6 
7 namespace tee3 {
8  namespace avd {
9  class ILivecast;
10  class IVideoRender;
11 
18  public:
26  virtual Result setMixerTypeaSize(MixerVideoLayoutType layout, int width, int height) = 0;
31  virtual Result setScaleType(IVideoRenderView::ScalingType scale) = 0;
36  virtual Result setBackgroud(const String& background) = 0;
41  virtual void clearSubVideos() = 0;
42 
43  //自动布局(layout auto):设置自动布局参数和主视频后,sdk自动来布局子视频组合成直播视频
50  virtual Result setMainVideo(const UserId& userId) = 0;
61  virtual Result autoLayoutParams(bool isTopdown, float w, float h, float x_begin, float y_begin) = 0;
62 
63  //手动布局(layout manual):完全手动布局整个直播视频,可以将一个个子视频排布在直播视频的任意位置
75  virtual Result addSubVideo(const UserId& userId) = 0;
76  virtual Result addSubVideo(const UserId& userId, int zorder, float x, float y, float w, float h) = 0;
87  virtual Result updateSubVideo(const UserId& userId, int zorder, float x, float y, float w, float h) = 0;
93  virtual void removeSubVideo(const UserId& userId) = 0;
94 
95  protected:
96  virtual ~IMVideoMixer() {}
97  };
98 
99  } // namespace avd
100 } // namespace tee3
101 #endif//RT_VideoMixer_H_
virtual ~IMVideoMixer()
Definition: mvideomixer.h:96
String UserId
用户号类型,唯一标识房间内一个用户,长度不大于Max_UserId定义;由应用层定义传递给AVD SDK,要求保证房间...
Definition: common.h:13
int Result
返回值类型
Definition: combase.h:9
#define RT_API_EXPORT
Definition: defines.h:186
std::string String
tee3定义的String类型
Definition: common.h:10
MixerVideoLayoutType
视频混频布局类型
Definition: combase.h:488
视频混屏模块接口.
Definition: mvideomixer.h:17
Definition: audiocapture.h:5
ScalingType
Definition: videorender.h:160