LEADTOOLS Multimedia (Leadtools.MediaFoundation assembly)

AudioCaptureFormats Property

Show in webframe
Example 



Gets the AudioFormats object containing all the audio formats available for the current capture device.
Syntax
'Declaration
 
Public Overridable ReadOnly Property AudioCaptureFormats As AudioFormats
'Usage
 
Dim instance As CaptureCtrl
Dim value As AudioFormats
 
value = instance.AudioCaptureFormats
public virtual AudioFormats AudioCaptureFormats {get;}
public:
virtual property AudioFormats^ AudioCaptureFormats {
   AudioFormats^ get();
}

Property Value

An AudioFormats object containing all the audio formats available for the current capture device.
Remarks
The AudioFormats collection contains an AudioFormat object for each of the supported audio formats. Each of the AudioFormat objects include the AudioFormat.BitsPerSample, Channels, and the SampleFrequency properties.
Example
Copy Code  
Imports Leadtools
Imports Leadtools.MediaFoundation
Imports LeadtoolsMediaFoundationExamples.Fixtures

Public _form As CaptureCtrlForm = New CaptureCtrlForm()
Public _result As Boolean = False
Public Sub AudioFormatExample()
   Try
      Dim count As Integer, freq As Integer = 0, bits As Integer = 0, channels As Integer = 0
      Dim found As Integer, selected As Integer = -1

      ' reference the capture control
      Dim capturectrl As CaptureCtrl = _form.CaptureCtrl

      ' set an audio device, use the name of your device here
      If capturectrl.AudioDevices("USB") Is Nothing Then
         Throw New Exception("No USB audio device available")
      End If

      capturectrl.AudioDevices("USB").Selected = True

      ' get count of available audio formats
      count = capturectrl.AudioCaptureFormats.Count

      ' reset the current selection to -1
      capturectrl.AudioCaptureFormats.Reset()

      ' reference the audioformats property
      Dim audioformats As AudioFormats = capturectrl.AudioCaptureFormats

      ' enumerate formats and select one
      For Each af As AudioFormat In audioformats
         freq = af.SampleFrequency
         bits = af.BitsPerSample
         channels = af.Channels

         ' select the format if it matches some criteria
         If freq = 8000 AndAlso bits = 16 AndAlso channels = 2 Then
            af.Selected = True
            Exit For
         End If
      Next af

      ' get the currently selected format
      selected = audioformats.Selection

      ' find a format based on frequency, bits/channel and number of channels
      found = audioformats.IndexOf(8000, 8, 2)

      ' our found format is not selected, so select it
      If found <> selected Then
         audioformats.Selection = found
      End If

      ' get the new selected format
      selected = audioformats.Selection

      ' set our result based on what we expect
      _result = (count > 0 AndAlso selected = found)
   Catch e1 As Exception
      _result = False
   End Try
End Sub
using Leadtools;
using Leadtools.MediaFoundation;
using LeadtoolsMediaFoundationExamples.Fixtures;

public CaptureCtrlForm _form = new CaptureCtrlForm();
public bool _result = false;
public void AudioFormatExample()
{
   try
   {
      int count, freq = 0, bits = 0, channels = 0;
      int found, selected = -1;

      // reference the capture control
      CaptureCtrl capturectrl = _form.CaptureCtrl;

      // set an audio device, use the name of your device here
      if (capturectrl.AudioDevices["USB"] == null)
         throw new Exception("No USB audio device available");

      capturectrl.AudioDevices["USB"].Selected = true;

      // get count of available audio formats
      count = capturectrl.AudioCaptureFormats.Count;

      // reset the current selection to -1
      capturectrl.AudioCaptureFormats.Reset();

      // reference the audioformats property
      AudioFormats audioformats = capturectrl.AudioCaptureFormats;

      // enumerate formats and select one
      foreach (AudioFormat af in audioformats)
      {
         freq = af.SampleFrequency;
         bits = af.BitsPerSample;
         channels = af.Channels;

         // select the format if it matches some criteria
         if (freq == 8000 && bits == 16 && channels == 2)
         {
            af.Selected = true;
            break;
         }
      }

      // get the currently selected format
      selected = audioformats.Selection;

      // find a format based on frequency, bits/channel and number of channels
      found = audioformats.IndexOf(8000, 8, 2);

      // our found format is not selected, so select it
      if (found != selected)
         audioformats.Selection = found;

      // get the new selected format
      selected = audioformats.Selection;

      // set our result based on what we expect
      _result = (count > 0 && selected == found);
   }
   catch (Exception)
   {
      _result = false;
   }
}
Requirements

Target Platforms

See Also

Reference

CaptureCtrl Class
CaptureCtrl Members

 

 


Products | Support | Contact Us | Copyright Notices
© 2006-2014 All Rights Reserved. LEAD Technologies, Inc.

Leadtools.MediaFoundation requires a Multimedia or Multimedia Suite license and unlock key. For more information, refer to: LEADTOOLS Toolkit Features