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
' reset target audio types
targetaudiotypes.Reset()
' 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
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");
}
// reset target audio types
targetaudiotypes.Reset();
// 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;
}
}