EstimateOutputBitRate Method

Summary

Gets the estimated capture output bit rate, in bits per second.

Syntax
C#
VB
C++
public virtual int EstimateOutputBitRate() 
Public Overridable Function EstimateOutputBitRate() As Integer 
public: 
virtual int EstimateOutputBitRate();  

Return Value

estimated capture output bit rate, in bits per second.

Remarks

The retrieved bit rate depends on the state of the capture object. If the object is in the running state, the retrieved bit rate is related to the actual number of bytes written. If the object is not running, the retrieved bit rate is a theoretical value that depends on the capture and selected encoder settings.

Example
C#
VB
using Leadtools; 
using Leadtools.Multimedia; 
using LeadtoolsMultimediaExamples.Fixtures; 
 
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 20\Media"; 
} 
Imports Leadtools 
Imports Leadtools.Multimedia 
Imports LeadtoolsMultimediaExamples.Fixtures 
 
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 seconds 
      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 20\Media" 
End Class 

Requirements

Target Platforms

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

Leadtools.Multimedia Assembly