in src/providers/MeetingProvider/MeetingManager.ts [226:261]
async listAndSelectDevices(): Promise<void> {
await this.updateDeviceLists();
if (
!this.selectedAudioInputDevice &&
this.audioInputDevices &&
this.audioInputDevices.length
) {
this.selectedAudioInputDevice = this.audioInputDevices[0].deviceId;
await this.audioVideo?.chooseAudioInputDevice(
this.audioInputDevices[0].deviceId
);
this.publishSelectedAudioInputDeviceChange();
}
if (
!this.selectedAudioOutputDevice &&
this.audioOutputDevices &&
this.audioOutputDevices.length
) {
this.selectedAudioOutputDevice = this.audioOutputDevices[0].deviceId;
await this.audioVideo?.chooseAudioOutputDevice(
this.audioOutputDevices[0].deviceId
);
this.publishSelectedAudioOutputDeviceChange();
}
if (
!this.selectedVideoInputDevice &&
this.videoInputDevices &&
this.videoInputDevices.length
) {
this.selectedVideoInputDevice = this.videoInputDevices[0].deviceId;
await this.audioVideo?.chooseVideoInputDevice(
this.videoInputDevices[0].deviceId
);
this.publishSelectedVideoInputDeviceChange();
}
}