Raspberry PI 使用 MJPG-streamer 來架設 Stream WebCam Server

一樣先更新並安裝packages

sudo apt-get update
sudo apt-get install subversion
sudo apt-get install libjpeg8-dev
sudo apt-get install imagemagick


下載Source 回來自行編譯
利用將剛所裝的SVN 將  MJPG-streamer 的 source 抓回來,執行下方指令:

svn co https://mjpg-streamer.svn.sourceforge.net/svnroot/mjpg-streamer mjpg-streamer

進行編譯

cd mjpg-streamer/mjpg-streamer
make


完成後,將USB WebCam接上樹莓派
執行lsusb 來查看是否有抓到硬體

如下

Bus 001 Device 007: ID 0c45:6310 Logitech Tech USB 2.0 Camera

接著在剛剛編譯的目錄下輸入

./mjpg_streamer -i "./input_uvc.so" -o "./output_http.so -w ./www"

若出現類似下方訊息

Unable to set format: 1196444237 res: 640x480

則代表WebCam不支援輸出,MJPEG 的格式,改在指令中加個 -y 的參數,讓它改用 YUYV 的格式
如下:

./mjpg_streamer -i "./input_uvc.so -y" -o "./output_http.so -w ./www"

stream server 若是正常啟動的話,會在最下方看到如下訊息

 o: www-folder-path...: ./www/
 o: HTTP TCP port.....: 8080
 o: username:password.: disabled
 o: commands..........: enabled

這時候就算快完成了


接著可以打開瀏覽器輸入樹莓派的IP如下

http://192.168.0.1:8080/




補充
其它參數

輸入的 plugin  input_uvc.so 除了前面 -y 、-r 參數以外,還有其它可設定,如:

-d : 用來指定要使用哪一個 Webcam,預設是使用 /dev/video0
-f : 用來設定每秒鐘要抓多少 frames,預設是 5 frames/sec
-q : 用來設定 JPEG 的品質(百分比),預設是 80


輸出的 plugin 除了前面指令中用的 -w 參數外,也可使用下方參數來自訂

-w : 指定 MJPG-streamer HTTP server 網頁儲存的目錄名稱。
-p : 指定 HTTP server 要在哪一個 TCP port 提供服務,預設為 8080
-c : 設定 client 連線時要經過帳號密碼驗證過才可以觀看影像,例如 -c Hello:12345
-n : 不包含讓 client 透過 HTTP 來控制 Webcam 參數的功能

留言

這個網誌中的熱門文章

TeknoParrot 模擬器介紹,俗稱《鸚鵡模擬器》

[轉貼] ASP.NET傳遞參數給Crystal Report做Export或Print的動作

[轉貼] Server 端Post資料到 .ashx