HACKADAYを適当に読み漁っていたら、showmewebcamなるプロジェクトを見つけました。
曰く、Raspberry PiのOTG機能を使って、CSIポートに接続されたカメラモジュールをUVC対応のUSBデバイスとして見せることでWebcamとして使えるようにするもののようです。
すごいのは、かなりコンパクトなディスクイメージに収まっている点。展開すると16MBのFATパーティション1つという軽量さ。つまり起動も爆速で、接続から10秒もあればデバイスとして認識されます。
とりあえず手元に転がっていたPiZeroとカメラがくっついたなにかをそのまま利用してお試しします。
Macに接続したら、被写体に向けつつ、Photo Booth.appをつかって撮影しました。
撮影結果。まあちょっと影になるので写りがいまいちですがまあこんなもんでしょう。
カメラに関する設定は、Raspberry Piにシリアル接続してv4l2-ctlを使えば設定可能とのこと。また、v4l2-ctlで行った設定を永続化するときは、SDカードにあるcamera.txtに書き込めば良いようです。詳細はGitHubリポジトリのREADMEを参照です。
いまならHigh Quality Cameraなどもあるので、そのあたりを使えばピント調整もできる最高なWebcamを構築できますね。という感じの小ネタ拾いでした。
ちなみに、私の場合はリモートワークでありつつカメラを使ったテレカンはないので、日常的に使う場面はなさそうです。あるとしたらOSCの展示ブース撮影とかかしらん。
HQCamでやってみた
やはりピントとか絞りの調整ができるようになったのでいい感じですね。
ついでに、1A+で動かせるか確認してみたところ、Zero向けイメージを焼いたあとの/bootに、適当なRaspberry Pi OSの/bootからbcm2708-rpi-b-plus.dtbをコピーして、あとは前に書いたブログに従ってもろもろ用意をすればいけました。
Raspberry Pi 1A/1A+のUSBポートでOTGする & Raspbian 2018-10-09版 - あっきぃ日誌
意外とZeroの空きがないのと、Zeroのカメラコネクターに不安があるのと、最新機を使うほどでもないので、転がってる1A+は適任かなーと思った次第です。