ffmpeg、ビデオの持続時間が実際の録画時間より長くなります。

ffmpeg、ビデオの持続時間が実際の録画時間より長くなります。

ffmpegで画面を録画するには、次のコマンドを使用しています。

ffmpeg -nostdin -video_size 720x878 -framerate 24 -f x11grab -i :0.0+720,0 -vf setpts=N/FR/TB -vcodec libx264 -y -loglevel quiet output.mkv &

また、次のコマンドを使用して録音を一時停止、再開、停止します。

# to pause
pkill -STOP ffmpeg 

#to resume
pkill -CONT ffmpeg

# to stop
pkill -INT ffmpeg

実際の映像を録画した時間より総録画時間が長かったことを確認しました。つまり、出力が予想より長くかかります。

理解度をテストするために、次のループを実行して毎秒経過時間を印刷し、約1分間記録しました。

i=1 && while true; do echo $((i++)) && sleep 1; done

# example output
1
2
3
...

録音を再開するたびに、新しいエコーは1秒より少し遅くなり、4〜5秒ほど続くとすべてが正常に戻ります。実際、各エコーは1秒に相当します。それで、エンコード/デコードに時間がかかるかもしれないと思いました。

この問題を解決する方法を知っていますか?

関連情報