changeVideoInputDevice method
Future<void>
changeVideoInputDevice(
{ - required String deviceId,
})
override
Implementation
@override
Future<void> changeVideoInputDevice({required String deviceId}) async {
if (_mParticipant == null) return;
_currentCallSetting = _currentCallSetting.copyWith(
videoConfig: _currentCallSetting.videoConfig.copyWith(deviceId: deviceId),
);
final MediaStream? newStream = await _getUserMedia(onlyStream: true);
if (newStream == null) return;
final MediaStreamTrack? videoTrack = newStream.getVideoTracks().firstOrNull;
if (videoTrack == null) return;
_localCameraStream = newStream;
await _replaceVideoTrack(videoTrack);
_mParticipant?.setSrcObject(newStream);
}