Occurs periodically during a conversion operation to notify percentage completed.
public event ProgressEventHandler Progress
Public Event Progress As ProgressEventHandler
public:
event ProgressEventHandler^ Progress
The event handler receives an argument of type ProgressEventArgs containing data related to this event. The following ProgressEventArgs properties provide information specific to this event.
Property | Description |
---|---|
percent | The percentage complete for convert progress notifications. |
time | The time elapsed for capture progress notifications. |
using Leadtools;
using Leadtools.MediaFoundation;
using LeadtoolsMediaFoundationExamples.Fixtures;
public bool _result = false;
public ConvertCtrlForm _form = new ConvertCtrlForm();
public void ProgressExample()
{
string inFile = Path.Combine(LEAD_VARS.MediaDir, "ConvertCtrl_Source.avi");
string outFile = Path.Combine(LEAD_VARS.MediaDir, "ConvertCtrl_ProgressExample.MP4");
// reference the convert control
ConvertCtrl convertctrl = _form.ConvertCtrl;
try
{
// set the input and output files
convertctrl.SourceFile = inFile;
convertctrl.TargetFile = outFile;
// select the target format
convertctrl.TargetFormat = TargetFormatType.MP4;
// select video and audio target formats for the output
int index = -1;
TargetVideoFormats targetvideoformats = convertctrl.TargetFormats[convertctrl.TargetFormat].VideoFormats;
index = targetvideoformats.IndexOf("{34363248-0000-0010-8000-00AA00389B71}");// H264
targetvideoformats.Selection = index;
TargetAudioFormats targetaudioformats = convertctrl.TargetFormats[convertctrl.TargetFormat].AudioFormats;
index = targetaudioformats.IndexOf("{00001610-0000-0010-8000-00AA00389B71}");// AAC
targetaudioformats.Selection = index;
// set our progress event handler
convertctrl.Progress += new ProgressEventHandler(ConvertCtrl_Progress);
// convert it now!
convertctrl.StartConvert();
}
catch (COMException cex)
{
if (cex.ErrorCode == (int)ErrorCode.VFW_E_WRONG_STATE)
throw cex;
_result = false;
}
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();
}
public void ConvertCtrl_Progress(object sender, ProgressEventArgs e)
{
// set the result to true if complete
if (e.percent == 100)
_result = true;
}
static class LEAD_VARS
{
public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 20\Media";
}
Imports Leadtools
Imports Leadtools.MediaFoundation
Imports LeadtoolsMediaFoundationExamples.Fixtures
Public _result As Boolean = False
Public _form As ConvertCtrlForm = New ConvertCtrlForm()
Public Sub ProgressExample()
Dim inFile As String = Path.Combine(LEAD_VARS.MediaDir, "ConvertCtrl_Source.avi")
Dim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "ConvertCtrl_ProgressExample.MP4")
' reference the convert control
Dim convertctrl As ConvertCtrl = _form.ConvertCtrl
Try
' set the input and output files
convertctrl.SourceFile = inFile
convertctrl.TargetFile = outFile
' set the target format
convertctrl.TargetFormat = TargetFormatType.MP4
' select video and audio target formats for the output
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
Dim trgaudioformats As TargetAudioFormats = convertctrl.TargetFormats(convertctrl.TargetFormat).AudioFormats
index = trgaudioformats.IndexOf("{00001610-0000-0010-8000-00AA00389B71}") ' AAC
trgaudioformats.Selection = index
' set our progress event handler
AddHandler convertctrl.Progress, AddressOf ConvertCtrl_Progress
' convert it now!
convertctrl.StartConvert()
Catch cex As COMException
If cex.ErrorCode = CInt(ErrorCode.VFW_E_WRONG_STATE) Then
Throw cex
End If
_result = False
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 Sub ConvertCtrl_Progress(ByVal sender As Object, ByVal e As ProgressEventArgs)
' set the result to true if complete
If e.percent = 100 Then
_result = True
End If
End Sub
Public NotInheritable Class LEAD_VARS
Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 20\Media"
End Class
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document