setDeviceMuted method
Implementation
@override
Future<void> setDeviceMuted(
GroupCallSession groupCall, bool muted, MediaInputKind kind) async {
if (!await hasMediaDevice(groupCall.voip.delegate, kind)) {
return;
}
if (localUserMediaStream != null) {
switch (kind) {
case MediaInputKind.audioinput:
localUserMediaStream!.setAudioMuted(muted);
setTracksEnabled(
localUserMediaStream!.stream!.getAudioTracks(), !muted);
for (final call in _callSessions) {
await call.setMicrophoneMuted(muted);
}
break;
case MediaInputKind.videoinput:
localUserMediaStream!.setVideoMuted(muted);
setTracksEnabled(
localUserMediaStream!.stream!.getVideoTracks(), !muted);
for (final call in _callSessions) {
await call.setLocalVideoMuted(muted);
}
break;
default:
}
}
groupCall.onGroupCallEvent.add(GroupCallStateChange.localMuteStateChanged);
return;
}