AR# 68780

HDMI Transmitter (TX) Subsystem v2.0 - Software Driver v3.0 - カスタム AVI InfoFrames の送信方法

説明

カスタム AVI InfoFrames の送信方法を教えてください。

ソリューション

2018.1 以降:

AUX パケットの API は柔軟性を高めて HDR およびその他の AUX 情報を簡単に送信できるように書き直されました。

AUX パケットを送信するジェネリック API は次のとおりです。

void XV_HdmiTxSs_SendGenericAuxInfoframe(XV_HdmiTxSs *InstancePtr, void *Aux)

詳細情報は、『HDMI Tx Subsystem 製品ガイド』 (PG235) の AUX パケットのセクションに記載されています。この資料には、 新しい構造を使用してAVI InfoFrame 情報を変更する方法も含まれています。

2015.4 ~ 2017.4:

現在の HDMI ソフトウェア ドライバーは基本的な AVI InfoFrame を常に送信しますが、そのフィールドの多くはデフォルト値に設定されていて、アップデートできません。

カスタム AVI InfoFrames を送信できるようにするには、ドライバーおよびサンプルのソフトウェア アプリケーションに次の変更を加える必要があります。

次の 2 段階の作業で変更できます。

  • 自動生成された AVI InfoFrame をユーザー アプリケーションに移動させる
    必要な変更を加えたことを確認し、この後もユーザーは参照としてザイリンクス ファンクションを呼び出すことができます。
  • 自動生成された AVI InfoFrame をディスエーブルにし、カスタム AVI InfoFrame を使用する
    ザイリンクスの AVI InfoFrame をコメントアウトし、カスタムの AVI InfoFrame を生成するか、テスト用に必要であればこの 2 つを切り替えることができるコマンドを追加できます。

自動生成された AVI InfoFrame をユーザー アプリケーションに移動させる


HDMI TX Subsystem Software Driver v3.0 (v_hdmitxss_v3_0) で、次の変更を加えます。


注記: これらの変更は xv_hdmitxss.c ファイルに加えます。

1) AVI InfoFrame の自動生成をディスエーブルにします。

XV_HdmiTxSs_VsCallback ファンクションの行 862 から 863 までをコメントアウトします。

/*
// AVI infoframe
XV_HdmiTxSs_SendAviInfoframe(HdmiTxSsPtr->HdmiTxPtr);
*/

AVI InfoFrame ファンクションをユーザーアプリケーションから呼び出せるように、これらをパブリックに設定します。

行 137 をコメントアウトします。

// static void XV_HdmiTxSs_SendAviInfoframe(XV_HdmiTx *HdmiTxPtr);

行 889 を次のように変更します。

変更前:

static void XV_HdmiTxSs_SendAviInfoframe(XV_HdmiTx *HdmiTx)

変更後:

void XV_HdmiTxSs_SendAviInfoframe(XV_HdmiTx *HdmiTx)

AVI InfoFrame ファンクションをユーザー アプリケーションから呼び出せるように、ヘッダーファイルに AVI InfoFrame ファンクションの宣言を追加します。

行 343 と 344 の間に次を追加します。

void XV_HdmiTxSs_SendAviInfoframe(XV_HdmiTx *HdmiTxPtr);


2) Vertical Sync コールバック中に AVI InfoFrame を含めるためユーザー アプリケーションをアップデートします。

これらの変更は xhdmi_example.c ファイルに追加します。

行 894 と 895 の間に次の行を追加して、TxVsCallback ファンクションをアップデートします。

// AVI infoframe
XV_HdmiTxSs_SendAviInfoframe(HdmiTxSs.HdmiTxPtr);



自動生成された AVI InfoFrame をディスエーブルにし、カスタム AVI InfoFrame を使用する

行 894 と 895 の間にある TxVsCallback ファンクションからザイリンクス AVI InfoFrame 生成をコメントアウトします。

これらの変更は xhdmi_example.c ファイルに追加します。

行 894 と 895 の間に次の行を追加して、TxVsCallback ファンクションをアップデートします。

// AVI infoframe
XV_HdmiTxSs_SendAviInfoframe(HdmiTxSs.HdmiTxPtr);

これで、カスタム AVI InfoFrame を生成するのに XV_HdmiTxSs_SendGenericAuxInfoframe ファンクションを使用できます。

XV_HdmiTxSs_SendGenericAuxInfoframe ファンクションを使用して送信するアレイを生成する方法の例として、ザイリンクスの AVI InfoFrame ファンクションを使用することを推奨します。

ECC 値を HDMI TX サブシステムで挿入できるようにするため、AUX データ アレイでバイトを 8 つおきにスキップする必要がある点に注意してください。 

ECC バイトの詳細については、HDMI 1.4b 仕様セクション 5.2.3.4 および 5.2.3.5 を参照してください。

AUX ヘッダー:

0x82 0x02 0x0D 0xE4
HB0 HB1 HB1 ECC

AUX データ:

0x72 0x00 0x28 0x00 0x10 0x00 0x00 0x07
PB0 PB1 PB2 PB3 PB4 PB5 PB6 ECC
0x00 0x39 0x04 0x00 0x00 0x81 0x07 0x69
PB7 PB8 PB9 PB10 PB11 PB12 PB13 ECC
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
PB14 PB15 PB16 PB17 PB18 PB19 PB20 ECC
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
PB21 PB22 PB23 PB24 PB25 PB26 PB27 ECC

アンサー レコード リファレンス

マスター アンサー レコード

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
65911 HDMI 1.4/2.0 Transmitter (TX) Subsystem - Vivado ツール 2015.4 以降のバージョンのリリース ノートおよび既知の問題 N/A N/A

関連アンサー レコード

AR# 68780
日付 06/01/2018
ステータス アクティブ
種類 一般
IP