Armadilloフォーラム

ARMからのVIO6利用

ce_fono

2015年9月8日 10時15分

セントラルエンジニアリングの本田です。

 VIO6について質問です。
 AVコーデックのH.264エンコーダはVIO6のリソースを使用していますか。

 Armadillo-840 液晶モデル開発セットを組み込んだ弊社装置で、R-mobile A1のCEUでキャプチャしたHD映像をH.264エンコードしファイルに記録しながら、同じ映像を800x480のLCD画面の一部にリアルタイムで縮小表示する必要があります。縮小をソフトウェアで行うとLCD表示のフレームレートが2fps程度になってしまうので、これをVIO6で実現しようと考えています。VIO6はARMコアからアクセス出来るようなのでARM用Linuxドライバとして実装する予定です。なおキャプチャ、記録、表示にはGStreamer 1.0のライブラリを使用します。
 Armadillo-840製品マニュアルによればAVコーデックのH.264デコーダはVIO6を利用して画像の高速な拡大縮小を実現しているようです。弊社ARM用VIO6ドライバは単独またはH.264エンコード中に動作させるのですが、H.264エンコーダがVIO6のリソースを使っているか否かが判りません。

よろしくお願い致します。

コメント

at_yashi

2015年9月8日 11時25分

> AVコーデックのH.264エンコーダはVIO6のリソースを使用していますか。

encoder 側では使っていません。

> Armadillo-840製品マニュアルによればAVコーデックのH.264デコーダはVIO6を利用して画像の高速な拡大縮小を実現しているようです。

その通りです。
decoder は、デフォルト状態で使っていますが、止めることができます。
decoder で vio6 を使わないようにするには、acmh264dec の enable-vio6 を false にします。
マニュアルの「図15.7 エレメント情報の取得」の最後の方
http://manual.atmark-techno.com/armadillo-840/armadillo-840_product_man…

  enable-vio6         : FALSE: disable, TRUE: enable
                        flags: readable, writable
                        Boolean. Default: true

この設定でvio6 の代わりに 2D-DMAC が使われます。vio6 ではなくなるので、拡縮するなどができなくなります。

> 弊社ARM用VIO6ドライバは単独またはH.264エンコード中に動作させるのですが、H.264エンコーダがVIO6のリソースを使っているか否かが判りません。

問題なく使えると思っていますが、もしかするとすでに問題があったりしますか?

ce_fono

2015年9月8日 17時00分

> encoder 側では使っていません。

了解しました。

> > Armadillo-840製品マニュアルによればAVコーデックのH.264デコーダはVIO6を利用して画像の高速な拡大縮小を実現しているようです。
>
> その通りです。
> decoderは、デフォルト状態で使っていますが、止めることができます。
> decoder で vio6 を使わないようにするには、acmh264dec のenable-vio6 を false にします。
> マニュアルの「図15.7エレメント情報の取得」の最後の方
>http://manual.atmark-techno.com/armadillo-840/armadillo-840_product_man…
>
> enable-vio6 : FALSE: disable, TRUE: enable
> flags: readable, writable
> Boolean. Default: true
>
>
> この設定でvio6 の代わりに 2D-DMAC が使われます。vio6ではなくなるので、拡縮するなどができなくなります。

情報ありがとうございます。

>問題なく使えると思っていますが、もしかするとすでに問題があったりしますか?

いいえ。まだ設計段階なので。
その時には改めて相談させて頂きます。

at_takahiro.nakamura

2015年9月8日 17時03分

takahiro.nakamuraです。

> > decoderは、デフォルト状態で使っていますが、止めることができます。
> > decoder で vio6 を使わないようにするには、acmh264dec のenable-vio6 を false にします。

申し訳ありません。
現在のLinuxカーネル v3.4-at15(2015/9/8現在最新版)は、decoder で vio6 を停止出来ません。
vio6 を未使用にするには、添付パッチを下記の手順で適用してください。

(1) カーネルディレクトリに本patchをコピー
(2) 以下のコマンドにてパッチを適用

[ATDE ~/linux-3.4-at]$ patch -p1 < 0001-acm-change-acm-driver-to-support-the-vio6-on-off-con.patch

ファイル ファイルの説明
0001-acm-change-acm-driver-to-support-the-vio6-on-off-con.patch

ce_fono

2015年9月8日 17時58分

> 申し訳ありません。
> 現在のLinuxカーネル v3.4-at15(2015/9/8現在最新版)は、decoder で vio6 を停止出来ません。
> vio6 を未使用にするには、添付パッチを下記の手順で適用してください。

ありがとうございます。
パッチを適用致します。