基于FFMpeg的C#录屏全攻略
最近负责一个录屏的小项目,需要录制Windows窗口内容并压缩保存到指定文件夹,本想使用已有的录屏软件,但是本着学习的态度去探索了FFMpeg,本文主要介绍基于FFMpeg开源项目的C#录屏软件开发。 在Windows平台下开发录屏相比Linux比较复杂,Windows平台下录屏有gdigrab和dshow两种方法,由于gdigrab可修改属性受限,所以本文采用dshow方法实现录屏的功能,原理是注册录屏dshow滤镜(例如screen-capture-recorder),然后通过dshow获取录屏图像然后编码处理,其中gdigrab可以详见http://www.ffmpeg.org/ffmpeg-devices.html#gdigrab。 软件开发环境: Windows7 32位 Visual Studio2013 screen capture recorder(需要Java运行环境Java Runtime Environment) 1、软件安装完成后,可以在CMD命令行中检测软件安装是否正确,首先进入FFMpeg.exe的根目录文件夹,输入命令:ffmpeg -list_devices true -f dshow -i dummy 命令执行后检查输出的结果是否有[dshow @xxx] "screen-capture-recorder" ,如果有则“screen capture