Imports Leadtools
Imports Leadtools.Multimedia
Imports LeadtoolsMultimediaExamples.Fixtures
Public _result As Boolean = False
Public _form As CaptureCtrlForm = New CaptureCtrlForm()
Public _capturectrl As CaptureCtrl
Public _streamSettings As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_ObjectSettingsExample_Stream.xml")
Public _fileSettings As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_ObjectSettingsExample.xml")
Public Sub ObjectSettingsExample()
   ' reference the play control
   _capturectrl = _form.CaptureCtrl
   ' output file
   Dim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_ObjectSettingsExample.avi")
   Try
      Dim pVideoDizzy As Processor = _capturectrl.VideoProcessors.EFXDizzy
      ' set a video processor
      _capturectrl.SelectedVideoProcessors.Add(pVideoDizzy)
      ' save the settings to a file
      If SaveFileSettings() Then
         ' now clear the selected processors again
         _capturectrl.SelectedVideoProcessors.Clear()
         ' check if stream file exists
         If File.Exists(_fileSettings) Then
            ' load the saved settings from a file
            ' and check if the processor is selected again
            LoadFileSettings()
            ' set the result 
            _result = _capturectrl.SelectedVideoProcessors.Contains(pVideoDizzy)
         End If
      End If
      ' save the settings to a stream
      If SaveStreamSettings() Then
         ' now clear the selected processors again
         _capturectrl.SelectedVideoProcessors.Clear()
         ' check if stream file exists
         If File.Exists(_streamSettings) Then
            ' load the saved settings from a stream 
            ' and check if the processor is selected again
            LoadStreamSettings()
            ' set the result 
            _result = _result And _capturectrl.SelectedVideoProcessors.Contains(pVideoDizzy)
         End If
      End If
   Catch e1 As Exception
      _result = False
   End Try
End Sub
Private Sub LoadFileSettings()
   _capturectrl.LoadSettingsFromFile(_fileSettings, CaptureSettings.Processors)
End Sub
Private Function SaveFileSettings() As Boolean
   '  check if we can save the processors settings
   If _capturectrl.CanSaveObjectSettings(CaptureSettings.Processors) Then
      _capturectrl.SaveSettingsToFile(_fileSettings, CaptureSettings.Processors)
      Return True
   End If
   Return False
End Function
Private Sub LoadStreamSettings()
   Dim settings As Stream = New StreamReader(_streamSettings).BaseStream
   _capturectrl.LoadSettingsFromStream(settings, CaptureSettings.Processors)
   settings.Close()
End Sub
Private Function SaveStreamSettings() As Boolean
   '  check if we can save the processors settings
   If _capturectrl.CanSaveObjectSettings(CaptureSettings.Processors) Then
      Dim settings As Stream = New StreamWriter(_streamSettings, False).BaseStream
      _capturectrl.SaveSettingsToStream(settings, CaptureSettings.Processors)
      settings.Close()
      Return True
   End If
   Return False
End Function
Public NotInheritable Class LEAD_VARS
Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media"
End Class
             
   
     
            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:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media";
}