カメラモジュール libcamera
RaspberryPi OSが2021年11月8日「bullseye」へバージョンアップした。
それに伴い、カメラモジュールが従来のraspistill、raspividコマンドからlibcameraに変わったので、概要をピックアップして使い方などの要約。
OSが「Buster」の場合は、「libcamera」をインストールする。
「Buster」を最新版にアップデートしておく
sudo apt update
sudo apt full-upgrade
sudo apt install libcamera-apps
boot/config.txtの末尾にカメラモジュールに合わせて、dtoverlayを追加する。
Camera Module | Markdown |
---|---|
V1 camera (OV5647) | dtoverlay=ov5647 |
V2 camera (IMX219) | dtoverlay=imx219 |
HQ camera (IMX477) | dtoverlay=imx477 |
IMX290 and IMX327 | dtoverlay=imx290,clock-frequency=74250000 dtoverlay=imx290,clock-frequency=3712500 |
IMX378 | dtoverlay=imx378 |
OV9281 | dtoverlay=ov9281 |
rasPi3などを使っている場合、認識されないときには。
dtoverlay=vc4-fkms-v3ddtoverlay=vc4-kms-v3d と記述がが必要、そして再起動。
[例] /boot/config.txの下に
[all]
dtoverlay=vc4-fkms-v3d
dtoverlay=imx477
再起動の後、デスクトップのターミナルから
libcamera-hello
デスクトップ画面にカメラからのプレビューが5秒ほど表示される。
静止画コマンド libcamera-jpeg
libcamera-jpeg -o test.jpg
-o : オプションは –output とも、ファイル出力する
tes.jpg のファイル名で出力。
静止画コマンド libcamera-still
libcamera-still -o test.jpg は、libcamera-jpegと同等
エンコーダオプション
-e(同等の–encoding) でエンコード指定
libcamera-still -e png -o test.png
libcamera-still -e bmp -o test.bmp
libcamera-still -e rgb -o test.data
libcamera-still -e yuv420 -o test.data
プレビュー
libcamera-hello -t 0
-t : 時間設定オプション 0を設定で無制限、
動画コマンド libcamera-vid
デフォルトでH.264 エンコーダ
libcamera-vid -t 10000 -o test.h264 10 秒のビデオをtest.h264に出力
vlcでh264を表示できる、またはコンバータでmpg4に変換する
ネットワークストリーミング
UDP
libcamera-vid -t 0 –inline -o udp://<ip-addr>/:<port>
VLCで見る
vlc udp://@:<port> :demux=h264
TCP
libcamera-vid -t 0 –inline –listen -o tcp://0.0.0.0:<port>
vlcで
vlc tcp/h264://<ip-addr-of-server>:<port>