本文來源電子發燒友社區,作者:zealsoft, 帖子地址:https://bbs.elecfans.com/jishu_2306609_1_1.html
感謝“電子發燒友網”和飛凌嵌入式公司提供了本次OKA40i-C開發板的評測機會。上次我們介紹了FFmpeg的測試情況,今天進行遠程監控的測試。
感謝“電子發燒友網”和飛凌嵌入式公司提供了本次OKA40i-C開發板的評測機會。上次我們介紹了FFmpeg的測試情況,今天進行遠程監控的測試。
一、開源軟件MJPG-Streamer
上次介紹了使用FFmpeg將USB攝像頭的視頻轉換為視頻流發送給PC機。今天來介紹另一個解決方案MJPG-Streamer。MJPG-Streamer的原理是將USB攝像頭采集的圖像以JPEG格式發送出去,然后持續更新圖片形成一個視頻流。它的優勢有兩個:一個是和瀏覽器的兼容性最好,可以輕松地在瀏覽器中顯示,而無需擔心瀏覽器是否支持Flash或流媒體協議;另外采用JPEG沒有前后幀的關聯,所以如果出現丟包只影響當前畫面,而不會像H.264那樣可能連續一段時間的馬賽克圖像。它的缺點是JPEG流的壓縮效率比較低,比H.264浪費帶寬。
二、Libjpeg庫的編譯
MJPG-Streamer要用到libjpeg,所以首先需要編譯libjpeg。首先訪問http://www.ijg.org/下載源代碼,我使用的是最新的9e版本。將源代碼解壓到jpeg-9e目錄后,在該命令下執行configure命令進行配置:
其中的host是指明所使用的編譯器,prefix是指定編譯后文件安裝的目錄。
然后執行下面的命令:
-
makemake install

命令執行完畢,就會在prefix所指定的目錄下生成4個目錄,其中include目錄包括所需要的頭文件,而lib目錄下包括庫文件。這些在后面會用到。
編譯后需要把libjpeg.so.9.5.0拷貝到開發板的/usr/lib目錄下,并建立一個指向該文件的軟連接libjpeg.so.9。
另外,開發板原來帶有libjpeg.so.8.0.2這個版本。如果不希望安裝更新版本,也可以在http://www.ijg.org/files/下載和板子對應的歷史版本。
三、MJPG-Streamer的編譯
MJPG-Streamer有兩個主要版本:
- http://sourceforge.net/projects/mjpg-streamer/,這個是原始版本,不過原作者已經放棄更新了。
- https://github.com/jacksonliam/mjpg-streamer,這個是后續更新的版本。
要在OKA40i-C上使用,只能使用sourceforge那個版本。因為github的版本雖然更新,但是它對內核的版本有要求,至少3.18以上,比較適合樹莓派這樣的平臺。OKA40i-C提供的內核版本是3.10,無法正確處理新版本的某些V4L2消息。另外,github版本采用CMake進行編譯,后面所介紹的編譯方法也不適用。
在https://sourceforge.net/p/mjpg-streamer/code/HEAD/tree/,點右上的“Download Snapshot”下載最新版的 mjpg-streamer-code-182。這里可以看到兩個mjpg-streamer目錄。一般使用mjpg-streamer-experimental這個版本,它支持的功能更多一些。

在編譯之前,需要先修改plugins/input_UVc目錄下的makefile文件,在其中加入如下兩行:

這兩行的作用就是編譯時能夠找到我們前面生成的libjpeg庫。
如果想修改MJPG-Streamer的插件設置,也可以修改mjpg-streamer-experimental目錄下的makefile:

在本次測試中用不到其他插件,所以就采用默認配置。
然后在命令行執行下面的命令就可以編譯了。

編譯成功后把mjpg_streamer和幾個so文件都拷貝到開發板上并正確設置好權限就可以運行了。
四、測試結果
在開發板的終端輸入如下命令:
- ./mjpg_streamer -i "input_testpicture.so"

如果使用USB攝像頭,需要使用input_uvc.so插件,在開發板的終端輸入命令:
- ./mjpg_streamer -i "input_uvc.so -r 800x600" -o "output_http.so"

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
飛凌
+關注
關注
0文章
135瀏覽量
16899
發布評論請先 登錄
相關推薦
熱點推薦
【飛凌嵌入式RV1126B開發板】+兩款開發板之比較
個接口并列的方式,而飛凌開發板則是采用疊層的方式,且有一組是使用Type C的接口方式。
此外為了便于程序調試,兩者均配置了Type C方式
發表于 03-05 23:32
【飛凌OK-MX9596-C開發板試用】②體驗WIFI、藍牙、音頻、視頻,為AI應用打下基礎
【飛凌OK-MX9596-C開發板試用】①開箱圖賞、跑分測試、yolo大模型三箭齊發 - 飛
發表于 10-21 18:17
【作品合集】飛凌嵌入式OK527N-C開發板測評
針對不同的功能做了深度優化,方便用戶二次開發的同時簡化用戶設計,為您的項目提供良好的評估及設計依據。
活動詳情地址:飛凌OK527N-C開發板
發表于 09-22 15:54
【飛凌T527N開發板試用】7寸RGB屏幕適配與TP驅動
Touchscreens input device support--->
再選中 Focaltech Touchscreen
然后重新編譯kernel。按照[【飛凌T527N開發板
發表于 08-15 18:06
RK3568開發板暗藏32位兼容開關?飛凌嵌入式帶你一鍵解鎖!
RK3568是一款64位處理器,飛凌嵌入式為其提供的交叉編譯器也是64位的,然而部分用戶可能需要在RK3568開發板上運行32位應用。本文將詳細闡述如何使用32位交叉編譯器,編譯出32位應用,并使其能夠在
【飛凌T527N開發板試用】飛凌T527N開發板開箱評測
很高興收到飛凌嵌入式申請的飛凌T527N開發板,板子的正反面如下圖所示:
可以看到,板子上面的資源非常的豐富,有CAN,485, SIM卡槽
發表于 07-04 11:43
【飛凌T527N開發板試用】開箱與開發板介紹視頻
【飛凌嵌入式OK527N-C開發板開箱介紹】 https://www.bilibili.com/video/BV1sfKSzmEtU/?share_source=copy_web&
發表于 06-26 09:43
5分鐘學會網絡服務搭建!飛凌i.MX9352開發板 + Linux 6.1實戰示例
本文就將以飛凌嵌入式OK-MX9352-C開發板(搭載了在工業物聯網領域廣泛應用的NXP i.MX9352處理器)為平臺,介紹如何在Linu
性能強悍!合眾HZ-RK3568開發板試用體驗
月19日 ? 評測數量: 10塊 ? 更多熱點文章閱讀 基于平頭哥TH1520芯片,潤開鴻HH-SCDAYU800A開發板免費試用 RISC-V開發板深度評測!頂級開發板免費
有獎丨米爾 NXP i.MX91開發板免費試用來啦
米爾與NXP合作發布的新品基于NXPi.MX91應用處理器的MYD-LMX91開發板免費試用名額來啦~~米爾提供了3套價值588元的MYD-LMX91開發板發起試用活動您不僅可以免費體
5分鐘學會網絡服務搭建,飛凌i.MX9352 + Linux 6.1實戰示例
本文將以飛凌嵌入式OK-MX9352-C開發板(搭載了在工業物聯網領域廣泛應用的NXP i.MX9352處理器)為平臺,介紹如何在Linux
明遠智睿SSD2351開發板:視頻監控領域的卓越之選
隨著安全防范意識的提高,視頻監控在各個領域得到了廣泛應用。明遠智睿SSD2351開發板憑借其出色的性能和特性,成為視頻監控領域的卓越之選,為
發表于 05-30 10:24
【飛凌OKA40i-C開發板試用體驗】遠程視頻監控
評論