public void DidChangeRoute(ARDVideoCallView view) { var @override = AVAudioSessionPortOverride.None; if (_portOvveride == AVAudioSessionPortOverride.None) { @override = AVAudioSessionPortOverride.Speaker; } RTCDispatcher.DispatchAsyncOnType(RTCDispatcherQueueType.AudioSession, () => { var session = RTCAudioSession.SharedInstance; session.LockForConfiguration(); session.OverrideOutputAudioPort(@override, out NSError error); if (error == null) { _portOvveride = @override; } else { Console.WriteLine("Error overriding output port:{0}", error.LocalizedDescription); } session.UnlockForConfiguration(); }); }
public override void LoadView() { base.LoadView(); _videoCallView = new ARDVideoCallView(CGRect.Empty); _videoCallView.Delegate = this; _videoCallView.StatusLabel.Text = StatusTextForState(RTCIceConnectionState.New); View = _videoCallView; var session = RTCAudioSession.SharedInstance; session.AddDelegate(this); }
public void DidSwitchCamera(ARDVideoCallView view) { _captureController?.SwitchCamera(); }
public void DidHangup(ARDVideoCallView view) { Hangup(); }
public void DidEnableStats(ARDVideoCallView view) { _client.SetShouldGetStats(true); _videoCallView.StatsView.Hidden = false; }