MasterStream Property (original) (raw)
Summary
Gets or sets the master stream that other streams must synchronize to after the file is written.
Example
using Leadtools;
using Leadtools.Multimedia;
using LeadtoolsMultimediaExamples.Fixtures;
public bool _result = false;
public CaptureCtrlForm _form = new CaptureCtrlForm();
// capture control
CaptureCtrl capturectrl;
// output file
string outFile = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_MasterStreamExample.avi");
public void MasterStreamExample()
{
// reference the capture control
capturectrl = _form.CaptureCtrl;
try
{
// set the source video device, select using your device name here
if (capturectrl.VideoDevices["USB"] == null)
{
throw new Exception("No USB video device available");
}
capturectrl.VideoDevices["USB"].Selected = true;
// set the source audio device, select using your device name here
if (capturectrl.AudioDevices["USB"] == null)
{
throw new Exception("No USB audio device available");
}
capturectrl.AudioDevices["USB"].Selected = true;
// select a video compressor
capturectrl.VideoCompressors.Mpeg4.Selected = true;
// select an audio compressor
capturectrl.AudioCompressors.AC3.Selected = true;
// set the target output file
capturectrl.TargetFile = outFile;
// subscribe to the started event
capturectrl.Started += CaptureCtrl_Started;
// set master stream to CaptureMasterStream.Video
capturectrl.MasterStream = CaptureMasterStream.Video;
// start capture
capturectrl.StartCapture(CaptureMode.VideoAndAudio);
// get master stream
CaptureMasterStream MasterStream = capturectrl.MasterStream;
// set the result to what we expect
_result = (MasterStream == CaptureMasterStream.Video);
}
catch (COMException)
{
_result = false;
}
catch (Exception)
{
_result = false;
}
}
void CaptureCtrl_Started(object sender, EventArgs e)
{
// stop the capture (we do not need a complete capture for this example)
capturectrl.StopCapture();
}
static class LEAD_VARS
{
public const string MediaDir = @"C:\LEADTOOLS23\Media";
}