Copies the valid media data from the target to the specified file.
public virtual void CopyTarget(string fileName,bool allowEscAbort)
Public Overridable Sub CopyTarget( _ByVal fileName As String, _ByVal allowEscAbort As Boolean _)
public:virtual void CopyTarget(String^ fileName,bool allowEscAbort)
fileName
Character string containing the destination filename.
allowEscAbort
Value indicating whether pressing the ESC key will abort the copy operation.
The new file will contain only valid data. As a result, the destination file can be much shorter than the target. Typically, you will always capture to the same huge pre-allocated target and use this method to copy the data you want to save from each capture to a new file. If the method fails, an error is raised. For more information, refer to the Error Codes.
using Leadtools;using Leadtools.Multimedia;using LeadtoolsMultimediaExamples.Fixtures;public bool _result = false;public CaptureCtrlForm _form = new CaptureCtrlForm();public void CopyTargetExample(){// reference the capture controlCaptureCtrl capturectrl = _form.CaptureCtrl;// output filestring outFile = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_CopyTargetExampleTarget.avi");string outCopyFile = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_CopyTargetExampleCopyTarget.avi");try{// set the source video device, select using your device name hereif (capturectrl.VideoDevices["USB"] == null)throw new Exception("No USB video device available");capturectrl.VideoDevices["USB"].Selected = true;// set the source video device, select using your device name hereif (capturectrl.AudioDevices["USB"] == null)throw new Exception("No USB audio device available");capturectrl.AudioDevices["USB"].Selected = true;// set the video compressor to H264capturectrl.VideoCompressors.H264.Selected = true;// set the audio compressor to AC3capturectrl.AudioCompressors.AC3.Selected = true;// set the target filescapturectrl.TargetFile = outFile;// check whether we can capture videoif (capturectrl.IsModeAvailable(CaptureMode.VideoAndAudio)){capturectrl.FrameDelay = .033; // 30 frames per secondcapturectrl.TimeLimit = 10; // just 10 seconds of capture timecapturectrl.UseTimeLimit = true;// start the capture processcapturectrl.StartCapture(CaptureMode.VideoAndAudio);}}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 (capturectrl.State == CaptureState.Running)Application.DoEvents();try{// try to copy the target data to a new filecapturectrl.CopyTarget(outCopyFile, false);}catch (Exception){_result = false;}// set the result to what we expect_result = File.Exists(outCopyFile);}static class LEAD_VARS{public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 20\Media";}
Imports LeadtoolsImports Leadtools.MultimediaImports LeadtoolsMultimediaExamples.FixturesPublic _result As Boolean = FalsePublic _form As CaptureCtrlForm = New CaptureCtrlForm()Public Sub CopyTargetExample()' reference the capture controlDim capturectrl As CaptureCtrl = _form.CaptureCtrl' output fileDim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_CopyTargetExampleTarget.avi")Dim outCopyFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_CopyTargetExampleCopyTarget.avi")Try' set the source video device, select using your device name hereIf capturectrl.VideoDevices("USB") Is Nothing ThenThrow New Exception("No USB video device available")End Ifcapturectrl.VideoDevices("USB").Selected = True' set the source video device, select using your device name hereIf capturectrl.AudioDevices("USB") Is Nothing ThenThrow New Exception("No USB audio device available")End Ifcapturectrl.AudioDevices("USB").Selected = True' set the video compressor to H264capturectrl.VideoCompressors.H264.Selected = True' set the audio compressor to AC3capturectrl.AudioCompressors.AC3.Selected = True' set the target filescapturectrl.TargetFile = outFile' check if we have can capture videoIf capturectrl.IsModeAvailable(CaptureMode.VideoAndAudio) Thencapturectrl.FrameDelay = 0.033 ' 30 frames per secondcapturectrl.TimeLimit = 10 ' just 10 seconds of capture timecapturectrl.UseTimeLimit = True' start the capture processcapturectrl.StartCapture(CaptureMode.VideoAndAudio)End IfCatch e1 As Exception_result = FalseEnd Try' 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.Do While capturectrl.State = CaptureState.RunningApplication.DoEvents()LoopTry' try to copy the target data to a new filecapturectrl.CopyTarget(outCopyFile, False)Catch e2 As Exception_result = FalseEnd Try' set the result to what we expect_result = File.Exists(outCopyFile)End SubPublic NotInheritable Class LEAD_VARSPublic Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 20\Media"End Class
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
