diff --git a/src/page/Meeting/index.tsx b/src/page/Meeting/index.tsx index cae32af..10edc93 100644 --- a/src/page/Meeting/index.tsx +++ b/src/page/Meeting/index.tsx @@ -115,7 +115,7 @@ const Meeting: React.FC = () => { let userInfo = JSON.parse(storage.getItem('user') as string) setUser(userInfo) setMeetingMode('StandardMode'); - agora.init() + agora.init(true) agora.registerEventHandler({ onJoinChannelSuccess: async (info: any, _elapsed: any) => { await onInvoke('joinChannel', { diff --git a/src/utils/package/agora.ts b/src/utils/package/agora.ts index 325b724..bedfafa 100644 --- a/src/utils/package/agora.ts +++ b/src/utils/package/agora.ts @@ -24,11 +24,19 @@ let rtcEngine: any = ''; const agora = { // 初始化 - init: () => { + init: async (bool: boolean = false) => { rtcEngine = createAgoraRtcEngine(); - rtcEngine.initialize({ + await rtcEngine.initialize({ appId: option.appId, }); + if (bool) { + const setting = JSON.parse(storage.getItem('setting') as string) + if (setting.videoDeviceId) agora.setVideoDeviceManager(setting.videoDeviceId) //通过设备 ID 指定视频采集设备。 + if (setting.playBackDeviceId) agora.setPlaybackDevice(setting.playBackDeviceId) //指定播放设备 + if (setting.playBackVolume) agora.setPlaybackDeviceVolume(setting.playBackVolume) // 设置播放设备音量 + if (setting.ecordingDeviceId) agora.setRecordingDevice(setting.ecordingDeviceId) // 设置音频采集设备 + if (setting.ecordingVolume) agora.setRecordingDeviceVolume(setting.ecordingVolume) // 设置音频设备音量 + } }, // 事件回调 registerEventHandler: ({ onJoinChannelSuccess, onUserJoined, onUserOffline, onAudioVolumeIndication }: any) => {