本地视频预览
更新时间: 2024/09/09 14:09:10
在视频会议或在线教育等场景中,主讲人或老师需要在开播前预览本地视频画面。本文介绍如何通过 NERoom SDK 启用或关闭视频画面预览功能,以及如何切换摄像头。
设置本地视图并开启预览
配置步骤
- 调用
previewRoom
接口获取房间预览上下文。 - 调用
setupLocalVideoCanvas
方法设置本地视图。 - 调用
startPreview
方法开启视频预览。
示例代码
/**
* 获取预览房间上下文NEPreviewRoomContext
* @param params 预览参数目前可传空对象
* @param options 预览参数目前可传空对象
*/
const NEPreviewRoomContext = NERoomService.previewRoom(params, options)
NEPreviewRoomContext.previewController.setupLocalVideoCanvas(view)
NEPreviewRoomContext.previewController.startPreview().then(res => {
console.log(res, 'startPreview success')
}).catch(err => {
console.error(res, 'startPreview fail')
})
关闭预览
配置步骤
调用 stopPreview
方法关闭视频预览。
示例代码
/**
* 获取预览房间上下文NEPreviewRoomContext
* @param params 预览参数目前可传空对象
* @param options 预览参数目前可传空对象
*/
const NEPreviewRoomContext = NERoomService.previewRoom(params, options)
NEPreviewRoomContext.previewController.stopPreview().then(res => {
console.log(res, 'stopPreview success')
}).catch(err => {
console.error(res, 'stopPreview fail')
})
测试麦克风
配置步骤
-
调用
startRecordDeviceTest
开始测试麦克风。 -
调用
stopRecordDeviceTest
停止测试麦克风。
示例代码
/**
* 开始测试麦克风
*/
NEPreviewRoomContext.previewController.startRecordDeviceTest().then(res => {
console.log(res, 'stopPreview success')
}).catch(err => {
console.error(res, 'stopPreview fail')
})
/**
* 停止测试麦克风
*/
NEPreviewRoomContext.previewController.stopRecordDeviceTest().then(res => {
console.log(res, 'stopPreview success')
}).catch(err => {
console.error(res, 'stopPreview fail')
})
测试扬声器
配置步骤
-
调用
startPlayoutDeviceTest
开始测试扬声器。 -
调用
stopPlayoutDeviceTest
停止测试扬声器。
示例代码
/**
* 开始测试麦克风
*/
NEPreviewRoomContext.previewController.startPlayoutDeviceTest().then(res => {
console.log(res, 'startPlayoutDeviceTest success')
}).catch(err => {
console.error(res, 'startPlayoutDeviceTest fail')
})
/**
* 停止测试麦克风
*/
NEPreviewRoomContext.previewController.stopPlayoutDeviceTest().then(res => {
console.log(res, 'startPlayoutDeviceTest success')
}).catch(err => {
console.error(res, 'startPlayoutDeviceTest fail')
})
获取摄像头设备列表
配置步骤
调用 enumCameraDevices
获取摄像头设备列表。
示例代码
NEPreviewRoomContext.previewController.enumCameraDevices().then(res => {
console.log(res, 'enumCameraDevices success')
}).catch(err => {
console.error(res, 'enumCameraDevices fail')
})
获取麦克风设备列表
配置步骤
调用 enumRecordDevices
获取麦克风设备列表。
示例代码
NEPreviewRoomContext.previewController.enumRecordDevices().then(res => {
console.log(res, 'enumRecordDevices success')
}).catch(err => {
console.error(res, 'enumRecordDevices fail')
})
获取扬声器设备列表
配置步骤
调用 enumPlayoutDevices
获取扬声器设备列表。
示例代码
NEPreviewRoomContext.previewController.enumPlayoutDevices().then(res => {
console.log(res, 'enumPlayoutDevices success')
}).catch(err => {
console.error(res, 'enumPlayoutDevices fail')
})
切换摄像头设备
配置步骤
调用 setSelectedRecordDevice
切换摄像头设备。
示例代码
/**
* 切换摄像头设备
* @param deviceId 摄像头设备id
*/
NEPreviewRoomContext.previewController.setSelectedRecordDevice(deviceId).then(res => {
console.log(res, 'setSelectedRecordDevice success')
}).catch(err => {
console.error(res, 'setSelectedRecordDevice fail')
})
切换麦克风设备
配置步骤
调用 setSelectedRecordDevice
切换麦克风设备。
示例代码
/**
* 切换麦克风设备
* @param deviceId 麦克风设备id
*/
NEPreviewRoomContext.previewController.setSelectedRecordDevice(deviceId).then(res => {
console.log(res, 'setSelectedRecordDevice success')
}).catch(err => {
console.error(res, 'setSelectedRecordDevice fail')
})
切换扬声器设备
配置步骤
调用 setSelectedPlayoutDevice
切换扬声器设备。
示例代码
/**
* 切换扬声器设备
* @param deviceId 扬声器设备id
*/
NEPreviewRoomContext.previewController.setSelectedPlayoutDevice(deviceId).then(res => {
console.log(res, 'setSelectedPlayoutDevice success')
}).catch(err => {
console.error(res, 'setSelectedPlayoutDevice fail')
})
获取当前选择的摄像头设备
配置步骤
调用 getSelectedCameraDevice
获取当前选择的摄像头 ID。
示例代码
/**
* 获取当前选择的摄像头设备id
*/
const device = NEPreviewRoomContext.previewController.getSelectedCameraDevice()
获取当前选择的扬声器设备
配置步骤
调用 getSelectedPlayoutDevice
获取当前选择的扬声器 ID。
示例代码
/**
* 获取当前选择的扬声器设备id
*/
const device = NEPreviewRoomContext.previewController.getSelectedPlayoutDevice()
获取当前选择的麦克风设备
配置步骤
调用 getSelectedRecordDevice
获取当前选择的麦克风ID。
示例代码
/**
* 获取当前选择的扬声器设备id
*/
const device = NEPreviewRoomContext.previewController.getSelectedRecordDevice()
API 参考
方法 | 功能描述 |
---|---|
previewRoom |
开启房间预览 |
startPreview |
开启视频预览 |
stopPreview |
关闭视频预览。 |
startRecordDeviceTest |
开始测试麦克风 |
stopRecordDeviceTest |
停止测试麦克风 |
startPlayoutDeviceTest |
开始测试扬声器 |
stopPlayoutDeviceTest |
停止测试扬声器 |
enumRecordDevices |
切换麦克风 |
enumCameraDevices |
切换摄像头 |
enumPlayoutDevices |
切换扬声器 |
setSelectedRecordDevice |
切换麦克风 |
setSelectedCameraDevice |
切换摄像头 |
setSelectedPlayoutDevice |
切换扬声器 |
getSelectedRecordDevice |
切换麦克风 |
getSelectedCameraDevice |
切换摄像头 |
getSelectedPlayoutDevice |
切换扬声器 |
setupLocalVideoCanvas |
设置本地视图 |
此文档是否对你有帮助?