3.2.401
3.2.401 多媒体通道功能在渲染服务器 3.2.2.0+ 开启
3.2.401 新增功能
以下示例代码假定
larksr
对象初始化并连接成功。 测试demo https://github.com/ParaverseTechnology/lark_sr_websdk_demos/tree/gh-pages
(1). 新增多路 Web 端上传媒体功能。使用 larksr.getMediaSharePeerConnection(index)
获取上传媒体通道。
序号 index 支持 0 - 5, 获取媒体通道之后的打开媒体操作和之前的接口相同。原有的接口等同于 getMediaSharePeerConnection(0)
使用方式如
larksr.getMediaSharePeerConnection(0).openVideo();
larksr.getMediaSharePeerConnection(0).closeVideo();
连接不支持多通道上传的老版本渲染服务器时,仅通道 0 起作用。
(2). 获取具体通道的连接状态 getStats
larksr.getMediaSharePeerConnection(0).getStats()
.then((res) => {
console.log("state: ", res);
})
.catch((e) => {
console.log("get state failed", e);
})
(3). 设置具体连接通道的视频编码 preferVideoCode
larksr.getMediaSharePeerConnection(0).preferVideoCode = 'h264';
当当前浏览器支持所设定的视频编码时优先使用,如果不支持使用默认的编码方式 设置完成之后再次打开视频起效,已经打开的视频通不会有变化。
(4). 设置具体连接通道的视频上传码率
larksr.getMediaSharePeerConnection(0).codeRate = {
start: 1000,
min: 1000,
max: 20000,
}
设置完成之后再次打开视频起效,已经打开的视频通不会有变化。
(5). 媒体连接通道可以单独监听事件,如
larksr.getMediaSharePeerConnection(0).on("rtc_state_change", function(e) {
console.log("ice state change", e);
});
(6). 打开或保存下来的媒体通道对象有单独的id, 0 - 5
larksr.getMediaSharePeerConnection(0).id
(7). 强制使用画布模式,视频通道的画布可以顺时针或者逆时针旋转画面
开启旋转
larksr.getMediaSharePeerConnection(0).forceRenderToCanvas = true;
强制顺时针旋转
larksr.getMediaSharePeerConnection(0).canvasRender.setRotate(true);
设置完成之后再次打开视频起效,已经打开的视频通不会有变化。