Imports Leadtools
Imports Leadtools.MediaFoundation
Imports LeadtoolsMediaFoundationExamples.Fixtures
Public _result As Boolean = False
Public _form As ConvertCtrlForm = New ConvertCtrlForm()
Public Sub TargetFormatsExample()
' reference the convert control
Dim convertctrl As ConvertCtrl = _form.ConvertCtrl
' input and output files
Dim inFile As String = Path.Combine(LEAD_VARS.MediaDir, "ConvertCtrl_Source.avi")
Dim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "ConvertCtrl_TargetFormatsExample.wmv")
Try
' set the video capture device, use your capture device name here
convertctrl.SourceFile = inFile
' select MP4 target format
Dim tf As TargetFormat = convertctrl.TargetFormats(TargetFormatType.MP4)
tf.Selected = True
' select H264 video target format
Dim index As Integer = -1
Dim trgvideoformats As TargetVideoFormats = convertctrl.TargetFormats(convertctrl.TargetFormat).VideoFormats
index = trgvideoformats.IndexOf("{34363248-0000-0010-8000-00AA00389B71}") ' H264
trgvideoformats.Selection = index
' select AAC audio target format
Dim trgaudioformats As TargetAudioFormats = convertctrl.TargetFormats(convertctrl.TargetFormat).AudioFormats
index = trgaudioformats.IndexOf("{00001610-0000-0010-8000-00AA00389B71}") ' AAC
trgaudioformats.Selection = index
' set the allow capture streams
convertctrl.AllowedStreams = tf.Streams
' check it directly
Dim tft As TargetFormatType = convertctrl.TargetFormat
' set the result to what we expect
_result = (tft = TargetFormatType.MP4)
' set the target file
convertctrl.TargetFile = outFile
' convert it now!
convertctrl.StartConvert()
Catch e1 As Exception
_result = False
End Try
' we'll loop on the state and pump messages for this example.
' but you should not need to if running from a Windows Forms application.
Do While convertctrl.State = ConvertState.Running
Application.DoEvents()
Loop
End Sub
Public NotInheritable Class LEAD_VARS
Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media"
End Class
using Leadtools;
using Leadtools.MediaFoundation;
using LeadtoolsMediaFoundationExamples.Fixtures;
public bool _result = false;
public ConvertCtrlForm _form = new ConvertCtrlForm();
public void TargetFormatsExample()
{
// reference the convert control
ConvertCtrl convertctrl = _form.ConvertCtrl;
// input and output files
string inFile = Path.Combine(LEAD_VARS.MediaDir,"ConvertCtrl_Source.avi");
string outFile = Path.Combine(LEAD_VARS.MediaDir,"ConvertCtrl_TargetFormatsExample.wmv");
try
{
// set the video convert input file name
convertctrl.SourceFile = inFile;
// select video and audio target formats for the output
int index = -1;
TargetVideoFormats targetvideoformats = convertctrl.TargetFormats[convertctrl.TargetFormat].VideoFormats;
index = targetvideoformats.IndexOf("{33564D57-0000-0010-8000-00AA00389B71}");// Windows Media Video 9 (WMV)
targetvideoformats.Selection = index;
TargetAudioFormats targetaudioformats = convertctrl.TargetFormats[convertctrl.TargetFormat].AudioFormats;
index = targetaudioformats.IndexOf("{00000161-0000-0010-8000-00AA00389B71}");// Windows Media Audio (WMA)
targetaudioformats.Selection = index;
// select the WMV target format
TargetFormat tf = convertctrl.TargetFormats[TargetFormatType.WMV];
tf.Selected = true;
// set the allow capture streams
convertctrl.AllowedStreams = tf.Streams;
// check it directly
TargetFormatType tft = convertctrl.TargetFormat;
// set the result to what we expect
_result = (tft == TargetFormatType.WMV);
// set the target file
convertctrl.TargetFile = outFile;
// convert it now!
convertctrl.StartConvert();
}
catch (Exception)
{
_result = false;
}
// we'll loop on the state and pump messages for this example.
// but you should not need to if running from a Windows Forms application.
while (convertctrl.State == ConvertState.Running)
Application.DoEvents();
}
static class LEAD_VARS
{
public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media";
}