Armadilloフォーラム

acmfbdevsink バッファ関連のエラーについて

hamaoka

2015年7月15日 11時24分

現在、Armadillo840でfbdevsinkからHDMI出力をしようとしています。
qtphotoviewerによるHDMI出力は確認できていますが、
fbdevsinkでHDMIからテスト画像を出力しようとしたところ、以下のエラーが出てしまい、動作しません

gstacmfbdevsink.c(1293): gst_acm_fbdevsink_render (): /GstPipeline:pipeline0/GstAcmFBDevSink:acmfbdevsink0:
failed get dmabuf meta from buffer

手順と致しましては、
1.rc.localをACM_CODEC=noneに設定していることを確認し、再起動
1.killall qmlscene
2.fbset -xres 1280 -yres 1024 -t 9260 248 48 38 1 112 3
3.gst-launch-1.0 videotestsrc ! "video/x-raw,width=1280,height=1024" ! queue ! acmfbdevsink device=/dev/fb0
としました。

Armadillo 製品アップデートのお知らせ (2014年7月/Armadillo-800シリーズ対象)
http://armadillo.atmark-techno.com/news/140711/software-update
から、H264エンコーダと同時に使用しようとするとメモリ不足になるという記載があり、
メモリに連続領域を確保できていないと考え、
CMAの値を64→128へ変更しましたが、同じエラーとなります。

最終的に、上記記事記載のユーザーランドの削減を行い、acmh264encと同時使用を行いたいと思っており、
エンコーダ機能とメモリの関連性に対して疑問点がありますので、合わせて質問させていただきます。

1.上記のエラーはメモリに関する設定で解決できるのでしょうか
2.ブートローダーのsetenv memでの設定はエンコーダ/HDMIのメモリと関係あるのでしょうか
3.2で関係がある場合、エンコーダ、HDMIはメモリのどの領域(CMA、setenv mem外)が必要なのでしょうか

ファイル ファイルの説明
log.zip
コメント

at_ohsawa

2015年7月15日 11時37分

メモリ不足とは無関係です。
videotestsrcの結果を受ける時は、普通のfbdevsink をご利用ください。
acmfbdevsink は DMABUF という機構に対応した acmh264dec用のエレメントです。

参考) 6.3.1. フレームバッファデバイスにテスト画像を出力
http://manual.atmark-techno.com/armadillo-840/armadillo-840_product_man…

hamaoka

2015年7月16日 18時51分

> メモリ不足とは無関係です。
> videotestsrcの結果を受ける時は、普通のfbdevsink をご利用ください。
> acmfbdevsink は DMABUF という機構に対応した acmh264dec用のエレメントです。
>
> 参考) 6.3.1. フレームバッファデバイスにテスト画像を出力
> http://manual.atmark-techno.com/armadillo-840/armadillo-840_product_man…

ご返答ありがとうございます。
acmfbdevsink をfbdevsinkに変更することで問題なくHDMI出力を行うことができました。