Raspi戦車を拡張する。



  1.  LCDに DHCP取得した IPアドレスを表示させる。
  2.  mjpg-steamer で USBカメラを動かす。

まず、使えるようになったLCD をもとに、/etc/rc.local に

 sudo python /home/pi/Desktop/raspi-sample/07-02-LCD.py $_IP &

を追記。 再起動すると LCD に IPを表示してくれる。



続いて、USBカメラを繋げてみる。


$ sudo apt-get update
$ sudo apt-get install libjpeg62-dev cmake
$ git clone https://github.com/jacksonliam/mjpg-streamer.git mjpg-streamer
$ cd mjpg-streamer/mjpg-streamer-experimental
$ make
$ cd ..
$ sudo mv mjpg-streamer/mjpg-streamer-experimental /opt/mjpg-streamer

$ sudo sh 10-02-stream.sh

で、9000 ポートが動いてるかを確認すると。。。? あれ? ない。

/var/log の messages では、
May 23 05:03:39 raspberrypi MJPG-streamer [3782]: starting application
May 23 05:03:39 raspberrypi MJPG-streamer [3782]: MJPG Streamer Version: svn rev: 
May 23 05:03:39 raspberrypi MJPG-streamer [3782]: fps.............: 15
May 23 05:03:39 raspberrypi MJPG-streamer [3782]: resolution........: 640 x 480
May 23 05:03:39 raspberrypi MJPG-streamer [3782]: camera parameters..............:#012
May 23 05:03:39 raspberrypi MJPG-streamer [3782]: www-folder-path...: /opt/mjpg-streamer/www/
May 23 05:03:39 raspberrypi MJPG-streamer [3782]: HTTP TCP port.....: 9000
May 23 05:03:39 raspberrypi MJPG-streamer [3782]: username:password.: disabled
May 23 05:03:39 raspberrypi MJPG-streamer [3782]: commands..........: enabled
May 23 05:03:39 raspberrypi MJPG-streamer [3782]: starting input plugin input_raspicam.so
May 23 05:03:39 raspberrypi MJPG-streamer [3782]: starting output plugin: output_http.so (ID: 00)
May 23 05:03:39 raspberrypi MJPG-streamer [3782]: Starting Camera
と、いかにも動いてるな感じなのに、動いてない。



切り分けのため、10-02-stream.sh の中身をコマンドラインから叩くとエラーが。
$ sudo /opt/mjpg-streamer/mjpg_streamer -i "input_raspicam.so -fps 15 -q 50 -x 640 -y 480" -o "output_http.so -p 9000 -w /opt/mjpg-streamer/www"
MJPG Streamer Version: svn rev: 
ERROR: could not find input plugin
       Perhaps you want to adjust the search path with:
       # export LD_LIBRARY_PATH=/path/to/plugin/folder
       dlopen: input_raspicam.so: cannot open shared object file: No such file or directory

input_raspicam.so をフルパスで書くと、また違うエラーが出た。 あれ???


ちょっと落ち着け俺。

そもそも、このサンプルは、RaspberryPi 純正カメラのことだった。
この場合、USBカメラなので、input_uvc.so を使うのだった。パラメータの書き方も変えて、

$ sudo /opt/mjpg-streamer/mjpg_streamer -i "/opt/mjpg-streamer/input_uvc.so -y -n -f 30 -r 640x480" -o "/opt/mjpg-streamer/output_http.so -p 9000 -w /opt/mjpg-streamer/www"

おおっ! 動いた。

http://<ip address>:9000/javascript.html 

カメラに写る俺を確認。


目指してたゴールは、これ ↓ 
image

※とても参考になったサイト
https://www.smartllc.jp/blog/20150222-how-to-stream-webcam-with-mjpgstreamer-on-raspberrypi/