DxPackNet 4.保存音视频为本地avi文件
发布时间:2020-12-16 08:58:55 所属栏目:asp.Net 来源:网络整理
导读:捕获到了音视频后要保存到本地文件,这是很常见的应用场景,DxPackNet保存视频文件也比较简单 用?IAviStreamWriter ?avi文件写入流即可 1.初始化相关设备,设定好数据捕获的回调函数 DxDeviceCollection cameras; IDxCameraCapture camCapture; IDxMicrophCap
捕获到了音视频后要保存到本地文件,这是很常见的应用场景,DxPackNet保存视频文件也比较简单 用?IAviStreamWriter ?avi文件写入流即可 1.初始化相关设备,设定好数据捕获的回调函数 DxDeviceCollection cameras; IDxCameraCapture camCapture; IDxMicrophCapture microphone; IAviStreamWriter aviWriter; private void Form1_Load(object sender,EventArgs e) { cameras = DxFactory.CreateDxCompent<DxDeviceCollection>(DxDeviceCollection.ENVIRONMENT_CAMERAS); camCapture = DxFactory.CreateDxCompent<IDxCameraCapture>(this,panel1); camCapture.FrameCb = camerasFrameCb; camCapture.Init(cameras[0]); microphone = DxFactory.CreateDxCompent<IDxMicrophCapture>(100); microphone.AudioCb = auCaptureBufferCB; } 2.创建avi写入流 打开设备 private void button1_Click(false; //创建avi文件写入流 第一个参数为-写入文件路径 第二个参数为-是否支持音频写入,true为音/视频,false为只写视频 aviWriter = DxFactory.CreateDxCompent<IAviStreamWriter>("c:avicaptest.avi",true); aviWriter.Width = 640;设置视频宽度 aviWriter.Height = 480;设置视频高度 aviWriter.CompressType = AviVideoCompressType.MicrosoftVideo1; 设置视频压缩格式 aviWriter.Open();//打开写入流 microphone.Open(); microphone.Start(); camCapture.Run(); } 3.在回调中写入音/视频 数据 void auCaptureBufferCB(byte[] buffer,1)">int length) { 写入音频数据 aviWriter.WriteWavBuffer(buffer,length); } void camerasFrameCb( size) { 写入视频数据 aviWriter.WriteBmpBuffer(buffer,Math.Max(size,640 * 480 * 3)); } void button2_Click(; microphone.Stop(); camCapture.Stop(); aviWriter.Dispose();写入完了记得关闭流 aviWriter = null; } ? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – (.NET Core 1.0 \u0026\u0026 net46)
- 如何使用ASP.NET Core自定义Tag Helper中的视图?
- exception throw in progress runner thread_VS2015中SVN源
- ASP.NET随机丢失会话值
- asp.net-mvc – 带有实体框架的MVC控制器的T4模板 – 主机的
- asp.net – .NET JIT编译器会优化方法调用吗?
- 使用MVC和ASP.NET身份认证网址
- asp.net – GridView RowUpdating无法获取新值
- asp.net – 如何在Page_Load上获取参数
- 我在哪里可以获得asp.net身份的rtm控制器模板?
推荐文章
站长推荐
- asp.net-mvc – 如何使用Rhino.Mocks模拟Control
- 可以在ASP.NET用户控件中使用void async方法吗?
- asp.net-mvc – 带网格的MVC3 Bootstrap tablula
- 如何创建自定义授权属性以检查Asp.Net Core中的角
- asp.net-mvc-2 – 如何在ASP.NET MVC2中为Html.L
- asp.net-mvc – MVC Razor ViewEngine不是线程安
- asp.net – web部署工具2.1和web部署3.5有什么区
- asp.net – 将RSS pubDate格式化为.NET DateTime
- asp.net-mvc – 如何使更多MapHttpRoutes为MVC 4
- asp.net-mvc – 您使用ASP.NET MVC的View Engine
热点阅读