本教程演示如何使用CaptureCtrl使用LEADTOOLS多媒体SDK从视频源(如网络摄像头)捕获视频,并将其存储到c# Windows控制台应用程序中的磁盘文件中。188宝金博怎么下载
| 概述 | |
|---|---|
| 总结 | 本教程介绍如何在c# Windows控制台应用程序中捕获视频文件。 |
| 完成时间 | 30分钟 |
| Visual Studio项目 | 下载教程项目(3kb) |
| 平台 | Windows c#控制台应用程序 |
| IDE | Visual Studio 2019, 2022 |
| 开发许可 | 下载LEADTOOLS |
| 用另一种语言试试 |
|
LEADTOOLS多媒体捕获188宝金博怎么下载控件包含许多高级功能,可简化从设备和摄像机捕获视频的过程。该工具包附带了使用这些特性的各种演示,比如主要的Multimedia C188金宝搏beat体育官网apture演示,它有多种编程语言的不同版本。188宝金博怎么下载
本教程演示如何使用Capture Control来执行视频文件的简化捕获。
步骤熟悉创建项目的基本步骤添加引用和设置License教程,在工作之前从视频源捕获到文件-控制台c#教程。
中创建的项目的副本开始添加引用和设置License教程。如果您没有该项目,请按照该教程中的步骤创建它。
本教程需要以下本地dll,它们位于< INSTALL_DIR > \ LEADTOOLS22 \ Bin \ Dotnet4 \ x64
Leadtools.dllLeadtools.188宝金博怎么下载Multimedia.dll请注意
不同的SDK特性需要不同的引用。有关完整列表,请参阅188宝金博怎么下载多媒体文件,你必须包括与您的应用程序.
许可证解锁项目所需的特性。它必须在调用任何工具箱函数之前设置。有关详细信息,包括针对不同平台的教程,请参阅设置运行时License.
有两种类型的运行时许可证:
随着项目的创建、引用的添加、工具包的解锁以及许可证的设置,编码就可以开始了。
在解决方案资源管理器,打开Program.cs,然后加上使用Leadtools;而且使用Leadtools.Mult188宝金博怎么下载imedia;到使用顶部的块。
//在顶部使用块使用System.Windows.Forms;使用Leadtools;使用Leadtools.188宝金博怎么下载Multimedia;
添加一个名为CaptureVideo (),并在主要方法。Unlock188宝金博怎么下载Multimedia ()方法调用。
静态无效主要(字符串[]参数){Unlock188宝金博怎么下载Multimedia ();CaptureVideo ();}静态无效CaptureVideo (){字符串outputFile =@“C: \ LEADTOOLS22 \资源\ \ captured.avi图像”;CaptureCtrl capture =新CaptureCtrl (真正的);intdeviceCount = capture.VideoDevices.Count;如果(deviceCount < 1){控制台。WriteLine (“没有找到兼容的设备。退出。”);返回;}控制台。WriteLine ("输入设备编号并按Enter键选择设备:");为(intN = 0;n < deviceCount;n + +)Console.WriteLine (n.ToString () +": "+ capture.VideoDevices [n] .FriendlyName);intdeviceIndex =int.Parse (Console.ReadLine ());控制台。WriteLine (“准备捕获……”);capture.VideoDevices.Selection = deviceIndex;捕捉。TargetFile = outputFile;捕捉。TargetFormat = TargetFormatType.AVI;//选择合适的压缩机capture.VideoCompressors.MJpeg.Selected =真正的;/ /使用CaptureMode。如果音频设备也被选中,则VideoAndAudio。capture.StartCapture (CaptureMode.Video);控制台。WriteLine (“捕捉到文件。按任意键停止捕获…”);而(Console.KeyAvailable !){System.Windows.Forms.Application.DoEvents ();intcapMilliSeconds = (int)(1000 * capture.CaptureTime);如果(capMilliSeconds % 1000 == 0)//每秒打印一个点{控制台。写(“。”);System.Threading.Thread.Sleep (1);}}capture.StopCapture ();控制台。ReadKey (真正的);控制台。WriteLine ($\nFinished capturing {capture. "CaptureTime}秒到文件{outputFile}。按任意键继续…”);控制台。ReadKey (真正的);}
确保测试PC上至少有一个视频源,比如一个摄像设备。按下运行项目F5,或选择Debug ->开始调试.
如果步骤正确,应用程序将提示用户选择一个视频设备,然后开始录制到代码中指定的文件,直到按下一个键。
方法选择视频源并从中捕获CaptureCtrl类。