IndexOf(TargetAudioType) Method

Summary
Determines the index of a specific TargetAudioType item in the IList.
Syntax
C#
C++/CLI
public int IndexOf( 
   TargetAudioType item 
) 
public: 
int IndexOf(  
   TargetAudioType^ item 
)  

Parameters

item
The TargetAudioType item to locate in the IList.

Return Value

System.Int32

Remarks

This method uses the Find method of the underlying item collection to locate the desired item.

Example
C#
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; 
   } 
} 
Requirements

Target Platforms

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

Leadtools.MediaFoundation Assembly

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