FFMPEG在Windows下的屏幕录像录音

更多音视频知识请点击专注音视频开发
ffmpeg在Linux下用X11grab进行屏幕录像,在Windows下用DirectShow滤镜

首先需要安装一个软件,screen capture recorder
编译好的下载地址是:
http://sourceforge.net/projects/screencapturer/files/ 安装后才能使用virtual-audio-capturer
源码地址是:
https://github.com/rdp/screen-capture-recorder-to-video-windows-free

安装完了之后,在命令行执行:
ffmpeg -list_devices true -f dshow -i dummy

系统输出大致如下:
[dshow @ 002db420] DirectShow video devices
[dshow @ 002db420] "screen-capture-recorder"
[dshow @ 002db420] DirectShow audio devices
[dshow @ 002db420] "virtual-audio-capturer"
ffmpeg已经可以捕获到DirectShow视频设备,和音频设备了.
"screen-capture-recorder" 这个就是桌面捕获设备,如果电脑上连有摄像头,也会列出来.
"virtual-audio-capturer" 这个是音频捕获设备

捕获摄像头视频:
ffmpeg -f dshow -i video="Integrated Camera" -vcodec libx264 mycamera.mkv
注: Integrated Camera名称视个人电脑设备管理器里边摄像头的名称而定,我的是电脑是 Integrated Webcam.

捕获麦克风声音:
ffmpeg -f dshow -i audio="麦克风(High Definition Audio 设备)" -acodec aac d:\temp.aac

同时捕获桌面和声卡声音并录制成flv文件:
ffmpeg -f dshow -i video="screen-capture-recorder" -f dshow -i audio="virtual-audio-capturer" -pix_fmt yuv420p -ar 48000 -vcodec libx264 -crf 23 -preset veryslow -x264opts b-adapt=2:bframes=0:aq-strength=1:psy-rd=0.8,0 -vsync vfr -acodec aac -bsf:a aac_adtstoasc -f flv temp.flv

上面组合命令设置了x264参数和aac添加adst filter,
如果想提高x264编码速度可使用 -preset:v ultrafast -tune:v zerolatency 两个参数,
举个例子:
ffmpeg -f dshow -i video="Integrated Webcam" -vcodec libx264 -preset:v ultrafast -tune:v zerolatency d:\test.mp4

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容