SaveStillDIB Method

Summary
Saves a snapshot from the running stream to a file as a Device Independent Bitmap (DIB).
Syntax
C#
C++/CLI
public virtual void SaveStillDIB( 
   string fileName, 
   int timeOut 
) 
public: 
virtual void SaveStillDIB(  
   String^ fileName, 
   int timeOut 
)  

Parameters

fileName
A string that represents the name to use when saving the snapshot.

timeOut
The timeout period, in milliseconds. This method will fail if it was not able to take a DIB in the specified time. Use -1 to wait indefinitely until a DIB is snapped.

Remarks

Saves a snapshot from the running stream to a file. The file is saved as a DIB using the specified filename and timeout period. This method blocks (does not return) until the timeout occurs or the DIB is snapped.

Example
C#
using Leadtools; 
using Leadtools.MediaFoundation; 
using LeadtoolsMediaFoundationExamples.Fixtures; 
 
 
public PlayCtrlForm _form = new PlayCtrlForm(); 
public PlayCtrl _playctrl = null; 
 
public bool _result = false; 
string _inFile = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_Source.avi"); 
string _outFile = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_SaveStillDIB.dib"); 
 
public void SaveStillDIBExample() 
{ 
   // reference the play control 
   _playctrl = _form.PlayCtrl; 
 
   try 
   { 
      // set a timer on the form to make the still DIB 
      _form.TestTimer.Interval = 5000; 
      _form.TestTimer.Tick += new EventHandler(SaveStillDIB_Helper); 
 
      // set the source and target files 
      _playctrl.SourceFile = _inFile; 
 
      // now start the test timer for the still DIB 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 (_playctrl.State == PlayState.Running) 
      Application.DoEvents(); 
} 
 
public void SaveStillDIB_Helper(object sender, EventArgs e) 
{ 
   // cancel the timer 
   _form.TestTimer.Stop(); 
 
   // save the still DIB to a file 
   _playctrl.SaveStillDIB(_outFile, -1); 
 
   // check for the capture file and set the result 
   if (File.Exists(Path.Combine(Directory.GetCurrentDirectory(), _outFile))) 
      _result = true; 
 
   // stop playback 
   _playctrl.Stop(); 
} 
 
static class LEAD_VARS 
{ 
   public const string MediaDir = @"C:\LEADTOOLS22\Media"; 
} 
Requirements

Target Platforms

See Also

Reference

PlayCtrl Class

PlayCtrl Members

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

Leadtools.MediaFoundation Assembly

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