本文档包含NemoSDK中所有媒体控制相关的函数接口。
版本支持: 3.11.0
函数概述: 设置摄像头采集参数,发送、接受视频最大能力,呼叫前设置有效
函数定义:
virtual void setVideoProfile(const XYVideoProfile& videoProfile) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
videoProfile | const XYVideoProfile& | 是 | 无 | 配置信息 |
版本支持: 3.11.0
函数概述: 设置订阅参会者列表(最大20个),优先请流
函数定义:
virtual void setRenderResources(const XYArray<void*>& resources) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
resources | const XYArray | 是 | 无 | 订阅者参会列表,数据为uri为参会者设备唯一标志,如:123456@DESK,123456为小鱼用户ID,DESK(桌面)为终端类型 |
版本支持: 3.11.0
函数概述: 设置本地视频渲染配置
函数定义:
virtual void setVideoRenderConfig(bool bEnablePushData, const XYArray<void*>& localWnd, void* localContentWnd) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
bEnablePushData | bool | 是 | 无 | 是否继续往上层回传视频渲染数据 |
localWnd | const XYArray | 是 | 无 | 本地视频显示窗口句柄 |
localContentWnd | void* | 是 | 无 | 共享内容回显窗口句柄 |
版本支持: 3.11.0
函数概述: 设置本地视频镜像翻转
函数定义:
virtual void setLocalPreviewFlip(bool bFlip) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
bFlip | bool | 是 | 无 | 是否翻转 |
版本支持: 3.11.0
函数概述: (D3D11)开启本地其他路视频
函数定义:
virtual void openOtherLocalPreview(void* hwnd) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
hwnd | void* | 是 | 无 | 窗口句柄 |
版本支持: 3.11.0
函数概述: (D3D11)关闭本地其他路视频
函数定义:
virtual void closeOtherLocalPreview(void* hwnd) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
hwnd | void* | 是 | 无 | 窗口句柄 |
版本支持: 3.3.0
函数概述: 启动摄像头采集 & 用于摄像头检测 会中或者会议建立以后(onCallStateChanged(connected))
函数定义:
virtual void startCamera() = 0;
版本支持: 3.3.0
函数概述: 关闭摄像头采集 & 用于摄像头检测 会中或者退会之前关闭(onCallStateChanged(disconnected))
函数定义:
virtual void stopCamera() = 0;
版本支持: 3.11.0
函数概述: 清空本地视频渲染画面
函数定义:
virtual void clearLocalPreview() = 0;
版本支持: 3.11.0
函数概述: 清空本地其它路视频渲染画面
函数定义:
virtual void clearOtherLocalPreview(void* hwnd) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
hwnd | void* | 是 | 无 | 窗口句柄 |
版本支持: 3.11.0
函数概述: UI与native GL render绑定
函数定义:
virtual void bindGLRender(void* videoRenderId) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
videoRenderId | void* | 是 | 无 | UI video render ID |
版本支持: 3.11.0
函数概述: UI与native GL render解绑
函数定义:
virtual void unbindGLRender(void* videoRenderId) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
videoRenderId | void* | 是 | 无 | UI video render ID |
版本支持: 3.11.0
函数概述: 是否可以绘制GL
函数定义:
virtual bool canPaintGL(void* videoRenderId) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
videoRenderId | void* | 是 | 无 | UI video render ID |
版本支持: 3.11.0
函数概述: UI上调用GL render,实现OpenGL画面渲染
函数定义:
virtual void paintGL(void* videoRenderId, const XYGLOption& option) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
videoRenderId | void* | 是 | 无 | UI video render ID |
option | const XYGLOption& | 是 | 无 | 绘制选项 |
版本支持: 3.11.0
函数概述: 获取视频裸数据
函数定义:
virtual bool getVideoFrame(const char* sourceId, bool isContent, XYVideoFrame& frame, XYVideoFormat videoFormat = YUY2) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
sourceId | const char* | 是 | 无 | 视频流ID |
isContent | bool | 是 | 无 | 是否为内容流 |
frame | 是 | 无 | 获取到的视频帧信息 | |
videoFormat | 否 | YUY2 | 视频格式 |
版本支持: 3.11.0
函数概述: 获取视频源的图像信息
函数定义:
virtual const XYArray<uint8_t>& getVideoDataBySourceId(const char* videoSourceId) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
videoSourceId | const char* | 是 | 无 | 视频流ID |
版本支持: 3.3.0
函数概述: 获取本地扬声器能量(音量检测使用)
函数定义:
virtual int getSpeakerPeakMeter() = 0;
版本支持: 3.3.0
函数概述: 获取扬声器能量(具体值 0-100)
函数定义:
virtual int getSpeakerVolume() = 0;
版本支持: 3.3.0
函数概述: 设置本地扬声器能量(具体值0-100)
函数定义:
virtual void setSpeakerVolume(int volume) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
volume | int | 是 | 无 | 设置数值 |
版本支持: 3.3.0
函数概述: 获取本地麦克风能量(检测使用)
函数定义:
virtual int getMicPeakMeter() = 0;
版本支持: 3.3.0
函数概述: 获取麦克风能量(具体值0-100)
函数定义:
virtual int getMicVolume() = 0;
版本支持: 3.3.0
函数概述: 设置麦克风能量(具体值0-100)
函数定义:
virtual void setMicVolume(int value) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
value | int | 是 | 无 | 麦克风能量 |
版本支持: 3.11.0
函数概述: 开始音频采集
函数定义:
virtual void startAudioCapture() = 0;
版本支持: 3.11.0
函数概述: 停止音频采集
函数定义:
virtual void stopAudioCapture() = 0;
版本支持: 3.3.0
函数概述: 开启远端音频能量峰值计量
函数定义:
virtual void setAudioPeakMeterEnabled(bool enable) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
enable | bool | 是 | 无 | 是否开启 |
版本支持: 3.11.0
函数概述: 获取远端音频能量
函数定义:
virtual const XYArray<XYAudioMeterInfo>& getAudioPeakMeters() = 0;
版本支持: 3.3.0
函数概述: 音频旁路
函数定义:
virtual void setMicDataByAEEnabled(bool enabled) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
enabled | bool | 是 | 无 | 是否开启 |
版本支持: 3.3.0
函数概述: 释放音频焦点, 会外设备检测完成之后, 如果需要释放音频的话调用
函数定义:
virtual void releaseAudioFocus() = 0;
版本支持: 3.3.0
函数概述: pulse支持
函数定义:
virtual void enablePulseHelper(bool enable) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认값 | 描述 |
enable | bool | 是 | 无 | 是否开启 |
版本支持: 3.3.0
函数概述: 设置mic增益, 通过调节mic采集增益来放大输出声音, 但是噪声也会放大
函数定义:
virtual void setAudioAutoGainCtrl(int gain) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认값 | 描述 |
gain | int | 是 | 无 | 增益范围[0 - 20] |
版本支持: 3.11.0
函数概述: PSE 开启/关闭
函数定义:
virtual void pausePSE(bool pause) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认값 | 描述 |
pause | bool | 是 | 无 | 是否暂停 |
版本支持: 3.11.0
函数概述: 检查使用的采集设备是否为耳机
函数定义:
virtual bool isCurSelectHeadSet() = 0;
返回值:
bool - 是否为耳机设备
版本支持: 3.3.0
函数状态: 已废弃, 请使用 getVideoFrame(const char* sourceId, bool isContent, XYVideoFrame& frame, XYVideoFormat videoFromat = YUY2)
函数概述: 获取视频裸数据(SDK会主动推流@link#onVideoFrameReady, 如果需要主动拉流,设置@startup#SDKConfigs.enablePushVideo=false)
函数定义:
virtual bool getVideoFrame(const char* sourceId, int sourceKey, SDKVideoFrame& frame) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
sourceId | const char* | 是 | 无 | 视频流id |
sourceKey | int | 是 | 无 | 视频流key |
frame | SDKVideoFrame& | 是 | 无 | 视频流信息 |
返回值:
bool - 调用状态
版本支持: 3.3.0
函数状态: 已废弃, 请使用 setVideoProfile(const XYVideoProfile& videoProfile)
函数概述: 设置视频配置,呼叫前设置有效
函数定义:
virtual void setVideoProfile(const SDKVideoProfile& videoProfile) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
videoProfile | const SDKVideoProfile& | 是 | 无 | 视频配置 |
版本支持: 3.3.0
函数状态: 已废弃, 请使用 getAudioPeakMeters()
函数概述: 获取远端音频能量
函数定义:
virtual const XYArray<SDKAudioMeterInfo>& getAudioPeakMeters(bool isOld = true) = 0;
函数参数:
参数名 | 类型 | 必填 | 默认值 | 描述 |
isOld | bool | 否 | true | 用来区分是否是3.3.0版本的接口,无实际意义 |
返回值:
const XYArray& - 远端音频能量信息List