1. 方案簡介
本方案將演示如何利用EASY-EAI-PI2以及MIPI-CSI攝像頭制作一個(gè)【網(wǎng)絡(luò)攝像頭(IPCamera)】:兩路MIPI-CSI攝像頭分別單獨(dú)輸出兩路流。
1.1 接線示意圖
攝像頭與板卡連接:

板卡與局域網(wǎng)連接:


* 接線必須在斷電時(shí)進(jìn)行操作。
* 采用反向線連接IMX415攝像頭與Cmaera1接口。(注意:用錯(cuò)線會(huì)燒壞攝像頭或者核心板,因此在接線時(shí)務(wù)必要小心。)
* 接線端子卡扣與FPC線的藍(lán)色塑料標(biāo)識(shí)必須位于同一側(cè)。如下圖所示。

EASY EAI PI2默認(rèn)搭配IMX415單目攝像頭。同時(shí)配有一根0.5mm間距的40pin FPC反向線。
反向線:兩端的藍(lán)色標(biāo)識(shí)不在同一側(cè)面。
同向線:兩端的藍(lán)色標(biāo)識(shí)處于同一側(cè)面。

2. 快速上手
2.1 開發(fā)環(huán)境準(zhǔn)備
如果您初次閱讀此文檔,請(qǐng)閱讀《入門指南/開發(fā)環(huán)境準(zhǔn)備/Easy-Eai編譯環(huán)境準(zhǔn)備與更新》,并按照其相關(guān)的操作,進(jìn)行編譯環(huán)境的部署。
在PC端Ubuntu系統(tǒng)中執(zhí)行run腳本,進(jìn)入EASY-EAI編譯環(huán)境,具體如下所示。
cd ~/develop_environment ./run.sh 2204

2.2 源碼下載以及例程編譯
在EASY-EAI編譯環(huán)境下創(chuàng)建存放源碼倉庫的管理目錄:
cd /opt mkdir EASY-EAI-Toolkit cd EASY-EAI-Toolkit
通過git工具,在管理目錄內(nèi)克隆遠(yuǎn)程倉庫
git clone https://github.com/EASY-EAI/EASY-EAI-Toolkit-1126B.git

注:
* 此處可能會(huì)因網(wǎng)絡(luò)原因造成卡頓,請(qǐng)耐心等待。
* 如果實(shí)在要在gitHub網(wǎng)頁上下載,也要把整個(gè)倉庫下載下來,不能單獨(dú)下載本實(shí)例對(duì)應(yīng)的目錄。
進(jìn)入到對(duì)應(yīng)的例程目錄執(zhí)行編譯操作,具體命令如下所示:
cd EASY-EAI-Toolkit-1126B/Solutions/rtspIPCamera ./build.sh
注:
* 由于依賴庫部署在板卡上,因此交叉編譯過程中必須保持/mnt掛載。

2.3 例程運(yùn)行
通過串口調(diào)試或ssh調(diào)試,進(jìn)入板卡后臺(tái),定位到例程部署的位置,如下所示:
cd /userdata/Solu/rtspIPCamera

運(yùn)行例程命令如下所示。
./rtspIPCamera

可用【VLC】或【gst-launch-1.0】等rtspClient通過上述兩個(gè)url取流查看。
2.4 非本地rtsp拉流
如果需要使用另一臺(tái)計(jì)算機(jī)設(shè)備作為rtspClinet去拉流,則需要把127.0.0.1(本機(jī)IP)替換成rtspServer設(shè)備所在局域網(wǎng)的IP地址,具體操作如下。
首先通過ifconfig命令查看板卡的局域網(wǎng)IP地址。
sudo ifconfig

然后在另外一臺(tái)計(jì)算機(jī)開啟rtspClinet應(yīng)用(以VLC為例),填上URL進(jìn)行拉流。

3. 設(shè)計(jì)說明
3.1 總體邏輯框圖

3.2 factory邏輯

3.3 代碼組成
本開發(fā)實(shí)例相關(guān)的所有代碼,均位于EASY-EAI-Toolkit-1126B/Solutions/rtspIPCamera/中。其中:
總體邏輯位于:EASY-EAI-Toolkit-1126B/Solutions/rtspIPCamera/src/main.cpp
factory邏輯位于:EASY-EAI-Toolkit-1126B/Solutions/rtspIPCamera/src/appSource.cpp
攝像頭控制邏輯位于:EASY-EAI-Toolkit-1126B/Solutions/rtspIPCamera/src/camera/

3.4 調(diào)用關(guān)系

4. 開發(fā)指南
4.1 Toolkit倉庫介紹

4.2 示例文件&目錄結(jié)構(gòu)
4.2.1 開發(fā)實(shí)例介紹
每個(gè)開發(fā)實(shí)例就是一個(gè)獨(dú)立的項(xiàng)目,項(xiàng)目使用cmake構(gòu)建自動(dòng)編譯部署。一個(gè)最簡單的項(xiàng)目至少要包含以下元素:build.sh、CMakeLists.txt、main.c,如下所示。

具體介紹如下所示。

4.2.2 可拓展的目錄
可拓展的目錄是指:開發(fā)過程中增加某些功能模塊,功能代碼。增加模式分為兩種:
l 增加已編譯的第三方庫,在include、libs目錄內(nèi)添加頭文件和庫文件;
l 增加用戶自定義的功能模塊,推薦在src目錄內(nèi)增加;
具體情況如下所示,第三方模塊相關(guān)的文件由include/3rd_model/xxx.h、libs/3rd_model/xxx.a。自定義的功能模塊為src/mySrcCode、src/mySrcCode2。

4.3 CMakeLists.txt文件解析
4.3.1 編譯環(huán)境配置部分:
第一部分為配置部分,配置部分如下所示。(獲取當(dāng)前方案目錄、配置工具鏈、提取方案名稱):

配置信息如下所示。

4.3.2 easyeai-api配置部分
第二部分是引入我司的功能組件庫(針對(duì)當(dāng)前方案進(jìn)行:配置EASY EAI API頭文件目錄${XXX_INCLUDE_DIRS}、源碼文件目錄${XXX_SOURCE_DIRS}以及所依賴的庫參數(shù)${XXX_LIBS}):

配置信息如下所示。

4.3.3 第三方庫配置部分
第三部分配置第三方的庫(針對(duì)當(dāng)前方案進(jìn)行:配置第三方頭文件目錄、庫文件目錄、配置第三方庫鏈接參數(shù)以及配置源碼目錄):

配置信息如下所示。

例如添加個(gè)人庫的目錄組成方式如下所示。

aux_source_directory的修改方式為:
aux_source_directory(./src ./src/mySrcCode ./src/mySrcCode2 dir_srcs)
或
aux_source_directory(./src dir_srcs) aux_source_directory(./src/mySrcCode dir_srcs) aux_source_directory(./src/mySrcCode2 dir_srcs)
4.3.4 本方案配置部分
第四部分配置項(xiàng)目的編譯信息,內(nèi)容如下所示:

配置項(xiàng)如下所示。

4.4 build.sh編譯腳本:
4.4.1 路徑定位部分
第一部分用于提取目錄用于編譯操作,內(nèi)容如下所示:(進(jìn)入build.sh腳本所在目錄,并且提取當(dāng)前目錄絕對(duì)路徑,提取當(dāng)前目錄名稱)

4.4.2 清除編譯部分
第二部分清除操作,清除目錄為build、Release,內(nèi)容如下所示:(執(zhí)行build.sh腳本時(shí),帶入了參數(shù)“clear”,則清空編譯輸出)

4.4.3 編譯操作
第三部分,編譯直接調(diào)用cmake,內(nèi)容如下所示:(重新編譯,成部署目錄,并把資源自動(dòng)部署進(jìn)板卡)

-
人工智能
+關(guān)注
關(guān)注
1822文章
50630瀏覽量
268335 -
開發(fā)板
+關(guān)注
關(guān)注
26文章
6572瀏覽量
121534 -
瑞芯微
+關(guān)注
關(guān)注
27文章
931瀏覽量
54793 -
EASY-EAI靈眸科技
+關(guān)注
關(guān)注
4文章
156瀏覽量
3764 -
RV1126B
+關(guān)注
關(guān)注
0文章
152瀏覽量
302
發(fā)布評(píng)論請(qǐng)先 登錄
瑞芯微(EASY EAI)RV1126B 音頻輸入
瑞芯微(EASY EAI)RV1126B 音頻輸出
瑞芯微(EASY EAI)RV1126B 千兆以太網(wǎng)電路
瑞芯微RV1126B開發(fā)板(EASY-EAI-PI2) 主板簡介
瑞芯微RV1126B開發(fā)板(EASY-EAI-PI2) 核心板簡介
【EASY EAI Nano-TB(RV1126B)開發(fā)板試用】+初識(shí)篇
【EASY EAI Nano-TB(RV1126B)開發(fā)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-燈閃
【EASY EAI Nano-TB(RV1126B)開發(fā)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈項(xiàng)目
【EASY EAI Nano-TB(RV1126B)開發(fā)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈按鈕項(xiàng)目
【EASY EAI Nano-TB(RV1126B)開發(fā)板試用】+1、開箱上電
【EASY EAI Nano-TB(RV1126B)開發(fā)板試用】介紹、系統(tǒng)安裝
【飛凌嵌入式RV1126B開發(fā)板】+兩款開發(fā)板之比較
【飛凌嵌入式RV1126B開發(fā)板試用體驗(yàn)】初識(shí)飛凌嵌入式RV1126B開發(fā)板試
瑞芯微(EASY EAI)RV1126B ubuntu系統(tǒng)SDK源碼獲取
瑞芯微RV1126B開發(fā)板(EASY-EAI-PI2) 以太網(wǎng)口
評(píng)論