本文档包含NemoSDK中所有内容共享相关的函数接口。
版本支持: 3.11.0
函数概述: 开始共享
函数定义:
virtual void startContentSharing(XYDualStreamMode mode, bool bMediaFile, bool bEnableAnnotation) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
mode | 是 | 无 | 共享类型 | |
bMediaFile | bool | 是 | 无 | 是否为媒体文件 |
bEnableAnnotation | bool | 是 | 无 | 是否开启标注 |
版本支持: 3.3.0
函数概述: 停止内容共享
函数定义:
virtual void stopContentSharing() = 0;
版本支持: 3.11.0
函数概述: 开始进行共享内容采集
函数定义:
virtual void startContentCapture(XYContentCaptureType type, const XYContentInfo& param, bool bNeedLocalContentPreview) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
type | 是 | 无 | 截取内容类型 | |
param | const XYContentInfo& | 是 | 无 | 截取内容的额外参数 |
bNeedLocalContentPreview | bool | 是 | 无 | 是否需要本地内容预览 |
版本支持: 3.11.0
函数概述: 暂停共享内容采集
函数定义:
virtual void pauseContentCapture() = 0;
版本支持: 3.11.0
函数概述: 恢复共享内容采集
函数定义:
virtual void resumeContentCapture() = 0;
版本支持: 3.11.0
函数概述: 停止共享内容采集
函数定义:
virtual void stopContentCapture() = 0;
版本支持: 3.11.0
函数概述: 共享是否关闭扣掉小鱼程序(共享桌面相关函数 仅Windows平台实现,共享的时候咱们xysdk会把小鱼的程序扣掉,远端看不到。这个就是设置不要扣掉,让远端能看到)
函数定义:
virtual void setNotIgnoreCaptureWnd(void* hwnd) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
hwnd | void* | 是 | 无 | 标注window的窗口句柄,通过winid拿到 |
版本支持: 3.11.0
函数概述: 设置wgc适配属性窗口是否不设置蓝框和标注窗口
函数定义:
virtual void setNotExcludeWnd(void* hwnd) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
hwnd | void* | 是 | 无 | 窗口句柄 |
版本支持: 3.11.0
函数概述: 获得分享桌面中的最顶层应用名称、ID、窗口句柄列表,目前只有Windows实现
函数定义:
virtual const XYArray<XYShareAppInfo>& getTopLevelAppList() = 0;
返回值:
const XYArray<XYShareAppInfo>& - 最顶层应用名称、ID、窗口句柄列表
版本支持: 3.11.0
函数概述: 根据窗口句柄获取窗口的显示区域
函数定义:
virtual void getAppWindowVisibleArea(void* hAppMain, int& x, int& y, int& w, int& h) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
hAppMain | void* | 是 | 无 | 窗口句柄 |
x | int& | 是 | 无 | 窗口x坐标 |
y | int& | 是 | 无 | 窗口y坐标 |
w | int& | 是 | 无 | 窗口宽度 |
h | int& | 是 | 无 | 窗口高度 |
版本支持: 3.11.0
函数概述: 获取显示器截图
函数定义:
virtual void getMonitorThumbnail(const char* monitorName, unsigned char*& argb, int& w, int& h, bool& ret) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
monitorName | const char* | 是 | 无 | 显示器名称 |
argb | unsigned char*& | 是 | 无 | argb信息 buffer data,用来绘制图片 |
w | int& | 是 | 无 | 显示器宽度 |
h | int& | 是 | 无 | 显示器高度 |
ret | bool& | 是 | 无 | 是否获取成功 |
版本支持: 3.11.0
函数概述: 更新共享内容采集的区域
函数定义:
virtual void updateContentCaptureRegion(const char* monitor, int top, int bottom, int left, int right) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
monitor | const char* | 是 | 无 | 显示器名称 |
top | int | 是 | 无 | 采集区域的顶边 |
bottom | int | 是 | 无 | 采集区域的底边 |
left | int | 是 | 无 | 采集区域的左边 |
right | int | 是 | 无 | 采集区域的右边 |
版本支持: 3.11.0
函数概述: 根据文件路径获取文件的信息
函数定义:
virtual XYMediaFileInfo getMediaFileInfo(const wchar_t* fileName) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
fileName | const wchar_t* | 是 | 无 | 文件路径 |
返回值:
XYMediaFileInfo - 文件信息
版本支持: 3.11.0
函数概述: 采集共享文件的某一个时间点的内容
函数定义:
virtual void setContentSeekTo(int64_t position) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
position | int64_t | 是 | 无 | 需要采集的时间点 |
版本支持: 3.11.0
函数概述: 调正共享的音视频声音大小
函数定义:
virtual void setContentVolume(float volume) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
volume | float | 是 | 无 | 音量大小(范围0到1) |
版本支持: 3.11.0
函数概述: 设置是否开启多路共享音频
函数定义:
virtual void setEnableMutilContent(bool enable) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
enable | bool | 是 | 无 | 是否开启 |
版本支持: 3.11.0
函数概述: 设置是否需要监听当前speaker变化
函数定义:
virtual void needSpeakerChanged(bool need) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
need | bool | 是 | 无 | 是否需要 |
版本支持: 3.11.0
函数概述: 设置是否开启双屏模式
函数定义:
virtual void setEnableDualScreenMode(bool enable) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
enable | bool | 是 | 无 | 是否开启 |