ffmpeg在Linux下用X11grab進行屏幕錄像,在Windows下用DirectShow濾鏡
首先需要安裝一個軟件,screen capture recorder
編譯好的下載地址是:
http://sourceforge.net/projects/screencapturer/
源碼地址是:
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來進行錄像了
- ffmpeg -f dshow -i video="screen-capture-recorder" -f dshow -i audio="virtual-audio-capturer" -pix_fmt yuv420p -vcodec libx264 -acodec libvo_aacenc -s 1280x720 -r 25 -q 10 -ar 44100 -ac 2 -tune zerolatency -preset ultrafast -f mpegts - | ffmpeg -f mpegts -i - -c copy -bsf:a aac_adtstoasc -f flv temp.flv