Video
資源使用率低的無損 ffmpeg 錄製
我正在嘗試使用
ffmpeg
of錄製無損影片
- 我的螢幕
- 我的電腦音頻
- 我的麥克風音頻
使用這個腳本:
MIC="alsa_input.usb-Logitech_Logitech_USB_Headset-00.mono-fallback" MONITOR="alsa_output.usb-Logitech_Logitech_USB_Headset-00.analog-stereo.monitor" AUDIO0=$(pactl list short | grep "$MIC" | grep -Po "[0-9]+" | head -1) AUDIO1=$(pactl list short | grep "$MONITOR" | grep -Po "[0-9]+" | head -1) ffmpeg \ -video_size 1920x1080 \ -framerate 60 \ -f x11grab -i :0.0 \ -f pulse -i $AUDIO0 \ -f pulse -i $AUDIO1 \ -map 0 -map 1 -map 2 \ -c:a copy \ -c:v libx264rgb \ -crf 0 \ -preset ultrafast \ video.mkv
在我的慢速電腦上,它只能以大約 7 FPS 的速度記錄。有沒有辦法以更高的 FPS 錄製,同時保持無損且文件大小相當小?
這 3 個音軌似乎也有大約一秒的不同步,首先是螢幕,其次是麥克風,然後是聲音輸出。我認為這是因為它在錄製開始時按順序辨識它們。我可以手動重新同步它們,但解決問題會更容易。
x264 沒有比 更快的預設
ultrafast
,因此您可以:
- 將幀率從 60 降低到電影級 24 甚至 15,因為我們正在談論螢幕投射
- 使用不同的影片編解碼器
- 如果您的 GPU 支持,請使用硬體影片編碼加速
- 添加
-thread_queue_size 1024
為編碼選項。- 有人說輸出速率對於使所有內容保持同步很重要,因此請嘗試添加
-r 60
.我看不到其他選擇。按照今天的標準,您的電腦確實很慢。