Leadtools.Multimedia Namespace > CaptureCtrl Class : AudioDevices Property |
public virtual AudioDevices AudioDevices {get;}
'Declaration Public Overridable ReadOnly Property AudioDevices As AudioDevices
'Usage Dim instance As CaptureCtrl Dim value As AudioDevices value = instance.AudioDevices
public virtual AudioDevices AudioDevices {get;}
get_AudioDevices();
public: virtual property AudioDevices^ AudioDevices { AudioDevices^ get(); }
Public _result As Boolean = False Public _form As CaptureCtrlForm = New CaptureCtrlForm() Public _capturectrl As CaptureCtrl Public _csbform As TestCtrlSubForm Public Sub DevicesExample() ' reference the capture control _capturectrl = _form.CaptureCtrl ' input file Dim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_Source.avi") Try ' create the sub form for devices listbox _csbform = New TestCtrlSubForm() AddHandler _csbform.Load, AddressOf Form_Load AddHandler _csbform.buttonRefresh.Click, AddressOf Refresh_Click AddHandler _csbform.List.Click, AddressOf List_Click ' show the devices form _csbform.ShowDialog() ' get the selected device index Dim selectedRenderer As Integer = _capturectrl.AudioDevices.Selection ' set the result to what we expect _result = (Not _csbform.List.SelectedItem Is Nothing AndAlso _capturectrl.AudioDevices.Selection <> -1) Catch e1 As Exception _result = False End Try End Sub Private Sub Form_Load(ByVal sender As Object, ByVal e As EventArgs) ' build the audio device list EnumerateDevices(_capturectrl.AudioDevices, _csbform.List) End Sub Private Sub List_Click(ByVal sender As Object, ByVal e As EventArgs) ' select the audio device SelectRenderer(_capturectrl.AudioDevices, _csbform.List) End Sub Private Sub Refresh_Click(ByVal sender As Object, ByVal e As EventArgs) ' refresh audio devices RefreshDevices(_capturectrl.AudioDevices, _csbform.List) End Sub Private Sub EnumerateDevices(ByVal Devices As AudioDevices, ByVal List As ListBox) ' Build the devices list box Dim Selected As Integer = -1 ' empty the list box List.Items.Clear() ' add the available audio devices to the list box Dim i As Integer = 0 Do While (i <= (Devices.Count - 1)) List.Items.Add(Devices(i)) If Devices(i).Selected Then Selected = i End If i += 1 Loop ' highlight the current selection List.SelectedIndex = Selected End Sub Private Sub RefreshDevices(ByVal Devices As AudioDevices, ByVal List As ListBox) Dim SelectedName As String = String.Empty ' save the currently selected device's name If Devices.Selection >= 0 Then SelectedName = Devices(Devices.Selection).FriendlyName End If ' refresh the device collection Devices.Reset() ' if there was a previously selected renderer, reselect it If SelectedName <> String.Empty Then Devices.Selection = Devices.IndexOf(SelectedName) End If ' rebuild the listbox EnumerateDevices(Devices, List) End Sub Private Sub SelectRenderer(ByVal Devices As AudioDevices, ByVal List As ListBox) ' select the highlighted device Devices.Selection = Devices.IndexOf(TryCast(List.Items(List.SelectedIndex), Device)) End Sub Public NotInheritable Class LEAD_VARS Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 175\Media"; End Class
public bool _result = false; public CaptureCtrlForm _form = new CaptureCtrlForm(); public CaptureCtrl _capturectrl; public TestCtrlSubForm _csbform; public void DevicesExample() { // reference the capture control _capturectrl = _form.CaptureCtrl; // input file string outFile =Path.Combine(LEAD_VARS.MediaDir,"CaptureCtrl_Source.avi"); try { // create the sub form for devices listbox _csbform = new TestCtrlSubForm(); _csbform.Load += new EventHandler(Form_Load); _csbform.buttonRefresh.Click += new EventHandler(Refresh_Click); _csbform.List.Click += new EventHandler(List_Click); // show the devices form _csbform.ShowDialog(); // get the selected device index int selectedRenderer = _capturectrl.AudioDevices.Selection; // set the result to what we expect _result = (_csbform.List.SelectedItem != null && _capturectrl.AudioDevices.Selection != -1); } catch (Exception) { _result = false; } } void Form_Load(object sender, EventArgs e) { // build the audio device list EnumerateDevices(_capturectrl.AudioDevices, _csbform.List); } void List_Click(object sender, EventArgs e) { // select the audio device SelectRenderer(_capturectrl.AudioDevices, _csbform.List); } void Refresh_Click(object sender, EventArgs e) { // refresh audio devices RefreshDevices(_capturectrl.AudioDevices, _csbform.List); } void EnumerateDevices(AudioDevices Devices, ListBox List) { // Build the device's list box int Selected = -1; // empty the list box List.Items.Clear(); // add the available audio devices to the list box for (int i = 0; (i <= (Devices.Count - 1)); i++) { List.Items.Add(Devices[i]); if (Devices[i].Selected) { Selected = i; } } // highlight the current selection List.SelectedIndex = Selected; } void RefreshDevices(AudioDevices Devices, ListBox List) { string SelectedName = string.Empty; // save the currently selected device's name if (Devices.Selection >= 0) SelectedName = Devices[Devices.Selection].FriendlyName; // refresh the device collection Devices.Reset(); // if there was a previously selected renderer, reselect it if (SelectedName != string.Empty) Devices.Selection = Devices.IndexOf(SelectedName); // rebuild the listbox EnumerateDevices(Devices, List); } void SelectRenderer(AudioDevices Devices, ListBox List) { // select the highlighted device Devices.Selection = Devices.IndexOf(List.Items[List.SelectedIndex] as Device); } static class LEAD_VARS { public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 175\Media"; }
Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2