public void DidChangeRoute(VideoCallView view) { var @override = AVAudioSessionPortOverride.None; if (portOverride == AVAudioSessionPortOverride.None) { @override = AVAudioSessionPortOverride.Speaker; } RTCDispatcher.DispatchAsyncOnType(RTCDispatcherQueueType.AudioSession, () => { var session = RTCAudioSession.SharedInstance(); session.LockForConfiguration(); session.OverrideOutputAudioPort(@override, out NSError error); if (error == null) { portOverride = @override; } else { Console.WriteLine("Error overriding output port:{0}", error.LocalizedDescription); } session.UnlockForConfiguration(); }); }
private void StartVideoCallInternal(IVideoRenderer localRenderer, IVideoRenderer remoteRenderer) { var session = RTCAudioSession.SharedInstance(); session.UseManualAudio = true; session.IsAudioEnabled = false; StartVideoCall(localRenderer, remoteRenderer); }
public void DidFinish(CallPageRenderer _viewController) { if (!_viewController.IsBeingDismissed) { Console.WriteLine("Dismissing VC"); _viewController.DismissViewController(true, OnDismissVideoController); } var session = RTCAudioSession.SharedInstance(); session.IsAudioEnabled = false; }