運営者情報

運営してるひと: @sters9

       

妻と猫と横浜あたりに住んでいる。最近は Go や Kubernetes や GCP をしています。 PHP や JavaScript もすこし。

プライバシーポリシー

tools.gomiba.co

アーカイブ

2021/01 (6)

2020/05 (2) 2020/04 (2) 2020/02 (2) 2020/01 (1)

2019/12 (3) 2019/11 (2) 2019/10 (5) 2019/09 (3) 2019/07 (6) 2019/06 (4) 2019/04 (3) 2019/01 (2)

2018/12 (6) 2018/10 (4) 2018/09 (6) 2018/08 (7) 2018/07 (16) 2018/06 (7) 2018/05 (7) 2018/04 (5) 2018/03 (3) 2018/02 (10) 2018/01 (6)

2017/12 (8) 2017/11 (6) 2017/10 (10) 2017/09 (12) 2017/08 (16) 2017/07 (3) 2017/06 (1) 2017/01 (4)

2016/12 (5) 2016/10 (3) 2016/09 (1) 2016/07 (2) 2016/06 (1) 2016/04 (1) 2016/02 (1) 2016/01 (2)

2015/12 (1) 2015/10 (1) 2015/09 (3) 2015/06 (1) 2015/01 (1)

2014/08 (2) 2014/07 (3) 2014/05 (1) 2014/01 (7)

2013/12 (2) 2013/11 (4) 2013/10 (1) 2013/09 (1) 2013/08 (3) 2013/07 (4) 2013/06 (5) 2013/05 (2) 2013/04 (7) 2013/03 (1)

一眼レフカメラ(Canon機)をWebカメラとして扱う方法

はじめに

日本語の情報がよくわからなかったりして、英語でもググりたいときは DSLR as webcam とかでググるといいってじっちゃんがいってた。

EOS Kiss x7i と α7 III を所持しおり、特に EOS Kiss x7i のほうは使っていないのと、前後の重量感がバランスいいので、いつか買ったちょっと貧弱な一脚+三脚足でも安定して付く。 昨今の自宅勤務で、ビデオ会議が必要な場面もあり Web カメラを持ってない私は毎回ノート PC を開いて、そのカメラを使っていた。 普段はクラムシェルとして利用していて、毎回開けてやるのが面倒で、Webカメラを買おうと思ったがすっかり市場からはなくなってしまっていた。そこで、なにかいいソリューションはないかなあ、と調べたりして、いきついたことを書いておく。

環境に左右されない方法

HDMI キャプチャボードを使えば PC 環境がなんであれ、カメラメーカーがなんであれ行けるはず。 FPS も解像度も高く保てる。ただし導入コストは高いのと HDMI でライブビュー可能な端末に絞られる。 HDMI キャプチャボードはもっていないので割愛。

Mac で EOS なカメラを Web カメラとして使う方法

今回のメイン。

必要なもの

  • ハードウェア
    • カメラと PC をつなぐ USB ケーブル(Kiss x7i では USB ケーブルの mini-b だった)
    • DC カプラ(あるといい。充電バッテリーでやるなら予備があったほうがいい、割とすぐ切れる)
    • 三脚やアームなど固定できるもの
    • 広角すぎないレンズ(広角だと部屋が丸見えになる)
  • ソフトウェア

実施する手順

  1. カメラを、フォトモード Tv(シャッタースピード優先)で 1/60 くらいにする
  2. カメラと PC をつなぐ
  3. Camera Live を起動
  4. Camera Live に認識されたら、ポチポチして Active にする
  5. CamTwist を起動
  6. CamTwist の Preference から 60 FPSにして、解像度も適当にあげる(私は640x480になってる)
  7. CamTwist を再起動
  8. CamTwist 上で video source に Syphon を選択し Syphon Server に Camera Live を選ぶ
  9. CamTwist という Web カメラデバイスがあるので、ビデオ会議ツールでそれを選択する

やっていて遭遇したトラブルや解決方法、その他メモを書いておく。

Camera Live、CamTwistが立ち上がらない

それぞれのアプリを終了したり、マシン自体を再起動したりする。

カメラが認識しない、エラーがでる

  • そのケーブルは断線したりしていないか?(他のケーブルを試す)
  • USB ハブなどを介していないか(ないほうが良い)
  • ケーブルの刺し直し、電源 ON/OFF してもだめ?
  • 電力不足になっている可能性もあり USB ケーブルなしで撮影可能か
  • カメラの設定を色々変えてみる
  • CameraLive が未対応の可能性ある。
    • バージョン 13 と 11 があってどっちも試してみたほうが良い
    • 私は 13 で動いている

FPS がでない

初めはものすごいカクカクで 1-2fps くらいしかないようだった。そのときカメラの設定は Av(絞り優先)になっていて F6 くらいになっていた。

カメラの設定が優先されるよーという話をどこかでみて、もしや、と Tv の 1/60 にして解決。 同時に、カメラの設定で記録画質を下げたりもしたのでどれがピンポイントに効いてるかはいまいちわかってない。。

数フレームの遅延はあれど、まあまあヌルヌル動くようになる。

色味がおかしい、白飛びする

カメラの設定が優先されるっぽいので、ケーブルを外して、適当に調整する。

CamTwist すごい

フィルタ、エフェクトをかけたりできる。クロマキーもできる また Picture in Picture なる機能があって、画面共有 + 右下に自分の顔でる、みたいなことも出来る TwitchStreamer みたいなものを想像してもらえれば。

CamTwist の出力を SnapCamera にかけられる?

CamTwist が仮想 web カメラデバイスになっているので SnapCamera で CamTwist を選択すればいい。 バーチャル背景的なことも、顔にエフェクトかけたりも出来る。

CameraLive+CamTwistって何をやっているんだろう?

Canonが出しているSDKがあって、それを使うとカメラ設定の操作や、画像/映像の転送などのコミュニケーションができる。 その転送した画像を、Syphonというプロトコルで配信をしているようだ。

実装を追ったわけではないのでわからないけどバッファリングしたり別スレッド使ったりでパフォーマンス上がらならないかな…?

CamTwistは様々な入力から、仮想Webカメラの出力を作るツール(Open Broadcaster Software | OBS みたいなもの...という理解) その入力の一つとしてSyphonをサポートしている。

Windows で EOS なカメラを Web カメラとして使う方法

公式ツールがでるらしいのでそれを使うと吉 キヤノンの一眼がウェブカムになる公式ツール登場--ライブ配信やビデオ会議を高画質化 - CNET Japan

そのほかやったこと

  • Android 端末をWebカメラ化
    • EpocCam を使った。短時間は使えたけれど、2,30分超えるようなときは突如接続が切れたりして安定して使えなかった。Android 側のアプリがフリーズしてるような状態だった
    • Iruin は試してない、と思う。その他にもDroidCam、iVCam、IPWebcam、なんかもあるっぽいけど試してない
  • α7 IIIをWebカメラ化