LEADTOOLS Multimedia (Leadtools.MediaFoundation assembly)

Progress Event (ConvertCtrl)

Show in webframe
Example 



Occurs periodically during a conversion operation to notify percentage completed.
Syntax
'Declaration
 
Public Event Progress As ProgressEventHandler
'Usage
 
Dim instance As ConvertCtrl
Dim handler As ProgressEventHandler
 
AddHandler instance.Progress, handler
public event ProgressEventHandler Progress
public:
event ProgressEventHandler^ Progress
Event Data

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.

PropertyDescription
percent The percentage complete for convert progress notifications.
time The time elapsed for capture progress notifications.
Remarks
The event handler is passed a ProgressEventArgs containing the percentage completed.
Example
Copy Code  
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 18\Media"
End Class
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 18\Media";
}
Requirements

Target Platforms

See Also

Reference

ConvertCtrl Class
ConvertCtrl Members

 

 


Products | Support | Contact Us | Copyright Notices
© 2006-2014 All Rights Reserved. LEAD Technologies, Inc.

Leadtools.MediaFoundation requires a Multimedia or Multimedia Suite license and unlock key. For more information, refer to: LEADTOOLS Toolkit Features