Leadtools.MediaFoundation Namespace > CaptureCtrl Class : AudioRenderers Property |
'Declaration Public ReadOnly Property AudioRenderers As AudioRenderers
'Usage Dim instance As CaptureCtrl Dim value As AudioRenderers value = instance.AudioRenderers
public AudioRenderers AudioRenderers {get;}
public: property AudioRenderers^ AudioRenderers { AudioRenderers^ get(); }
For more information, refer to AudioRenderers.
Imports Leadtools Imports Leadtools.MediaFoundation Imports LeadtoolsMediaFoundationExamples.Fixtures Public _result As Boolean = False Public _form As New CaptureCtrlForm() Public _capturectrl As CaptureCtrl Public _csbform As TestCtrlSubForm Public Sub RenderersExample() ' 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 renderers 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 renderers form _csbform.ShowDialog() ' get the selected renderer index Dim selectedRenderer As Integer = _capturectrl.AudioRenderers.Selection ' set the result to what we expect _result = (_csbform.List.SelectedItem IsNot Nothing AndAlso _capturectrl.AudioRenderers.Selection <> -1) Catch generatedExceptionName As Exception _result = False End Try End Sub Private Sub Form_Load(ByVal sender As Object, ByVal e As EventArgs) ' build the audio renderer list EnumerateRenderers(_capturectrl.AudioRenderers, _csbform.List) End Sub Private Sub List_Click(ByVal sender As Object, ByVal e As EventArgs) ' select the audio renderer SelectRenderer(_capturectrl.AudioRenderers, _csbform.List) End Sub Private Sub Refresh_Click(ByVal sender As Object, ByVal e As EventArgs) ' refresh audio renderers RefreshRenderers(_capturectrl.AudioRenderers, _csbform.List) End Sub Private Sub EnumerateRenderers(ByVal Renderers As AudioRenderers, ByVal List As ListBox) ' Build the renderers list box Dim Selected As Integer = -1 ' empty the list box List.Items.Clear() ' add the available audio renderers to the list box Dim i As Integer = 0 While (i <= (Renderers.Count - 1)) List.Items.Add(Renderers(i)) If Renderers(i).Selected Then Selected = i End If i += 1 End While ' highlight the current selection List.SelectedIndex = Selected End Sub Private Sub RefreshRenderers(ByVal Renderers As AudioRenderers, ByVal List As ListBox) Dim SelectedName As String = String.Empty ' save the currently selected renderer's name If Renderers.Selection >= 0 Then SelectedName = Renderers(Renderers.Selection).FriendlyName End If ' refresh the renderer collection Renderers.Reset() ' if there was a previously selected renderer, reselect it If SelectedName <> String.Empty Then Renderers.Selection = Renderers.IndexOf(SelectedName) End If ' rebuild the listbox EnumerateRenderers(Renderers, List) End Sub Private Sub SelectRenderer(ByVal Renderers As AudioRenderers, ByVal List As ListBox) ' select the highlighted renderer Renderers.Selection = Renderers.IndexOf(TryCast(List.Items(List.SelectedIndex), Renderer)) End Sub Public NotInheritable Class LEAD_VARS Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media" End Class
using Leadtools; using Leadtools.MediaFoundation; using LeadtoolsMediaFoundationExamples.Fixtures; public bool _result = false; public CaptureCtrlForm _form = new CaptureCtrlForm(); public CaptureCtrl _capturectrl; public TestCtrlSubForm _csbform; public void RenderersExample() { // 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 renderers 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 renderers form _csbform.ShowDialog(); // get the selected renderer index int selectedRenderer = _capturectrl.AudioRenderers.Selection; // set the result to what we expect _result = (_csbform.List.SelectedItem != null && _capturectrl.AudioRenderers.Selection != -1); } catch (Exception) { _result = false; } } void Form_Load(object sender, EventArgs e) { // build the audio renderer list EnumerateRenderers(_capturectrl.AudioRenderers, _csbform.List); } void List_Click(object sender, EventArgs e) { // select the audio renderer SelectRenderer(_capturectrl.AudioRenderers, _csbform.List); } void Refresh_Click(object sender, EventArgs e) { // refresh audio renderers RefreshRenderers(_capturectrl.AudioRenderers, _csbform.List); } void EnumerateRenderers(AudioRenderers Renderers, ListBox List) { // Build the renderers list box int Selected = -1; // empty the list box List.Items.Clear(); // add the available audio renderers to the list box for (int i = 0; (i <= (Renderers.Count - 1)); i++) { List.Items.Add(Renderers[i]); if (Renderers[i].Selected) { Selected = i; } } // highlight the current selection List.SelectedIndex = Selected; } void RefreshRenderers(AudioRenderers Renderers, ListBox List) { string SelectedName = string.Empty; // save the currently selected renderer's name if (Renderers.Selection >= 0) SelectedName = Renderers[Renderers.Selection].FriendlyName; // refresh the renderer collection Renderers.Reset(); // if there was a previously selected renderer, reselect it if (SelectedName != string.Empty) Renderers.Selection = Renderers.IndexOf(SelectedName); // rebuild the listbox EnumerateRenderers(Renderers, List); } void SelectRenderer(AudioRenderers Renderers, ListBox List) { // select the highlighted renderer Renderers.Selection = Renderers.IndexOf(List.Items[List.SelectedIndex] as Renderer); } static class LEAD_VARS { public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media"; }