DJI MOBILE SDK (iOS) ドローンのカメラからの映像を表示する際のメモ

DJI MOBILE SDK (iOS) を使用した自作アプリで、ドローンのカメラからの映像を表示する際のメモ。

【検証環境】
Mac Book Pro (15-inch, mid 2015), XCode10.1, Objective-C
iPhone7, iOS12.1.2
ドローン:DJI Mavic 2 Pro
コントローラ:RC1A(DJI Mavic 2 Pro付属コントローラ)

【問題】
カメラからの映像をiOSデバイスの画面に表示させる。
ここではチュートリアルに倣って、映像のレンダリングにはDJIWidget.frameworkとFFmpeg.frameworkを使用するものとする。

・映像表示そのものはDJIVideoFeeder, DJIVideoFeedなどが関わる。
・DJICameraが関係しそうに見えるが、こちらはカメラの設定を担っている。
・レンダリングはDJIWidget.frameworkにあるDJIVideoPreviewerを使用する。
・DJIVideoPreviewerは内部でOpenGLES2を使用しているようだ。
・将来的にはMetalによる、独自シェーダでの描画に変更したい。

【解決】
XCodeのプロジェクトに以下を設定しておく
・ DJISDK.framework
・ DJIWidget.framework

・ FFmpeg.framework

以下をプログラムする(製品との接続まではできているとする)
・DJIVideoFeedにリスナ(デリゲート)を設定
・DJIVideoPreviewerのシングルトンに表示させたいビューを設定
・DJIViewPreviewerのstartで再生を開始させる

・-(void)videoFeed: didUpdateVideoData:デリゲートでDJIVideoPreviewerにキャプチャされた画像データを設定する




【詳細とコード例】

ここから先は

2,218字

¥ 100

普段の作業のメモを残していきます。よろしくお願いいたします。