AudioRenderers Property

Summary
Gets the registered audio renderers collection object.
Syntax
C#
C++/CLI
[EditorAttribute(System.Type, System.Type)] 
public AudioRenderers AudioRenderers { get; } 
public: 
property AudioRenderers^ AudioRenderers { 
   AudioRenderers^ get(); 
} 

Property Value

An AudioRenderers collection object representing the available audio renderers.

Remarks

Gets the registered audio renderers collection object. The AudioRenderers object is used to enumerate the available audio renderers, and to select a renderer for audio output.

Example
C#
using Leadtools; 
using Leadtools.MediaFoundation; 
using LeadtoolsMediaFoundationExamples.Fixtures; 
 
 
public bool _result = false; 
public PlayCtrlForm _form = new PlayCtrlForm(); 
public PlayCtrl _playctrl; 
public TestCtrlSubForm _pcsbform; 
 
public void RenderersExample() 
{ 
   // reference the play control 
   _playctrl = _form.PlayCtrl; 
 
   // input file 
   string inFile = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_SourceVideoOnly.avi"); 
 
   try 
   { 
      // create the sub form for renderers listbox 
      _pcsbform = new TestCtrlSubForm(); 
 
      _pcsbform.Load += new EventHandler(Form_Load); 
      _pcsbform.buttonRefresh.Click += new EventHandler(Refresh_Click); 
      _pcsbform.List.Click += new EventHandler(List_Click); 
 
      // set autostart to false 
      _playctrl.AutoStart = false; 
 
      // set our source media file 
      _playctrl.SourceFile = inFile; 
 
      // show the renderers form 
      _pcsbform.ShowDialog(); 
 
      // get the selected renderer index 
      int selectedRenderer = _playctrl.AudioRenderers.Selection; 
 
      // set the result to what we expect  
      _result = (_pcsbform.List.SelectedItem != null && _playctrl.AudioRenderers.Selection != -1); 
   } 
   catch (Exception) 
   { 
      _result = false; 
   } 
} 
 
void Form_Load(object sender, EventArgs e) 
{ 
   //  build the audio renderer list 
   EnumerateRenderers(_playctrl.AudioRenderers, _pcsbform.List); 
} 
 
void List_Click(object sender, EventArgs e) 
{ 
   //  select the audio renderer 
   SelectRenderer(_playctrl.AudioRenderers, _pcsbform.List); 
} 
 
void Refresh_Click(object sender, EventArgs e) 
{ 
   //  refresh audio renderers 
   RefreshRenderers(_playctrl.AudioRenderers, _pcsbform.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.Refresh(); 
 
   //  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:\LEADTOOLS22\Media"; 
} 
Requirements

Target Platforms

Help Version 22.0.2022.12.7
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.MediaFoundation Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.