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



fileName
A string containing the name of the file in which to save the bitmap.
format
Value that represents the output file format. For a list of possible values, refer to StillFormatType enumeration values.
quality
Value that represents the compression quality. This is used only when the format parameter is StillFormatType.CMP. For a list of possible values, refer to the StillQuality enumeration values.
flags
Reserved for future use. Pass 0.
timeOut
The timeout period in milliseconds. The method will fail if it was not able to take a sample in the specified time. Use –1 to wait indefinitely until a sample is captured.
fileName
A string containing the name of the file in which to save the bitmap.
format
Value that represents the output file format. For a list of possible values, refer to StillFormatType enumeration values.
quality
Value that represents the compression quality. This is used only when the format parameter is StillFormatType.CMP. For a list of possible values, refer to the StillQuality enumeration values.
flags
Reserved for future use. Pass 0.
timeOut
The timeout period in milliseconds. The method will fail if it was not able to take a sample in the specified time. Use –1 to wait indefinitely until a sample is captured.
Saves a snapshot from the running stream to a file as a bitmap.

Syntax

Visual Basic (Declaration) 
Public Overridable Sub SaveStillBitmap( _
   ByVal fileName As String, _
   ByVal format As StillFormatType, _
   ByVal quality As StillQuality, _
   ByVal flags As Integer, _
   ByVal timeOut As Integer _
) 
Visual Basic (Usage)Copy Code
Dim instance As ConvertCtrl
Dim fileName As String
Dim format As StillFormatType
Dim quality As StillQuality
Dim flags As Integer
Dim timeOut As Integer
 
instance.SaveStillBitmap(fileName, format, quality, flags, timeOut)
C# 
public virtual void SaveStillBitmap( 
   string fileName,
   StillFormatType format,
   StillQuality quality,
   int flags,
   int timeOut
)
C++/CLI 
public:
virtual void SaveStillBitmap( 
   String^ fileName,
   StillFormatType format,
   StillQuality quality,
   int flags,
   int timeOut
) 

Parameters

fileName
A string containing the name of the file in which to save the bitmap.
format
Value that represents the output file format. For a list of possible values, refer to StillFormatType enumeration values.
quality
Value that represents the compression quality. This is used only when the format parameter is StillFormatType.CMP. For a list of possible values, refer to the StillQuality enumeration values.
flags
Reserved for future use. Pass 0.
timeOut
The timeout period in milliseconds. The method will fail if it was not able to take a sample in the specified time. Use –1 to wait indefinitely until a sample is captured.

Example

Visual BasicCopy Code
Public _result As Boolean = False
      Public _form As ConvertCtrlForm = New ConvertCtrlForm()
      Public _convertctrl As ConvertCtrl = Nothing
      Public _bmpFile As String = Path.Combine(LEAD_VARS.MediaDir, "ConvertCtrl_SaveStillBitmap.bmp")
      Public Sub SaveStillBitmapExample()
         ' input and output file names
         Dim inFile As String = Path.Combine(LEAD_VARS.MediaDir, "ConvertCtrl_Source.avi")
         Dim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "ConvertCtrl_SaveStillBitmapExample.mpg")

         Try
            ' reference the convert control
            _convertctrl = _form.ConvertCtrl

            ' set a timer on the form to make the still bitmap
            _form.TestTimer.Interval = 5000
            AddHandler _form.TestTimer.Tick, AddressOf SaveStillBitmap_Helper

            ' enable still capture
            _convertctrl.EnableStillCapture = True

            ' set the time window limit for capture of stills (ms)
            _convertctrl.StillCaptureLimit = 100000

            ' set the compressor to DVVideo
            _convertctrl.VideoCompressors.DVVideo.Selected = True

            ' set the source and target files
            _convertctrl.SourceFile = inFile
            _convertctrl.TargetFile = outFile

            ' convert it now!
            _convertctrl.StartConvert()

            ' now start the test timer for the still capture
            _form.TestTimer.Start()
         Catch e1 As Exception
            _result = False
         End Try

         ' 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
            Application.DoEvents()
         Loop
      End Sub

      Public Sub SaveStillBitmap_Helper(ByVal sender As Object, ByVal e As EventArgs)
         ' cancel the timer
         _form.TestTimer.Stop()

         ' try to simulate an error condition
         _convertctrl.SaveStillBitmap(_bmpFile, StillFormatType.BMP, 0, 0, -1)

         ' check for the capture file and set the result
         If File.Exists(Path.Combine(Directory.GetCurrentDirectory(), _bmpFile)) Then
            _result = True
         End If
      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 ConvertCtrlForm _form = new ConvertCtrlForm();
      public ConvertCtrl _convertctrl = null;
      public string _bmpFile = Path.Combine(LEAD_VARS.MediaDir,"ConvertCtrl_SaveStillBitmap.bmp");
      public void SaveStillBitmapExample()
      {
         // input and output file names
         string inFile = Path.Combine(LEAD_VARS.MediaDir,"ConvertCtrl_Source.avi");
         string outFile = Path.Combine(LEAD_VARS.MediaDir,"ConvertCtrl_SaveStillBitmapExample.mpg");

         try
         {
            // reference the convert control
            _convertctrl = _form.ConvertCtrl;

            // set a timer on the form to make the still bitmap
            _form.TestTimer.Interval = 5000;
            _form.TestTimer.Tick += new EventHandler(SaveStillBitmap_Helper);

            // enable still capture
            _convertctrl.EnableStillCapture = true;

            // set the time window limit for capture of stills (ms)
            _convertctrl.StillCaptureLimit = 100000;

            // set the compressor to DVVideo
            _convertctrl.VideoCompressors.DVVideo.Selected = true;

            // set the source and target files
            _convertctrl.SourceFile = inFile;
            _convertctrl.TargetFile = outFile;

            // convert it now!
            _convertctrl.StartConvert();

            // now start the test timer for the still capture
            _form.TestTimer.Start();
         }
         catch (Exception)
         {
            _result = false;
         }

         // 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)
            Application.DoEvents();
      }

      public void SaveStillBitmap_Helper(object sender, EventArgs e)
      {
         // cancel the timer
         _form.TestTimer.Stop();

         // try to simulate an error condition
         _convertctrl.SaveStillBitmap(_bmpFile, StillFormatType.BMP, 0, 0, -1);

         // check for the capture file and set the result
         if (File.Exists(Path.Combine(Directory.GetCurrentDirectory(), _bmpFile)))
            _result = true;
      }

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

Remarks

This method does not return until the timeout occurs or the sample is captured. To enable still image capture, call the method EnableStillCapture.

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