public void SetVideo() { var bPublishAudio = _publishAudio.IsChecked.Value; var bPublishVideo = _publishVideo.IsChecked.Value; var bInputVideo = _inputVideo.IsChecked.Value; var vd = Session.Video.GetCameraDevices().FirstOrDefault(); if (vd != null) { var cap = vd.Capabilitys.FirstOrDefault(); if (bInputVideo) { Session.Video.EnableVideoFakeCamera(true); var screen = System.Windows.Forms.Screen.PrimaryScreen; var camera_setting = new RTCCameraSetting(); camera_setting.RenderHwnd = LocalHwnd; camera_setting.Width = screen.Bounds.Width; camera_setting.Height = screen.Bounds.Height; camera_setting.MaxFps = 15; camera_setting.Bitrate = 500000; camera_setting.DeviceName = ""; camera_setting.DeviceId = ""; var ret = Session.Video.SetCameraParams(camera_setting); SC.Start(); } else { SC.Stop(); var camera_setting = new RTCCameraSetting(); camera_setting.RenderHwnd = LocalHwnd; camera_setting.DeviceName = vd.DeviceName; camera_setting.DeviceId = vd.DeviceId; camera_setting.Width = cap.Width; camera_setting.Height = cap.Height; camera_setting.MaxFps = 15; camera_setting.Bitrate = 500000; Session.Video.EnableVideoFakeCamera(false); var ret = Session.Video.SetCameraParams(camera_setting); } } if (bPublishAudio || bPublishVideo) { var ret = Session.Room.Publish(bPublishAudio, bPublishVideo); if (ret == (int)RTCErrorCode.Already_Published) { Session.Room.UnPublish(); this.localCtl.Invalidate(); Session.Room.Publish(bPublishAudio, bPublishVideo); } } else { Session.Room.UnPublish(); this.localCtl.Invalidate(); } }
private void CloseToolStripMenuItem_Click(object sender, EventArgs e) { _screenCapturer.Stop(); this.Close(); }