LEADTOOLS Multimedia (Leadtools.MediaFoundation assembly)

Channels Property

Show in webframe
Example 



Gets the number of audio format channels.
Syntax
'Declaration
 
Public ReadOnly Property Channels As Integer
'Usage
 
Dim instance As AudioFormat
Dim value As Integer
 
value = instance.Channels
public int Channels {get;}
public:
property int Channels {
   int get();
}

Property Value

A value representing the number of channels.
Remarks

The AudioFormats object contains all the audio formats available for the current capture device. The AudioFormats object contains an AudioFormat object for each of the supported audio formats. The properties of each AudioFormat object, obtained using the [] indexer, contain information for the specific audio format. This information includes the BitsPerSample property, Channels property, and the SampleFrequency property.

The AudioFormat.BitsPerSample property is the number of bits per sample for the audio format The AudioFormat.SampleFrequency property is the sample frequency of the format.

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

AudioFormat Class
AudioFormat Members
AudioCaptureFormats Property

 

 


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