背景・目的
-
家にある動植物を見守る
見守りカメラ
専用のIPカメラも色々ありますが、それを使わずに実現する方法をいくつか調査・試してみたので備忘します -
条件
- PCで見ることができる
- PCとは独立して無線で動画を飛ばすことができる
-
あるもの
- Gopro Hero5
- Sony カメラ
- 使っていない iPhone 7
- PC: MacBook Pro (15-inch, 2016)
方法
GoPro wi-fi hack
GoProのカメラをWi-FiでPCと接続し、Webカメラ化する方法
通常のアプリを利用するのではなく、GoProの非公開APIを利用してGoProに写っている動画を見るという方法
-
こちらのGitHubレポジトリのコードを使うと、上記を実現できる
-
前提条件
- Macにffmpegがインストールされている
- MacにPython or Rubyがインストールされている(上記のGitHubではpython, rubyのコードしかないが、リクエスト処理・ffplayの呼び出しができればどの言語でもできる)
-
仕組み
- GoProとPCを接続すると、GoProのIPが
10.5.5.9
, PCのIPが10.5.5.100
となる - PCから、
10.5.5.9
に対して、UDPで映像を送ってくれという指示を出すhttp://10.5.5.9/gp/gpControl/execute?p1=gpStream&a1=proto_v2&c1=restart
- その他のコマンドは、goprowifihackにまとまっている
- すると、
10.5.5.100:8554
でUDPで映像を受け取れるので、ffplayで映像を受信しMacで表示するffplay -fflags nobuffer -f:v mpegts -probesize 8192 udp://10.5.5.100:8554
- GoProとPCを接続すると、GoProのIPが
-
ポイント
- Hero5 Sessionの場合、UDPで送れる最大の解像度が720p
- ストリーム配信に対応している解像度は、撮影できる解像度と一致しているわけではなかった
- 映像のみで、音声は受信できない
- ストリームする画像に関する設定は限定的
- ビデオモードにしないとストリーム配信されなさそうだった
- Hero5 Sessionの場合、UDPで送れる最大の解像度が720p
Imaging Edge Webcam
SonyのPCソフトをインストールし、カメラをWebカメラとして使う方法。
調べてみて、無線は難しそうだったので試していない。
- ポイント
- ソフトウェアをインストールすれば実現できる
- こちらも、カメラで撮影できる解像度とストリームさせられる解像度は異なる模様
- 人によっては、解像度を上げるためにHDMIをキャプチャボードで取り込んでPCで表示している人もいた
- ストリームする画像をある程度前処理させられそう
FaceTime
iPhoneに標準搭載されているFaceTimeというアプリを使う方法
- 手順
- iPhoneでFaceTimeのリンクを発行し、AirDropでMacに送る
- MacでFaceTimeに参加する
- iPhoneでもFaceTimeに参加し、Macからの参加を許可する
- ポイント
- 簡単に設定できる
- 動画だけでなく音声も受信できる
- 家のネットワークだけで完結できない
- 暗いところでもいい感じに明るさを調整してくれる(画像の前処理が自動でかかる)
連携カメラ(Mac・iPhoneの標準機能)
今回、Macが古くて試せなかったが、今回のシステム要件が合わず試せなかった。
が、新しいiPhoneとMacを持っているなら、これが良さそうな気がする
- 要件
- iPhone XR 以降 (2018 年以降に発売されたすべての iPhone モデル)
- macOS Ventura 以降に対応したすべての Mac
- ポイント
- ちゃんと調べていないからアレだが、Webカメラとして機能する
- FaceTime, QuickTime PlayerでiPhoneのカメラを認識するようになる
- 有線でも無線でもOK
まとめ
今回あるもので色々調べてみましたが、結局FaceTimeが用途に合いそうだという結論になりました。
新しいMac欲しい・・