LoadSettingsFromStream Method

Summary
Loads settings from a stream.
Syntax
C#
C++/CLI
public virtual void LoadSettingsFromStream( 
   Stream sourceStream, 
   CaptureSettings flags 
) 
public: 
virtual void LoadSettingsFromStream(  
   Stream^ sourceStream, 
   CaptureSettings flags 
)  

Parameters

sourceStream
The stream containing the saved settings to load.

flags
The settings flags specifying which settings to load. See the CaptureSettings enumeration for settings options.

Remarks

Loads settings from a stream. This reconstructs the capture configuration based on the settings loaded from the specified stream. The capture control settings can be saved to a stream by calling SaveSettingsToStream. Settings can also be saved to a file by calling SaveSettingsToFile. Settings saved to a stream can be loaded using LoadSettingsFromStream.

Example
C#
using Leadtools; 
using Leadtools.Multimedia; 
using LeadtoolsMultimediaExamples.Fixtures; 
 
 
public bool _result = false; 
public CaptureCtrlForm _form = new CaptureCtrlForm(); 
public CaptureCtrl _capturectrl; 
 
public string _streamSettings = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_ObjectSettingsExample_Stream.xml"); 
public string _fileSettings = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_ObjectSettingsExample.xml"); 
 
public void ObjectSettingsExample() 
{ 
   // reference the play control 
   _capturectrl = _form.CaptureCtrl; 
 
   // output file 
   string outFile = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_ObjectSettingsExample.avi"); 
 
   try 
   { 
      Processor pVideoDizzy = _capturectrl.VideoProcessors.EFXDizzy; 
      // set a video processor 
      _capturectrl.SelectedVideoProcessors.Add(pVideoDizzy); 
 
      // save the settings to a file 
      if (SaveFileSettings()) 
      { 
         // now clear the selected processors again 
         _capturectrl.SelectedVideoProcessors.Clear(); 
 
         // check whether a stream file exists 
         if (File.Exists(_fileSettings)) 
         { 
            // load the saved settings from a file 
            // and check whether the processor is selected again 
            LoadFileSettings(); 
 
            // set the result  
            _result = _capturectrl.SelectedVideoProcessors.Contains(pVideoDizzy); 
         } 
      } 
 
      // save the settings to a stream 
      if (SaveStreamSettings()) 
      { 
         // now clear the selected processors again 
         _capturectrl.SelectedVideoProcessors.Clear(); 
 
         // check whether a stream file exists 
         if (File.Exists(_streamSettings)) 
         { 
            // load the saved settings from a stream  
            // and check whether the processor is selected again 
            LoadStreamSettings(); 
 
            // set the result  
            _result &= _capturectrl.SelectedVideoProcessors.Contains(pVideoDizzy); 
         } 
      } 
   } 
   catch (Exception) 
   { 
      _result = false; 
   } 
} 
 
private void LoadFileSettings() 
{ 
   _capturectrl.LoadSettingsFromFile(_fileSettings, CaptureSettings.Processors); 
} 
 
private bool SaveFileSettings() 
{ 
   //  check whether we can save the processors settings 
   if (_capturectrl.CanSaveObjectSettings(CaptureSettings.Processors)) 
   { 
      _capturectrl.SaveSettingsToFile(_fileSettings, CaptureSettings.Processors); 
      return true; 
   } 
   return false; 
} 
 
private void LoadStreamSettings() 
{ 
   Stream settings = new StreamReader(_streamSettings).BaseStream; 
   _capturectrl.LoadSettingsFromStream(settings, CaptureSettings.Processors); 
   settings.Close(); 
} 
 
private bool SaveStreamSettings() 
{ 
   //  check whether we can save the processors settings 
   if (_capturectrl.CanSaveObjectSettings(CaptureSettings.Processors)) 
   { 
      Stream settings = new StreamWriter(_streamSettings, false).BaseStream; 
      _capturectrl.SaveSettingsToStream(settings, CaptureSettings.Processors); 
      settings.Close(); 
      return true; 
   } 
   return false; 
} 
 
static class LEAD_VARS 
{ 
   public const string MediaDir = @"C:\LEADTOOLS22\Media"; 
} 
Requirements

Target Platforms

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

Leadtools.Multimedia Assembly

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