※2021/12/6 時点での内容でございます。
先日、Raspberrt Pi Zero 2 W をセットアップした時に「MJPG Streamer」がインストールエラーを起こす、「カメラが有効にならない」などの不具合に陥って悩んだ時のメモ。
結論から言えば、2021/12/6 時点で最新のRaspberry Pi os 「Bullseye」(2021/10/30リリース)が不具合を起こしていたっぽいです。ダウングレードにて改善しました。
MJPG Streamerがインストールエラーを起こす
libjpeg8-dev のインストールでエラーが発生。違う名前のパッケージ(名前忘れた)をインストールせよとのメッセージが確認できたので、そちらをインストールしたが、MJPG streamer起動の際にまたまたエラー発生。(これも詳細は忘れた。)
パッケージの更新、コンフィグでカメラが有効になっている事を確認、カメラの再接続、等行うが同じ。
vcgencmd get_cameraでカメラモジュールが認識されているか確認すると、
supported=0 detected=0
となっている。。おやあ?となる。ググっても、 両方0はコンフィグでカメラが有効になっていない時に表示されるらしい。
もう一度、コンフィグでカメラを有効にしてみる。再起動。
supported=0 detected=0
んんんんんん??
カメラモジュールを別のラズパイに接続してみる。そっちでは supported=1 detected=1 となっている。カメラモジュールの不具合では絶対ない。と、ここでピンとくる。それぞれのOSを確認すると、
いけてる方→Buster
あかん方→ Bullseye
OSをダウングレードしてみる
あかん方のOSが最新になっていたので、これを1つ前のバージョンにダウングレードを試みる。
ラズパイイメージャーから過去のOSを選択できるので、簡単に可能。
ダウングレード後、コンフィグでカメラを有効にし、 vcgencmd get_cameraでカメラモジュールが認識されているか確認 。
supported=1 detected=1
続いてMJPG Streamer。今までの手順で問題なく起動までOK。
結論、 Bullseye がなんかおかしい。
まとめ
今思えば、最新のOSをインストールした初期の状態で、コンフィグのカメラがすでに「有効」になっていたのもなにか引っかかる。(仕様を変更したといえばそれまでだが。)
とにかく、ググっても最新OSに関する不具合の例があがってなかったので、他に簡単な改善方法はあるかもしれないが、今まで使えていたMJPG Streamerは互換性が無くなっているし、カメラを有効にする方法も今までのやり方では通用しない。
したがって、同症状で悩んでいる方は、とりあえずは1つ前のOSを利用するのが望ましいと考えます。