private void AutoSendAV() { // Determine if the form is shared string[] linkedCamera = AVReg.ValueNames(AVReg.LinkedCamera); if (linkedCamera != null) { Debug.Assert(linkedCamera.Length <= 1); } // Create the audio capability FilterInfo[] mics = AudioCapability.SelectedMicrophones(); Debug.Assert(mics.Length <= 1); // For now we only support 1 AudioCapability ac = null; foreach (FilterInfo fi in mics) { ac = new AudioCapability(fi); } // Create the video capabilities and start sending their data foreach (FilterInfo fi in VideoCapability.SelectedCameras()) { VideoCapability vc = new VideoCapability(fi); // Set the shared form ID if (ac != null && linkedCamera != null && linkedCamera.Length > 0) { if (fi.Moniker == linkedCamera[0]) { Guid sharedFormID = Guid.NewGuid(); ac.SharedFormID = sharedFormID; vc.SharedFormID = sharedFormID; } } try { vc.ActivateCamera(); vc.Send(); } catch (Exception) { vc.Dispose(); MessageBox.Show(string.Format("ConferenceXP was unable to send video from " + "the device - {0}. See the ConferenceAPI Event Log for details.", vc.Name), "Unable to send video", MessageBoxButtons.OK, MessageBoxIcon.Error); } } // Start sending the audio data try { if (ac != null) { ac.ActivateMicrophone(); ac.Send(); } } catch (Exception) { ac.Dispose(); MessageBox.Show(string.Format("ConferenceXP was unable to send audio from " + "the device - {0}. See the ConferenceAPI Event Log for details.", ac.Name), "Unable to send audio", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void AutoSendAV() { // Determine if the form is shared string[] linkedCamera = AVReg.ValueNames(AVReg.LinkedCamera); if (linkedCamera != null) { Debug.Assert(linkedCamera.Length <= 1); } // Create the audio capability FilterInfo[] mics = AudioCapability.SelectedMicrophones(); Debug.Assert(mics.Length <= 1); // For now we only support 1 AudioCapability ac = null; foreach (FilterInfo fi in mics) { ac = new AudioCapability(fi); ac.FecEnabled = enableAudioFec; } // Create the video capabilities and start sending their data foreach (FilterInfo fi in VideoCapability.SelectedCameras()) { VideoCapability vc = new VideoCapability(fi); vc.FecEnabled = enableVideoFec; // Set the shared form ID if (ac != null && linkedCamera != null && linkedCamera.Length > 0) { if (fi.Moniker == linkedCamera[0]) { Guid sharedFormID = Guid.NewGuid(); ac.SharedFormID = sharedFormID; vc.SharedFormID = sharedFormID; } } try { vc.ActivateCamera(); vc.Send(); } catch (Exception) { vc.Dispose(); RtlAwareMessageBox.Show(this, string.Format(CultureInfo.CurrentCulture, Strings.SendVideoErrorText, vc.Name), Strings.SendVideoErrorTitle, MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, (MessageBoxOptions)0); } } // Start sending the audio data try { if (ac != null) { ac.ActivateMicrophone(); ac.Send(); } } catch (Exception) { ac.Dispose(); RtlAwareMessageBox.Show(this, string.Format(CultureInfo.CurrentCulture, Strings.SendAudioErrorText, ac.Name), Strings.SendAudioErrorTitle, MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, (MessageBoxOptions)0); } }