2014-05-26

Raspberry Pi 用 Mjpg-Streamer 監看二台 WebCam

阿舍因為為要試一些 OpenCV 的東西,所以,就去弄了二台 Webcam 來用,然後,試著試著就想到說,不知道用 Raspberry Pi 插二台 WebCam 的效果如何 ? 所以,阿舍找了個時間來試了一下,結果,阿舍覺得,應該是接到三台也 OK 的吧 ! ... 呵呵 !

同時監看二台 WebCam

阿舍是選擇 mjpg-streamer 這一套軟體來擷取 WebCam 畫面和提供網路串流 (streaming) )功能的,為什麼是這一套呢 ? 因為阿舍有經過一番血淚的試用史哩 ! 阿舍分別有試過 motion 、ffmpeg/ffsever ( avconv/avserver) 及 VLC 等軟體來擷取 Webcam 畫面和串流,不過,不是畫面的更新速度不夠快,就是太吃 CPU 的資源哩 ! 所以,最後,阿舍就選了這個 mjpg-streamer 來用囉 ! (註: 還是要說一下,這幾套軟體阿舍沒有花很多時間去研究參數如何調整,所以,結論僅供參考哩 ! ~~)

其實,用 mjpg-streamer 來播送二台 Webcam 的方法,說破了,真的很不值錢,啊就是一次起二個使用不同埠號 (Port) 的 mjpg-streamer 伺服器哩 ! 以阿舍的 webcam 分別是 /dev/video0 和 /dev/video1 為例,然後,分別使用 8001 和 8002 埠來當 Web Server 的話,就在 Raspberry Pi 上開二個終端機 (Termianl) 並切換到 mjpg-stream 的安裝資料夾後、分別執行下面這二行指令。

mjpg_streamer -i "/usr/lib/input_uvc.so -d /dev/video0 " -o "/usr/lib/output_http.so -w ./www -p 8001"

mjpg_streamer -i "/usr/lib/input_uvc.so -d /dev/video1 " -o "/usr/lib/output_http.so -w ./www -p 8002"

接下來,就可以開二個瀏覽器,然後,分別輸入 Raspberry Pi 的 IP 位址「http://192.168.1.103:8001」和「http://192.168.1.103:8002」(以阿舍的 Pi 的 IP 是 192.168.1.103 為例),接著,就可以看到二台 WebCam 的即時畫面了哩 ! 不過,阿舍覺得要開二個視窗的作法有點拙,而且,阿舍想要有跟那個 IP Cam 相同的效果,就是那種 4 分隔或 9 分隔的感覺,所以,阿舍就在研究了一下這個 mjpg-streamer 哩 !

後來,阿舍發現,原來,這個 mjpg-streamer 是有支援 server-push 的機制的,所以,阿舍只要在一個網頁裡,同時放入下面這二個標籤,那麼,就可以同時顯示二台 WebCam 的畫面,而且,阿舍還可以隨心所欲的編出阿舍想要的排列方式哩 ! ...

<img src="http://192.168.1.103:8001/?action=stream" />
<img src="http://192.168.1.103:8002/?action=stream" />

於是,阿舍就寫一個簡單的 html 網頁,命名為「m.html」,然後,把它放到 mjpg-streamer 安裝資料夾下的 www 資料夾裡,之後,阿舍再用「http://192.168.1.103:8001/m.html」來開啟網頁,就可以看到如本文一開始的那張圖一樣的效果了哩 ! ....

如果你家裡有單純的即時監視的需求,然後,不需要太複雜的錄影功能的話,阿舍是覺得可以考慮用 Raspberry Pi 搭配 WebCam 及阿舍上面介紹的方式來自己弄一個監視設備來監看,成本不高,架設也還容易哩 !  .... ^^=


[+] Ubuntu 指令新手會用到的35個技法 - 這是以阿舍的使用經驗編寫出來的電子書,三天內應該就看的完,學的起來哩 ! 有空就參考一下囉 ! ... ^^=

關於阿舍

好文不藏私,請多分享囉!! ^^=



5 則留言 :

ChihWei Chu 提到...

您好,想請問您的ipcam
是用哪款的呢?

Arthur Yu 提到...

Hello,

阿舍用的是WebCam , 不是 IP CAM , 型號是 C170 和 C525 .... ^^=

Han Major 提到...

感覺上羅技的WebCam都可以直接接上PI使用
可是PI的CPU用攝影機真的會頓頓的
但當監視器也夠了XD

Arthur Yu 提到...

Hello,

阿舍是在 Pi 上用 Mjpg-Streamer, 然後,遠端透過 Web 來監看的,阿舍沒在 Pi 上直接開 X Window 來監看,因為阿舍也覺得 Pi 的 CPU 是沒有很夠力哩 ! 但是,掛二台 WebCam 還 OK 哩 ! ... 供參囉 ! ... ^^=

匿名 提到...

您好:
想詢問近期我透過raspberry pi2 搭配 c170 使用mjpg-streamer 來做使用,但連上網頁後無法顯示出鏡頭所拍攝的畫面。鏡頭燈有亮起,試過firefox,手機內建瀏覽器皆無法觀看到畫面,請問您是否有遇上此類問題呢?謝謝!

張貼留言

如果留言後,發現留言不見了,這通常是因為 Goolge 把它認為是垃圾留言了,請用信件通知阿舍調整 ( ayubiz@gmail.com )。謝謝 !