[[Galileo]]

* IntelのGalileoでMJPG-streamer - Galileo [#re30bd52]

#contents

** 概要 [#j1d31d76]
MJPG形式の静止画や動画を配信できるMJPG-streamerをIntelのGalileo向けにビルドして動かしてみた.

** パッケージマネージャを使用したインストール [#u0764559]
[[IntelのGalileoでパッケージマネージャopkgを使う - Galileo]]のBSP1.0.0の場合の通りにwgetした上で,
#highlightjs(){{
$ opkg update
$ opkg install mjpg-streamer
}}
することでmjpg-streamerと依存パッケージがインストールされる.

** ビルド [#gc8ea060]
Bitbakeレシピは[[tokoro10g/meta-tokoro10g-galileo:https://github.com/tokoro10g/meta-tokoro10g-galileo]]にある.
#highlightjs(){{
$ bitbake mjpg-streamer
}}

** 使う [#w66c4995]
*** 静止画 [#d03aef13]
[[カメラモジュールをmjpg-streamerで配信するのってどうやるの - ことはじめってどうやるの:http://kotohazime.blogspot.com/2013/05/raspberrypimjpg-streamer.html]]を参考に,/home/root下にあるjpgファイルを静止画として配信してテストすることにした.
#highlightjs(){{
root@clanton:~# mjpg_streamer -i "/usr/lib/input_file.so -f /home/root" -o "/usr/lib/output_http.so -w /usr/www/ -p 8080"
MJPG Streamer Version.: 2.0
 i: folder to watch...: /home/root/
 i: forced delay......: 0
 i: delete file.......: no, do not delete
 i: filename must be..: -no filter for certain filename set-
 o: www-folder-path...: /usr/www/
 o: HTTP TCP port.....: 8080
 o: username:password.: disabled
 o: commands..........: enabled
}}
この状態で,PC側のブラウザから http://192.168.<GalileoのIP>:8080 を叩く.
/home/rootディレクトリにjpgファイルを置くと,それが配信される.

&ref(./galileo_mjpgstreamer.png,50%);

*** カメラの動画ストリーミング [#d9b6487e]
予めピクセルフォーマットをMJPGにしておく必要がある.
[[Selecting MJPG with a USB webcam - OpenCV Q&A Forum:http://answers.opencv.org/question/146/selecting-mjpg-with-a-usb-webcam/]]
#highlightjs(){{
# v4l2-ctl --set-fmt-video=width=640,height=480,pixelformat=MJPG
}}
この状態で
#highlightjs(){{
# v4l2-ctl --all
Driver Info (not using libv4l2):
	Driver name   : uvcvideo
	Card type     : UVC Camera (046d:0825)
	Bus info      : usb-0000:00:14.3-1
(...中略...)
Priority: 2
Video input : 0 (Camera 1: ok)
Format Video Capture:
	Width/Height  : 640/480
	Pixel Format  : 'MJPG'
	Field         : None
	Bytes per Line: 0
	Size Image    : 307200
	Colorspace    : SRGB
Crop Capability Video Capture:
	Bounds      : Left 0, Top 0, Width 640, Height 480
	Default     : Left 0, Top 0, Width 640, Height 480
	Pixel Aspect: 1/1
(...略...)
}}
のように,画像のサイズとピクセルフォーマットがきちんと設定されていることを確認する.~
設定がうまく行かない場合,カメラがMJPG形式のビデオキャプチャに対応していない可能性があるので注意する.

この設定ができたら,
#highlightjs(){{
# mjpg_streamer -i "/usr/lib/input_uvc.so" -o "/usr/lib/output_http.so -w /usr/www"
}}
としてmjpg_streamerを起動する.
PCのブラウザから http://192.168.<GalileoのIP>:8080 を叩き,Streamingメニューを選択すると,動画がストリーミングされている様子がわかる.
PCのブラウザから http://192.168.<GalileoのIP>:8080 を叩き,Streamメニューを選択すると,動画がストリーミングされている様子がわかる.

&ref(./galileo_mjpgstreamer_camera.png,50%);

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS