Duration Property

Summary
Gets the duration of the media, in seconds.
Syntax
C#
C++/CLI
public virtual double Duration { get; } 
public: 
virtual property double Duration { 
   double get(); 
} 

Property Value

A value representing the duration, in seconds.

Example
C#
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(); 
      } 
      _result = true; 
   } 
   catch (Exception) 
   { 
      _result = false; 
   } 
} 
 
void ConvertCtrl_Progress(object sender, ProgressEventArgs e) 
{ 
   if (_convertctrl.PercentComplete > 30) 
   { 
      // set percentage scalar to 1 
      _convertctrl.PercentCompleteScalar = 1; 
 
      // 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:\LEADTOOLS23\Media"; 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Multimedia Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.