Leadtools.MediaFoundation Namespace > ConvertCtrl Class : PercentCompleteScalar Property |
'Declaration Public Overridable Property PercentCompleteScalar As Integer
'Usage Dim instance As ConvertCtrl Dim value As Integer instance.PercentCompleteScalar = value value = instance.PercentCompleteScalar
public virtual int PercentCompleteScalar {get; set;}
Imports Leadtools Imports Leadtools.MediaFoundation Imports LeadtoolsMediaFoundationExamples.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.mp4") Try ' set the source for conversion _convertctrl.SourceFile = inFile ' select MP4 target format _convertctrl.TargetFormat = TargetFormatType.MP4 ' 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 target output file and format _convertctrl.TargetFile = outFile ' set the target output format _convertctrl.TargetFormat = TargetFormatType.MP4 ' 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.MediaFoundation; using LeadtoolsMediaFoundationExamples.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.MP4"); try { // set the source for conversion _convertctrl.SourceFile = inFile; // select MP4 target format _convertctrl.TargetFormat = TargetFormatType.MP4; // select H264 video target format int index = -1; TargetVideoFormats targetvideoformats = _convertctrl.TargetFormats[_convertctrl.TargetFormat].VideoFormats; index = targetvideoformats.IndexOf("{34363248-0000-0010-8000-00AA00389B71}");// H264 targetvideoformats.Selection = index; // select AAC audio target format TargetAudioFormats targetaudioformats = _convertctrl.TargetFormats[_convertctrl.TargetFormat].AudioFormats; index = targetaudioformats.IndexOf("{00001610-0000-0010-8000-00AA00389B71}");// AAC targetaudioformats.Selection = index; // set the target output file and format _convertctrl.TargetFile = outFile; // 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"; }