跳到主要内容

设备管理

获取设备列表

导入 device 模块

typescript
import { device } from '@rongcloud/plugin-rtc'

获取麦克风设备列表

API 参考:getMicrophones

typescript
const microphones = await device.getMicrophones();

获取摄像头设备列表

API 参考:getCameras

typescript
const cameras = await device.getCameras();

获取扬声器设备列表

API 参考:getSpeakers

typescript
const speakers = await device.getSpeakers()

从指定设备获取音视频资源

如果已获取设备的 ID,例如 micphoneIdcameraId 等,可以使用以下方法从指定设备获取音视频资源。

从指定设备获取音频

调用 createMicrophoneAudioTrack 方法获取指定设备的音频资源。

接口

typescript
rtcClient.createMicrophoneAudioTrack(tag: string = 'RongCloudRTC', options?: IMicphoneAudioProfile)

参数说明

参数类型必填说明
tagstring资源标识,默认为 RongCloudRTC
optionsIMicphoneAudioProfile音频配置参数

示例代码

typescript
/**
* @param tag 资源标识
* @param IMicphoneAudioProfile.micphoneId 指定麦克风设备 ID
*/
const { code, track: audioTrack } = await rtcClient.createMicrophoneAudioTrack(
tag: string = 'RongCloudRTC',
options: {
micphoneId: 'MicphoneId'
}
)

从指定设备获取视频

调用 createCameraVideoTrack 方法获取指定设备的视频资源。

接口

typescript
rtcClient.createCameraVideoTrack(tag: string = 'RongCloudRTC', options?: ICameraVideoProfile)

参数说明

参数类型必填说明
tagstring资源标识,默认为 RongCloudRTC
optionsICameraVideoProfile视频参数配置

示例代码

typescript
/**
* @param tag 资源标识
* @param ICameraVideoProfile.cameraId 指定摄像头设备 ID
*/
const { code, track: videoTrack } = await rtcClient.createCameraVideoTrack(
tag: string = 'RongCloudRTC',
options: {
cameraId: 'CameraId'
}
)

从指定设备同时获取音视频

调用 createMicrophoneAndCameraTracks 方法获取指定设备的音视频资源

接口

typescript
rtcClient.createMicrophoneAndCameraTracks(tag: string = 'RongCloudRTC', options?: { audio?: IMicphoneAudioProfile, video?: ICameraVideoProfile })

参数说明

参数类型必填说明
tagstring资源标识,默认为 RongCloudRTC
options.audioIMicphoneAudioProfile音频配置参数
options.videoICameraVideoProfile视频参数配置

示例代码

typescript
/**
* @param tag 资源标识
* @param IMicphoneAudioProfile.micphoneId 指定麦克风设备 ID
* @param ICameraVideoProfile.cameraId 指定摄像头设备 ID
*/
const { code, tracks } = await rtcClient.createMicrophoneAndCameraTracks(
tag: 'RongCloudRTC',
options: {
audio: { micphoneId: 'MicphoneId' },
video: { cameraId: 'CameraId' }
}
)