Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

目次


はじめに


i-PROカメラアプリケーション開発環境の構築が完成していることを前提に説明します。
開発環境の構築が準備できていない場合、こちらを参考に完成させてください。

また、このチュートリアルではSDKのインストールディレクトリを${SDK_DIR}として記載します。

動作概要


additional_info_sample_appは映像または音声ストリームに付加情報を付与するサンプルアプリです。

動作に必要な外部ライブラリ


Pythonでビルドする場合は下記が必要です。

pycurl

外部ライブラリの利用については、後ほど説明します。

サンプルアプリのディレクトリパス


C/C++のソースコードは下記に格納されています。

${SDK_DIR}/src/adamapp/additional_info_sample_app

Pythonのソースコードは下記に格納されています。

${SDK_DIR}/src/adamapp-py/additional_info_sample_app

サンプルアプリのビルド方法(C/C++)


ここでは、AdamAppとしてビルドする方法を記載しています。

Container AdamAppとしてビルドする場合は下記を参照ください。

チュートリアル(Container AdamApp編) - Technology Partner - Confluence (atlassian.net)

SDKのインストールディレクトリでビルド用環境設定ファイルの読み込みを実施します。

$ cd ${SDK_DIR}
$ source setup_env.sh ipro-ambaCV2X

ビルド用環境設定は各環境に合わせて実施してください。
ここでは、ipro-ambaCV2X を指定します。

 

次にサンプルアプリのディレクトリに移動し、makeします。

$ cd src/adamapp/additional_info_sample_app
$ make

${SDK_DIR}/src/adamapp/additional_info_sample_app に.extファイルが作成されていれば成功です。

カメラにインストールします(例:下記画像の緑枠からインストール可能)。作成した.extファイルを選択してインストールしてください。
アプリ画面を開きます(下記画像の赤枠ボタン)。

 

下記画像のような、文字列が表示されていれば成功です。

サンプルアプリのビルド方法(Python)


ここでは、AdamAppとしてビルドする方法を記載しています。

Container AdamAppとしてビルドする場合は下記を参照ください。

チュートリアル(Container AdamApp編) - Technology Partner - Confluence (atlassian.net)

Pythonでビルドする場合はこちらを参照してください。

サンプルアプリの使用方法


付加情報を付与できていることを確認してみます。Wiresharkのようなネットワーク・アナライザ・ソフトウェアを準備して、カメラからパソコンへ送付されたネットワーク情報(カメラLive映像を映している状態でないと付加情報は確認できません)を確認します。

■サンプルアプリインストール前のネットワーク情報
下記のように、付加情報が付与されていないことが確認できます。

■サンプルアプリインストール後のネットワーク情報
下記の赤枠のように、「Additional Info test」という付加情報が付与されていることが確認できます。

付加情報の詳細については、API仕様のADAM_AdditionalInfo_Set() を参照してください。

補足情報


・付加情報について

H.264、H.265、オーディオ:
追加情報は各フレームの最初の RTP パケットの RTP ヘッダー拡張に埋め込まれます。

JPEG:
COMセグメントに追加情報が埋め込まれます。

i-PROにおけるRTPヘッダ拡張フォーマットは以下の通りです。

defined by profile: Always 0.
ID: Set more than 0xff.
additional information: Set any data (up to 512bytes).

  • No labels