Item Property

Summary

Gets or sets the TargetAudioType item at the specified index.

Syntax
C#
VB
C++
public TargetAudioType Item( 
   int index 
) { get; set; } 
Public Overloads Property Item( _ 
   ByVal index As Integer _ 
) As TargetAudioType 
public: 
property TargetAudioType^ Item { 
   TargetAudioType^ get(int index); 
   void set (int index, TargetAudioType^ ); 
} 

Parameters

index
The zero-based index of the item to get or set.

Property Value

The TargetAudioType item at the specified index.

Exceptions

ExceptionDescription
System.ArgumentOutOfRangeExceptionThe exception that is thrown when the value of an argument is outside the allowable range of values as defined by the invoked method.

Remarks

This property allows access to a specific item in the collection by using the following syntax: myCollection[index]. The C# language uses the this keyword to define the indexers instead of implementing the Item property. VB implements Item as a default property, which provides the same indexing functionality.

Example
C#
VB
using Leadtools; 
using Leadtools.MediaFoundation; 
using LeadtoolsMediaFoundationExamples.Fixtures; 
 
public bool _result = false; 
public CaptureCtrlForm _form = new CaptureCtrlForm(); 
 
public void IndexContainsExample() 
{ 
   // reference the capture control 
   CaptureCtrl capturectrl = _form.CaptureCtrl; 
 
   try 
   { 
      // set an audio device first, you should use your audio device name here 
      if (capturectrl.AudioDevices["USB"] == null) 
         throw new Exception("No USB audio device available"); 
 
      capturectrl.AudioDevices["USB"].Selected = true; 
 
      // reference the target formats object 
      TargetFormats formats = capturectrl.TargetFormats; 
 
      // reference the target format object 
      TargetFormat tf = formats[TargetFormatType.MP4]; 
 
      // reference the target audio formats object 
      TargetAudioFormats taformats = tf.AudioFormats; 
 
      // check the index using a name string 
      int i = taformats.IndexOf("{00001610-0000-0010-8000-00AA00389B71}");// AAC 
 
      // reference the target audio format object 
      TargetAudioFormat taformat = taformats[i]; 
 
      // select the target audio format 
      taformat.Selected = true; 
 
      // get target audio types collection 
      TargetAudioTypes targetaudiotypes = taformat.AudioTypes; 
 
      // get target audio types count 
      if (targetaudiotypes.Count <= 0) 
      { 
         throw new Exception("No audio types available for the selected audio format"); 
      } 
 
      // set audio properties on the target format. 
      tf.AudioAvgBytesPerSecond = 24000; 
      tf.AudioBitsPerSample = 16; 
      tf.AudioNumChannels = 1; 
      tf.AudioSamplesPerSecond = 48000; 
 
      // find the index of the audio type which have the audio properties selected in the target format 
      int nIndex = targetaudiotypes.FindFormat(tf); 
 
      // access the type via the collection indexer 
      TargetAudioType tatype = targetaudiotypes[nIndex]; 
 
      // check if the collection contains this type  
      // (it should we just got it with IndexOf above) 
      if (targetaudiotypes.Contains(tatype)) 
      { 
         // set the result to what we expect 
         _result = true; 
      } 
   } 
   catch (Exception) 
   { 
      _result = false; 
   } 
} 
Imports Leadtools 
Imports Leadtools.MediaFoundation 
Imports LeadtoolsMediaFoundationExamples.Fixtures 
 
Public _result As Boolean = False 
Public _form As CaptureCtrlForm = New CaptureCtrlForm() 
 
Public Sub IndexContainsExample() 
   ' reference the capture control 
   Dim capturectrl As CaptureCtrl = _form.CaptureCtrl 
 
   Try 
      ' set an audio device first, you should use your audio device name here 
      If capturectrl.AudioDevices("USB") Is Nothing Then 
         Throw New Exception("No USB audio device available") 
      End If 
 
      capturectrl.AudioDevices("USB").Selected = True 
 
      ' reference the target formats object 
      Dim formats As TargetFormats = capturectrl.TargetFormats 
 
      ' reference the target format object 
      Dim tf As TargetFormat = formats(TargetFormatType.MP4) 
 
      ' reference the target audio formats object 
      Dim taformats As TargetAudioFormats = tf.AudioFormats 
 
      ' check the index using a name string 
      Dim i As Integer = taformats.IndexOf("{00001610-0000-0010-8000-00AA00389B71}") ' AAC 
 
      ' reference the target audio format object 
      Dim taformat As TargetAudioFormat = taformats(i) 
 
      ' select the target audio format 
      taformat.Selected = True 
 
      ' get target audio types collection 
      Dim targetaudiotypes As TargetAudioTypes = taformat.AudioTypes 
 
      ' get target audio types count 
      If targetaudiotypes.Count <= 0 Then 
         Throw New Exception("No audio types available for the selected audio format") 
      End If 
 
      ' set audio properties on the target format. 
      tf.AudioAvgBytesPerSecond = 24000 
      tf.AudioBitsPerSample = 16 
      tf.AudioNumChannels = 1 
      tf.AudioSamplesPerSecond = 48000 
 
      ' find the index of the audio type which have the audio properties selected in the target format 
      Dim nIndex As Integer = targetaudiotypes.FindFormat(tf) 
 
      ' access the type via the collection indexer 
      Dim tatype As TargetAudioType = targetaudiotypes(nIndex) 
 
      ' check if the collection contains this type  
      ' (it should we just got it with IndexOf above) 
      If targetaudiotypes.Contains(tatype) Then 
         ' set the result to what we expect 
         _result = True 
      End If 
   Catch e1 As Exception 
      _result = False 
   End Try 
End Sub 

Requirements

Target Platforms

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

Leadtools.MediaFoundation Assembly