LEADTOOLS Multimedia (Leadtools.Multimedia assembly) Send comments on this topic. | Back to Introduction | Help Version 17.0.3.22
EstimateOutputSize Method
See Also 
Leadtools.Multimedia Namespace > CaptureCtrl Class : EstimateOutputSize Method



duration
Value that represents the duration to calculate the estimated output size, in seconds.
duration
Value that represents the duration to calculate the estimated output size, in seconds.
Gets the estimated capturing output size for the specified duration, in bytes.

Syntax

Visual Basic (Declaration) 
Public Overridable Function EstimateOutputSize( _
   ByVal duration As Double _
) As Double
Visual Basic (Usage)Copy Code
Dim instance As CaptureCtrl
Dim duration As Double
Dim value As Double
 
value = instance.EstimateOutputSize(duration)
C# 
public virtual double EstimateOutputSize( 
   double duration
)
C++/CLI 
public:
virtual double EstimateOutputSize( 
   double duration
) 

Parameters

duration
Value that represents the duration to calculate the estimated output size, in seconds.

Return Value

estimated captured object output size, in bytes.

Example

Visual BasicCopy Code
Public _result As Boolean = False
      Public _form As CaptureCtrlForm = New CaptureCtrlForm()
      Public _capturectrl As CaptureCtrl
      Public Sub EstimateExample()
         ' reference the capture control
         _capturectrl = _form.CaptureCtrl

         ' output file 
         Dim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_EstimateOutputBitRateExample.avi")

         ' set the video capture device, use your capture device name here
         If _capturectrl.VideoDevices("USB") Is Nothing Then
            Throw New Exception("No USB video device available")
         End If

         _capturectrl.VideoDevices("USB").Selected = True

         Try
            ' set a video compressor
            _capturectrl.VideoCompressors.H264.Selected = True

            ' set the capture target file
            _capturectrl.TargetFile = outFile

            ' set the capture mode to still and start
            _capturectrl.ReadyCapture(CaptureMode.Video Or CaptureMode.InhibitRun)

            ' get the bit rate estimate
            Dim bitRate As Integer = _capturectrl.EstimateOutputBitRate()

            ' get file size estimate for 60 secs
            Dim fileSize As Double = _capturectrl.EstimateOutputSize(60.0)

            ' set the result to what we expect
            _result = (bitRate <> 0 AndAlso fileSize <> 0.0)
         Catch e1 As Exception
            _result = False
         End Try
      End Sub

Public NotInheritable Class LEAD_VARS
   Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 17\Media"
End Class
C#Copy Code
public bool _result = false;
      public CaptureCtrlForm _form = new CaptureCtrlForm();
      public CaptureCtrl _capturectrl;
      public void EstimateExample()
      {
         // reference the capture control
         _capturectrl = _form.CaptureCtrl;

         // output file 
         string outFile = Path.Combine(LEAD_VARS.MediaDir,"CaptureCtrl_EstimateOutputBitRateExample.avi");

         // set the video capture device, use your capture device name here
         if (_capturectrl.VideoDevices["USB"] == null)
            throw new Exception("No USB video device available");

         _capturectrl.VideoDevices["USB"].Selected = true;

         try
         {
            // set a video compressor
            _capturectrl.VideoCompressors.H264.Selected = true;

            // set the capture target file
            _capturectrl.TargetFile = outFile;

            // set the capture mode to still and start
            _capturectrl.ReadyCapture(CaptureMode.Video | CaptureMode.InhibitRun);

            // get the bit rate estimate
            int bitRate = _capturectrl.EstimateOutputBitRate();

            // get file size estimate for 60 secs
            double fileSize = _capturectrl.EstimateOutputSize(60.0);

            // set the result to what we expect
            _result = (bitRate != 0 && fileSize != 0.0);
         }
         catch (Exception)
         {
            _result = false;
         }
      }

static class LEAD_VARS
{
   public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 17\Media";
}

Remarks

The estimated output size is calculated using the following equation: Size = (Bitrate * Duration) / 8. The retrieved size depends on the state of the capture object. If the object is in the running state, the retrieved size is related to the actual number of bytes that have been written. If the object is not running, the retrieved size is a theoretical value dependent on the capturing settings and the chosen encoding settings.

Requirements

Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7

See Also