LEADTOOLS Multimedia (Leadtools.Multimedia assembly)

RunConvert Method

Show in webframe
Example 



Runs a paused conversion process.
Syntax
'Declaration
 
Public Overridable Sub RunConvert() 
'Usage
 
Dim instance As ConvertCtrl
 
instance.RunConvert()
public virtual void RunConvert()
public:
virtual void RunConvert(); 
Remarks
The convert object is expected to be in the paused state before calling this method.
Example
Copy Code  
Imports Leadtools
Imports Leadtools.Multimedia
Imports LeadtoolsMultimediaExamples.Fixtures

Public _result As Boolean = False
Public _form As ConvertCtrlForm = New ConvertCtrlForm()
Public _convertctrl As ConvertCtrl
Public _paused As Boolean = False
Public _percent As Integer = 0
Public Sub ConvertExample()
   ' reference the convert control
   _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_ConvertExample.avi")

   Try
      ' set the source for conversion
      _convertctrl.SourceFile = inFile

      ' set the video and audio compressors
      _convertctrl.VideoCompressors.Mpeg2.Selected = True
      _convertctrl.AudioCompressors.AC3.Selected = True

      ' set the target output file and format
      _convertctrl.TargetFile = outFile

      ' set the target output format
      _convertctrl.TargetFormat = TargetFormatType.AVI

      ' if the source has a non-zero duration, convert it
      If _convertctrl.Duration > 0 Then
         ' set the selected area for conversion
         _convertctrl.SelectionStart = 10
         _convertctrl.SelectionEnd = 20

         ' subscribe to the progress event
         AddHandler _convertctrl.Progress, AddressOf ConvertCtrl_Progress

         ' start the capture process
         _convertctrl.StartConvert()

         ' set a timer on our form to do something
         AddHandler _form.TestTimer.Tick, AddressOf TestTimer_Tick
         _form.TestTimer.Interval = 1000
         _form.TestTimer.Start()

         ' 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 OrElse _convertctrl.State = ConvertState.Paused
            Application.DoEvents()
         Loop
      End If
   Catch e1 As Exception
      _result = False
   End Try
End Sub

Private Sub ConvertCtrl_Progress(ByVal sender As Object, ByVal e As ProgressEventArgs)
   If _convertctrl.PercentComplete > 30 Then
      ' get the percentage complete
      _percent = _convertctrl.PercentComplete

      ' pause the conversion to demonstrate pausing
      _convertctrl.PauseConvert()
      _paused = True
   End If
End Sub

Private Sub TestTimer_Tick(ByVal sender As Object, ByVal e As EventArgs)
   _form.TestTimer.Stop()

   If _paused Then
      ' if we are paused, resume 
      If _convertctrl.State = ConvertState.Paused Then
         ' resume the conversion
         _convertctrl.RunConvert()

         ' set the result
         _result = True
         _paused = False
      End If
   End If

   _form.TestTimer.Start()
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.Multimedia;
using LeadtoolsMultimediaExamples.Fixtures;

public bool _result = false;
public ConvertCtrlForm _form = new ConvertCtrlForm();
public ConvertCtrl _convertctrl;
public bool _paused = false;
public int _percent = 0;
public void ConvertExample()
{
   // reference the convert control
   _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_ConvertExample.avi");

   try
   {
      // set the source for conversion
      _convertctrl.SourceFile = inFile;

      // set the video and audio compressors
      _convertctrl.VideoCompressors.Mpeg2.Selected = true;
      _convertctrl.AudioCompressors.AC3.Selected = true;

      // set the target output file and format
      _convertctrl.TargetFile = outFile;

      // set the target output format
      _convertctrl.TargetFormat = TargetFormatType.AVI;

      // if the source has a non-zero duration, convert it
      if (_convertctrl.Duration > 0)
      {
         // set the selected area for conversion
         _convertctrl.SelectionStart = 10;
         _convertctrl.SelectionEnd = 20;

         // subscribe to the progress event
         _convertctrl.Progress += new ProgressEventHandler(ConvertCtrl_Progress);

         // start the capture process
         _convertctrl.StartConvert();

         // set a timer on our form to do something
         _form.TestTimer.Tick += new EventHandler(TestTimer_Tick);
         _form.TestTimer.Interval = 1000;
         _form.TestTimer.Start();

         // 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
            || _convertctrl.State == ConvertState.Paused)
            Application.DoEvents();
      }
   }
   catch (Exception)
   {
      _result = false;
   }
}

void ConvertCtrl_Progress(object sender, ProgressEventArgs e)
{
   if (_convertctrl.PercentComplete > 30)
   {
      // get the percentage complete
      _percent = _convertctrl.PercentComplete;

      // pause the conversion to demonstrate pausing
      _convertctrl.PauseConvert();
      _paused = true;
   }
}

void TestTimer_Tick(object sender, EventArgs e)
{
   _form.TestTimer.Stop();

   if (_paused)
   {
      // if we are paused, resume 
      if (_convertctrl.State == ConvertState.Paused)
      {
         // resume the conversion
         _convertctrl.RunConvert();

         // set the result
         _result = true;
         _paused = false;
      }
   }

   _form.TestTimer.Start();
}

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.Multimedia requires a Multimedia or Multimedia Suite license and unlock key. For more information, refer to: LEADTOOLS Toolkit Features