public virtual void SaveSettingsToStream(
Stream targetStream,
PlaySettings flags
)
public:
virtual void SaveSettingsToStream(
Stream^ targetStream,
PlaySettings flags
)
targetStream
The stream to which settings will be saved.
flags
The PlaySettings enumeration values specifying which settings to save.
Play object settings can be saved to a file by calling SaveSettingsToFile. If either PlayCtrl.SaveSettingsToFile or PlayCtrl.SaveSettingsToStream is called for settings that cannot be saved, the save method will fail. Call CanSaveObjectSettings before calling the save methods to make sure the settings can be saved. Saved settings can be loaded using the LoadSettingsFromFile method or the LoadSettingsFromStream method.
using Leadtools;
using Leadtools.Multimedia;
using LeadtoolsMultimediaExamples.Fixtures;
public bool _result = false;
public PlayCtrlForm _form = new PlayCtrlForm();
public PlayCtrl _playctrl;
public string _streamSettings = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_ObjectSettingsExample_Stream.xml");
public string _fileSettings = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_ObjectSettingsExample.xml");
public void ObjectSettingsExample()
{
// reference the play control
_playctrl = _form.PlayCtrl;
// input files
string inFile = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_Source.avi");
try
{
Processor pVideoDizzy = _playctrl.VideoProcessors.EFXDizzy;
// set a video processor
_playctrl.SelectedVideoProcessors.Add(pVideoDizzy);
// save the settings to a file
if (SaveFileSettings())
{
// now clear the selected processors again
_playctrl.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 = _playctrl.SelectedVideoProcessors.Contains(pVideoDizzy);
}
}
// save the settings to a stream
if (SaveStreamSettings())
{
// now clear the selected processors again
_playctrl.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 &= _playctrl.SelectedVideoProcessors.Contains(pVideoDizzy);
}
}
}
catch (Exception)
{
_result = false;
}
}
private void LoadFileSettings()
{
_playctrl.LoadSettingsFromFile(_fileSettings, PlaySettings.Processors);
}
private bool SaveFileSettings()
{
// check whether we can save the processors settings
if (_playctrl.CanSaveObjectSettings(PlaySettings.Processors))
{
_playctrl.SaveSettingsToFile(_fileSettings, PlaySettings.Processors);
return true;
}
return false;
}
private void LoadStreamSettings()
{
Stream settings = new StreamReader(_streamSettings).BaseStream;
_playctrl.LoadSettingsFromStream(settings, PlaySettings.Processors);
settings.Close();
}
private bool SaveStreamSettings()
{
// check whether we can save the processors settings
if (_playctrl.CanSaveObjectSettings(PlaySettings.Processors))
{
Stream settings = new StreamWriter(_streamSettings, false).BaseStream;
_playctrl.SaveSettingsToStream(settings, PlaySettings.Processors);
settings.Close();
return true;
}
return false;
}
static class LEAD_VARS
{
public const string MediaDir = @"C:\LEADTOOLS23\Media";
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document