Armadilloフォーラム

Armadillo-440のLCDでのストリーミング再生

kagawalab_yokota

2016年10月26日 16時00分

お世話になります.横田と申します.

Armadillo-810カメラモデル開発セットからmjpg-streamerを用いてストリーミング配信した映像を同一LAN上にあるArmadillo-440液晶モデル開発セットの液晶でストリーミング再生しようと考えています.

ストリーミング再生は難しいと考えwgetでsnapshotをjpeg画像で取得し,連続更新することで擬似的にストリーミング再生する方が現実的かなとも考えております.

現在wgetで画像を取得するところまでは成功しましたがLCDへの表示方法が分かりません.
直接画像ファイルを/dev/fb0に書き込む方法も分からず,cpでコピーしてみましたが砂嵐上のバーが表示されるだけで画像が表示されませんでした.

もっといい方法はないのでしょうか.
初歩的な質問で申し訳ありませんがご教授頂ければと思います.

尚,両Armadilloともatmark-distで生成したカーネル及びユーザランドイメージ(AWL13を組み込み)を用いてDebianGNU/Linux8.4.0(jessie)搭載のNFSサーバPCの公開ディレクトリをマウントして開発しています.

補足
Armadillo-810でのmjpeg-streamerの起動は以下のように行いました.
LD_LIBRARY_PATH=/usr/lib/mjpg_streamer/ mjpg_streamer -i "input_uvc.so --device /dev/video1 --yuv --resolution 320x240 --fps 30" -o "output_http.so -w /usr/lib/mjpg_streamer/www" &

コメント

access.mihara

2016年10月26日 16時34分

三原と申します。

> 現在wgetで画像を取得するところまでは成功しましたがLCDへの表示方法が分かりません.
> 直接画像ファイルを/dev/fb0に書き込む方法も分からず,cpでコピーしてみましたが砂嵐上のバーが表示されるだけで画像が表示されませんでした.
>
> もっといい方法はないのでしょうか.

Linux の FrameBuffer プログラミングはご存知ですか?

私だと FrameBuffer は直接触らず、DirectFB ライブラリを使うところです。FrameBuffer への書き込みと JPEG のデコード(要 libjpeg)が両方できます。ただ、開発元がディスコンと噂される状況ですので、これから情報を集めるのは難しいですが。

まだ DirectFB が活発に開発されていた 2007 年にアットマークテクノ様がお書きになった記事があります。
http://armadillo.atmark-techno.com/articles/sd-a500-embedded-course-ch4

それから時がたって 2015 年に Armadillo-840 に DirectFB を移植したときにつまづいた経験は、私がこのフォーラムに投稿したことがあります。
https://armadillo.atmark-techno.com/forum/armadillo/1763

kagawalab_yokota

2016年10月27日 16時35分

> Linux の FrameBuffer プログラミングはご存知ですか?
>
> 私だと FrameBuffer は直接触らず、DirectFB ライブラリを使うところです。FrameBuffer への書き込みと JPEG のデコード(要 libjpeg)が両方できます。ただ、開発元がディスコンと噂される状況ですので、これから情報を集めるのは難しいですが。
>
> まだ DirectFB が活発に開発されていた 2007 年にアットマークテクノ様がお書きになった記事があります。
> http://armadillo.atmark-techno.com/articles/sd-a500-embedded-course-ch4
>
> それから時がたって 2015 年に Armadillo-840 に DirectFB を移植したときにつまづいた経験は、私がこのフォーラムに投稿したことがあります。
> https://armadillo.atmark-techno.com/forum/armadillo/1763

三原様.

横田です.
Linux の FrameBuffer プログラミング,初めて知りました.
まだ深く調べられてはいませんがDirectFBライブラリはとても興味深いので教えていただいたURLを参考に勉強させて頂きます.
貴重なご助言ありがとうございました.

at_yashi

2016年10月27日 15時10分

Armadillo-440は、最初から X Window System が動いているので、ここに表示してください。スタートアップガイドにある「ファンクションテスト」のアプリ[1]も Gtk+[2]というツールキットを使って X に描画しています。

もし X に描画せず、/dev/fb0 に直接書込みたいときは、fb0 のフォーマットに合せて画像を作成する必要があります。RGB 565 のフォーマットになっているので、合せて変換してください。ImageMagickの convert コマンド[3]などで変換できます。 変換後は、cat できます。

ところで、再生側が a840 ではなく、a440 の理由ってなにかありましたか?

[1]: http://manual.atmark-techno.com/armadillo-4x0/armadillo-440_startup_gui…
[2]: http://www.gtk.org/
[3]: http://qiita.com/koara-local/items/0b750355b1a9135ff53f

kagawalab_yokota

2016年10月27日 19時19分

at_yashi様

> Armadillo-440は、最初から X Window System が動いているので、ここに表示してください。スタートアップガイドにある「ファンクションテスト」のアプリ[1]も Gtk+[2]というツールキットを使って X に描画しています。

Gtk+を使ってのX Window Systemへの描画についてはまだまだ勉強不足です.
Atmark-dist内のファンクションテストのソースコードを参考にして試してみたいと思います.

> もし X に描画せず、/dev/fb0 に直接書込みたいときは、fb0 のフォーマットに合せて画像を作成する必要があります。RGB 565 のフォーマットになっているので、合せて変換してください。ImageMagickの convert コマンド[3]などで変換できます。 変換後は、cat できます。

convertコマンドが見つからなかった為ImageMagickをapt-getしようと思いましたがこちらはATDE上でapt-getしてAtmark-distに組み込んだ後に再ビルドすることで使用できるという認識で正しいでしょうか?

> ところで、再生側が a840 ではなく、a440 の理由ってなにかありましたか?

a810からの映像をストリーミング再生する事が決まった際手元にa440しか無かった為です^^;