この同様のコマンドで録画しようとしたときに、まったく同じ問題が発生しました (x264 に直接エンコードしようとする代わりに、ロスレス スクリーンキャスト ビデオ コーデック huffyuv を使用しようとしていることに注意してください)。
avconv -f alsa -i pulse -f x11grab -r 30 -s 1920x1080 -i :0.0 -vcodec huffyuv -acodec libmp3lame -ac 1 -threads auto screencast.avi
実験に多くの時間を費やした後、冗長性を「静か」に設定すると、「スキップ」または「途切れ」がいくらか改善されることがわかりました。
avconv -v quiet -f alsa -i pulse -f x11grab -r 24 -s 1920x1080 -i :0.0 -vcodec huffyuv -acodec libmp3lame -ac 1 -threads auto screencast.avi
問題を完全に解決する唯一の方法は、avconv の 2 つのインスタンスでビデオとオーディオを別々に記録し、それらを強制終了して記録を停止することです。
ふふふ:
avconv -v quiet -f x11grab -r 24 -s 1920x1080 -i :0.0 -vcodec huffyuv -threads auto video.mkv & \
avconv -v quiet -f alsa -i pulse -ar 22050 -ab 32 -ac 1 -threads auto audio.mp3 &
×264:
avconv -f x11grab -r 24 -s 1920x1080 -i :0.0 -qscale 0 -vcodec libx264 -crf 26 -preset superfast -v quiet -threads auto -y 001.mkv & \
avconv -f alsa -i pulse -acodec libmp3lame -ar 22050 -ab 32 -ac 1 -threads auto -v quiet -y 001.mp3 &
avconv の両方のインスタンスがバックグラウンドで実行されます。記録を停止するには、次のコマンドで両方を同時に kill します。
kill %1 %2
オーディオとビデオをつなぎ合わせて 1 つのファイルに戻すには:
avconv -i video.mkv -i audio.mp3 -c:a copy -c:v copy video_and_audio.mkv