ngcodec-tile

HEVC/H.265 エンコーダー – ビットレート最適化版

NGCodec 社の RealityCodec は、H.265/HEVC 対応の配信放送品質のトランスコーダーであり、ABR をサポートし、オンプレミスの Alveo カードとクラウドの FPGA インスタンスの両方で実行されます。

ベンダー: Xilinx

更新日
サイズ コンテナー バージョン
2020 年 6 月 16 日 1.64 GB hevc_u200_v1.3
2020 年 7 月 1 日 1.64 GB hevc_u50_v1.3

その他のご質問、またはユーザー エクスペリエンスに関する問題は、alveo_video_ea@xilinx.com へご連絡ください。

評価または購入

この製品を評価または購入する権限を取得します。


無償トライアルで下記のサンプル アプリケーションを実行できます。


運用オプション

このアプリケーションはコンテナー化されており、クラウドまたはオンプレミス上で数分で簡単に実行できます。

オンプレミス
Alveo U50
製品の詳細および購入
  • ザイリンクス ランタイム: 2020.1
  • ターゲット プラットフォーム: xilinx_u50_gen3x4_xdma_base_2


 


評価を開始する

運用方法に応じた手順に従ってください。

Alveo U50

1.

アカウント アクセス キーを取得

ユーザー認証と、ユーザー アカウントの権限に基づいてアプリケーションへのアクセスを許可するには、アクセス キーが必要です。次の手順に従って、ご自身のアカウントのアクセス キーを取得してください。

  • Xilinx App Store Portal にログインします。
  • [Manage Account] をクリックして権限を表示します。
  • 左のメニューから [Access Key] をクリックします。
  • [Create an Access Key] をクリックします。
  • 生成された cred.json ファイルをダウンロードします。

注記: 生成したアクセスキーで、ご自身のアカウント内のすべての権限を有効にできます。上記の「TRY OR BUY」セクションから権限を取得していない場合は、この手順を実行してからアクセス キーを生成してください。


2.

ホストを設定する

XRT (Xilinx Runtime) ホスト アプリケーションは、CentOS 7.xでサポートされています。  sudo アクセスが許可されている状態で、次のコマンドを使用してセットアップ スクリプトをダウンロードして実行します。

 


2.1 Xilinx Base Runtime 用の GitHub リポジトリを複製する

    git clone https://github.com/Xilinx/Xilinx_Base_Runtime.git && cd Xilinx_Base_Runtime

2.2 ホスト セットアップ スクリプトを実行する

    ./host_setup.sh -v 2020.1 -p alveo-u50 –skip-shell-flash


注記: 

  • インストールが完了するまで待機します。  途中、ホスト セットアップを継続させるために [Y] をクリックする必要がある場合があります。
  • ホスト セットアップ用のスクリプトを使用して、ほかのバージョンの XRT やシェルをセットアップできます。詳細は、https://github.com/Xilinx/Xilinx_Base_Runtime をご覧ください。

 


2.3 U50 Gen3x4 シェルをインストールする

U50 gen3x4 シェルは、ザイリンクス ラウンジ (https://japan.xilinx.com/member/alveo-platform.html) で入手できます。

該当する運用環境のパッケージをダウンロードして解凍し、sc、cmc、および xdma ベース パッケージをインストールします。

CentOS:

sudo yum remove -y xilinx-cmc-u50 xilinx-sc-fw-u50
sudo yum install ./
sudo yum install ./

sudo yum install ./
sudo yum install ./

sudo /opt/xilinx/xrt/bin/xbmgmt flash --update --shell xilinx_u50_gen3x4_xdma_base_2

FPGA に新しいシェルがロードされるとすぐに、マシンをコールドリブートしてください。


ドッカーをインストールする (まだインストールしていない場合)

sudo アクセスが許可されている状態で、次のコマンドを使用してユーティリティ スクリプトを実行してドッカーをインストールします。


Xilinx_Base_Runtime ユーティリティ ディレクトリへ移動する

    cd Xilinx_Base_Runtime/utilities

Docker インストレーション スクリプトを実行する

    ./docker_install.sh


Docker のインストールを確認したら、起動します。
sudo systemctl restart docker
systemctl enable docker


2.5 Docker イメージをインストールする

こちらから Docker イメージしてください。

インストール

docker load --input [downloaded_docker_image.tar.gz]


3.

アプリケーションの実行

ターミナル ウィンドウで次のコマンドを入力して、アプリケーションを実行します。


3.1 Xilinx_Base_Runtime のスクリプトで環境変数をセットアップする

    source Xilinx_Base_Runtime/utilities/xilinx_docker_setup.sh


ドッカーが出力ディレクトリ (デフォルトは /dev/shm ) への書き込み権限を持って いることを確認してください。
chmod 777 /dev/shm/


3.2 Docker イメージを実行する

シングル コマンドを実行できますが、対話型シェルを起動して、複数コマンドを実行することも可能です。


3.2.1 シングル コマンド

    docker run -v /tmp/cred.json:/cred.json -v /dev/shm:/data $XILINX_DOCKER_DEVICES xilinxatg/dcg_video_nimbix:HEVC_U50_Centos7 /cred.json "-y -i /samples/in.mp4 -c:v NGC265 -vf fps=60 -b:v 5M -f rawvideo /data/1080p60_5mbs.265"

コマンド引数の説明:

  • -v /tmp/cred.json:/cred.json  - Map local cred.json dir : コンテナー ディレクトリ
  • -v /dev/shm:/data -  Map the local dir : 生成された出力ファイルのコンテナー ディレクトリ
  • $XILINX_DOCKER_DEVICES  - ホスト セットアップ スクリプトで設定された環境変数
  • /cred.json - ランタイム スクリプトに cred.json の場所を知らせる
  • -y -i /samples/in.mp4 -c:v NGC265 -vf fps=60 -b:v 5M -f rawvideo /data/1080p60_5mbs.265 - ffmpeg commandline arguments
  • "0" – ロックを解除するデバイス ID を指定するオプションの引数。"0 1" は、デバイス 0 および 1 のロックを解除。

3.2.2 対話型シェル

    docker run -u alveo -v /tmp/cred.json:/cred.json -v /dev/shm:/data $XILINX_DOCKER_DEVICES --entrypoint bash -it xilinxatg/dcg_video_nimbix:HEVC_U50_Centos7

コマンド引数の説明:

  • -v /tmp/cred.json:/cred.json  - Map local cred.json dir : コンテナー ディレクトリ
  • -v /dev/shm:/data -  Map the local dir : 生成された出力ファイルのコンテナー ディレクトリ
  • $XILINX_DOCKER_DEVICES  - ホスト セットアップ スクリプトで設定された環境変数
  • /cred.json - ランタイム スクリプトに cred.json の場所を知らせる
  • --entrypoint bash -it - bashセッションを起動して、インタラクティブにする

FPGA のロックを解除する

cd drmapp/

cp /cred.json .

./drmapp.exe &

これにより、FPGA のデバイス 0 のロックが解除される。複数デバイスをロックする場合は、./drmapp.exe 0 1 & を実行する。

cd ~/scripts/  

ffmpeg コマンドを実行します。サンプル スクリプトを使用できます。サンプルの入力 mp4 ファイルは、/samples にあります。

./1080p60_5mbs.cmd

DRM を停止する

kill %1

 


4.

結果

ジョブが完了すると、/dev/shm/ に出力ファイルが保存されます。