chore: null safety.

This commit is contained in:
cloudwebrtc 2022-10-12 19:11:53 +08:00
parent 27527f0417
commit e50c0ec641
1 changed files with 8 additions and 6 deletions

View File

@ -20,6 +20,7 @@ import 'dart:async';
import 'dart:core'; import 'dart:core';
import 'dart:math'; import 'dart:math';
import 'package:collection/collection.dart';
import 'package:webrtc_interface/webrtc_interface.dart'; import 'package:webrtc_interface/webrtc_interface.dart';
import 'package:matrix/matrix.dart'; import 'package:matrix/matrix.dart';
@ -599,16 +600,17 @@ class CallSession {
Future<void> updateAudioDevice([MediaStreamTrack? track]) async { Future<void> updateAudioDevice([MediaStreamTrack? track]) async {
final sender = usermediaSenders final sender = usermediaSenders
.where((element) => element.track!.kind == 'audio') .firstWhereOrNull((element) => element.track!.kind == 'audio');
.first; await sender?.track?.stop();
await sender.track!.stop();
if (track != null) { if (track != null) {
await sender.replaceTrack(track); await sender?.replaceTrack(track);
} else { } else {
final stream = final stream =
await voip.delegate.mediaDevices.getUserMedia({'audio': true}); await voip.delegate.mediaDevices.getUserMedia({'audio': true});
final audioTrack = stream.getAudioTracks().first; final audioTrack = stream.getAudioTracks().firstOrNull;
await sender.replaceTrack(audioTrack); if (audioTrack != null) {
await sender?.replaceTrack(audioTrack);
}
} }
} }