自動化無しに生活無し

WEBとかAIとかLinux関係をひたすら書く備忘録系ブログ

FFmpegを使ってUbuntuサーバーにUSBで接続されたウェブカメラで映像を録画する

thumbnail

Ubuntu 22.04 Serverでやった

ハードはラズパイ3B+

インストール

FFmpegとv4l2-utilsをインストール

sudo apt install ffmpeg v4l-utils

デバイスを特定する

v4l2-ctl --list-devices

こんなふうに表示される(一部省略)

BUFFALO BSWHD06M USB Camera
:  (usb-3f980000.usb-1.4):
	/dev/video0
	/dev/video1
	/dev/media3

対応しているフォーマットと解像度を特定する

ffmpeg -f v4l2 -list_formats all -i /dev/video0

こんなふうに表示される(一部省略)

[video4linux2,v4l2 @ 0xaaaad7c25420] Raw       :     yuyv422 :           YUYV 4:2:2 : 1280x720 800x600 640x480 640x360 352x288 320x240 176x144 160x120
[video4linux2,v4l2 @ 0xaaaad7c25420] Compressed:       mjpeg :          Motion-JPEG : 1280x960 1280x720 800x600 640x480 640x360 352x288 320x240 176x144 160x120

映像を録画する

ffmpeg -f v4l2 -framerate 30 -video_size 352x288 -i /dev/video0 output.mkv

後はこの映像をscpなどでDLして確認する。

結論

ラズパイ3B+だとすぐにCPU使用率が100%を超えるため、取り扱いに注意。

フレームレートは30fpsだったので、ヒートシンクでも取り付けて冷却を考慮すれば、一応RTMPサーバーとして運用はできそうだ。

どうせならラズパイのUSBポートの4つ全部使ってみたいところだが、欲張るのはよそう。

あーあ。どっかにファンレス無音で高性能、かつ小型のPCがあったらなぁー

参照元: https://trac.ffmpeg.org/wiki/Capture/Webcam

スポンサーリンク

シェアボタン

Twitter LINEで送る Facebook はてなブログ