[OpenCV]fpsを指定して、Webカメラの映像をMP4で保存する方法について
- 2022.08.28
- IT
![[OpenCV]fpsを指定して、Webカメラの映像をMP4で保存する方法について](https://www.s-toki.net/wp-content/uploads/2022/08/23e84676a597f7ba84f31015ab9b0144-890x500.jpg)
ネットには、Open CVとWeb USBカメラを使って、MP4ファイルに録画するという記事がいくつかあります。
ただ、どれもfps値はカメラの特有のfps値を使うものでした。
私は、1秒に1回おきに映像を撮り、それをMP4ファイルに保存したかったので、そのコードを書きました。
利用環境
利用環境は、M1 Macですが、Intelでもいけるはずです。
コード
pythonで記述しました。
使い方
引数
fpsとcamera_numを指定して使います。
fpsは、数値が大きくなるほど、コマ数が増えます。(カメラの性能を超えた値の場合、カメラの最大FPSで撮影されます)
また、0,001以下にするとエラーが起こります。(0.1で10秒に1回撮影します)
停止方法
OpenCVで生成されたWindowをクリックして、ESCキーを押すと録画が終了します。
補足
Windowのサイズは、適当に設定してあります。お好きな値でお使いください。
まとめ
time.sleepを使うとキー入力を受け付けないので、このような実装となりました。
もっと良い方法がある方は、ご教授いただければと思います。