GoProを無線でつなぎ、Teamsやzoom等で中継する方法が欲しくなったんですが、
実例が見つからなかったのでやってみた件を備忘録として残します。
#目次
1.はじめに
2.準備
3.ネットワーク接続
4.ffmpeg起動
5.おわりに
1. はじめに
ヘッドマウント的なカメラで、作業者の手元をオンライン会議で共有しつつ、議論をしたいニーズがありました。
当初はGoProやデジカメ+キャプチャボードをUSBケーブルで繋いでいましたが、ケーブルがジャマで作業しづらいし、カメラマンと作業者の二人が必要でこのご時世に密になってしまうのが問題になっていました。
下図のように、Win10環境で無線で構築するシステムを作ることを目的とします。
2. 準備
現在手持ちの機器類で構成します。
手持ちパソコンは一般的なwifi 1回線分しか持たないので、USB wifiアダプタを使ってwifiを2回線にします。
[ハードウェア]
カメラ:GoPro Hero4
パソコン:Win10 64bit
ルータ:バッファロー WSR-1800AX4
wifiアダプタ:型番無し 中華製の市販品(300円程度)
[ソフトウェア]
Python:3.9.6
ffmpeg:N-103611-gdb2514a5dc-20210913
ffmpegの導入は下記を参考に導入します。
https://jp.videoproc.com/edit-convert/how-to-download-and-install-ffmpeg.htm
Cドライブ直下に保存してパスを通した後、win再起動。
こちらの動画で使用している、ViewGoPro.batとViewGoPro.pyをダウンロードします。
これで準備は完了です。
3. ネットワーク接続
GoProの横ボタンを長押しして、アクセスポイントを立上げます。
usb wifiアダプタを挿して、ドライバインストール。(最近のものなら大体自動)
元から付随のwifiはルータなり、外部につながるNWにつないでおきます。
追加されたwifi2をGoProのアクセスポイントに接続します。
これでGoproと外部NWに同時に接続された状態になりました。
4. ffmpeg起動
ViewGoPro.pyそのままでも使えますが、一部だけ画像設定を変更します。
下記にカメラ設定のhttpコマンドがあるので、参考にpyファイルに追記していきます。
https://github.com/KonradIT/goprowifihack/blob/master/HERO4/CameraStatus.md
Video Mode based parameters:のあたりで、ResolutionやFrameRateを環境や用途に合わせて設定します。
今回は4kまでは必要なかったので、1080, 60fpsくらいで設定しておきます。
pythonを何かしらで起動して、その後実行。
自動でwindowが立ち上がり、ストリーミングが開始します。
あとはTeamsなりZoomなりでweb会議をつなぎ、デスクトップ共有でストリーミングを表示すれば目的達成です。
5. おわりに
やってみれば単純ですが、意外とwifiを2回線使いするようなこともないなと思ったので、書いてみました。
なお、今回は少し古いGoproバージョンですが、新しいGoproの場合はhttpコマンドやipアドレスがかわるかもなので、下記から各バージョンのコマンド確認して、pythonのhttpコマンド部分を修正すれば使えるかと思われます。
ハードが無いので未検証ですが…
使い勝手がよさそうなら、pythonファイルをexe化して汎用化させてもいいかな。