Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction | Help Version 19.0.2.9
|
Leadtools.Multimedia Namespace > ConvertCtrl Class : Duration Property |
public virtual double Duration {get;}
'Declaration
Public Overridable ReadOnly Property Duration As Double
'Usage
Dim instance As ConvertCtrl Dim value As Double value = instance.Duration
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 19\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 19\Media"; }