前 言
本文主要介紹基于創(chuàng)龍科技TL3588-EVM評(píng)估板的視頻開發(fā)案例,適用開發(fā)環(huán)境如下。
Windows開發(fā)環(huán)境:Windows 7 64bit、Windows 10 64bit
虛擬機(jī):VMware16.2.5
開發(fā)環(huán)境:Ubuntu20.04.6 64bit
U-Boot:U-Boot-2017.09
Kernel:Linux-5.10.160
Debian:Debian11
LinuxSDK:LinuxSDK-[版本號(hào)](基于rk3588_linux_release_v1.2.1_20230720)
我司提供的視頻開發(fā)案例位于產(chǎn)品資料“4-軟件資料Demoplatform-demos”目錄下,本文檔對(duì)應(yīng)案例的測(cè)試模塊型號(hào)、測(cè)試結(jié)果說明如下表所示。
表 1
評(píng)估板文件系統(tǒng)默認(rèn)已支持GStreamer庫,可執(zhí)行如下命令查看GStreamer庫使用說明。
Target# gst-inspect-1.0 -h
圖 1
GStreamer是用來構(gòu)建流媒體應(yīng)用的開源多媒體框架,其目標(biāo)是要簡(jiǎn)化音視頻應(yīng)用程序的開發(fā),目前可被用于處理MP3、Ogg、MPEG1、MPEG2、AVI、Quicktime等多種格式的多媒體數(shù)據(jù)。
v4l2_capture案例
案例說明
本案例主要基于V4L2與DRM子系統(tǒng)實(shí)現(xiàn)MIPI攝像頭的視頻采集,并通過HDMI進(jìn)行顯示,驗(yàn)證CAMERA1~CAMERA6接口功能。
備注:當(dāng)前程序僅支持NV12格式數(shù)據(jù)采集。
程序流程圖如下圖所示。
圖 2
V4L2(Video For Linux Two)為Video ForLinux API的第二個(gè)版本,用于模擬無線電、視頻捕獲、輸出驅(qū)動(dòng)程序的內(nèi)核接口。
DRM(Direct Rendering Manager)用于管理顯示輸出和分配buffer。關(guān)于DRM子系統(tǒng)的詳細(xì)介紹可參考產(chǎn)品資料“6-開發(fā)參考資料其他參考文檔”目錄下的《brezillon-drm-kms》。
圖 3?DRM整體框架
案例測(cè)試
我司提供已配置的內(nèi)核鏡像文件boot-xxx-xxx.img,位于產(chǎn)品資料“4-軟件資料Demoplatform-demosv4l2_capturedtsbin”目錄下,其對(duì)應(yīng)關(guān)系如下表所示。
表 2
本次以替換boot-ov13850-cam2.img內(nèi)核鏡像為例,請(qǐng)將其拷貝至評(píng)估板文件系統(tǒng),執(zhí)行如下命令替換評(píng)估板內(nèi)核鏡像。如需測(cè)試其他模塊以及對(duì)應(yīng)的接口,請(qǐng)根據(jù)實(shí)際情況替換內(nèi)核鏡像。
備注:如需固化至eMMC,請(qǐng)將設(shè)備節(jié)點(diǎn)修改為"/dev/mmcblk0p3"。
Target# dd if=boot-ov13850-cam2.img of=/dev/mmcblk1p3
Target# sync
Target# reboot
圖 4
本次以測(cè)試創(chuàng)龍科技TL13850模塊為例,請(qǐng)將產(chǎn)品資料"4-軟件資料Demoplatform-demosiqfiles"目錄下的IQ參數(shù)文件ov13850_RK-CMK-8M-2-v1_CK8401.json拷貝至評(píng)估板文件系統(tǒng)"/etc/iqfiles/"目錄下,然后執(zhí)行如下命令,進(jìn)行轉(zhuǎn)換字符。
Target# dos2unix /etc/iqfiles/ov13850_RK-CMK-8M-2-v1_CK8401.json
Target# sync
Target# reboot
圖 5
備注:如需測(cè)試其他模塊,請(qǐng)將對(duì)應(yīng)IQ參數(shù)文件拷貝至評(píng)估板文件系統(tǒng)"/etc/iqfiles/"目錄下,進(jìn)行轉(zhuǎn)換字符,對(duì)應(yīng)IQ參數(shù)文件如下表所示。
表 3
TL13850模塊測(cè)試
請(qǐng)使用FFC軟排線將MIPI攝像頭模塊(創(chuàng)龍科技TL13850)連接至評(píng)估板CAMERA2接口,將評(píng)估板HDMI OUT接口連接至HDMI顯示屏。
注意:請(qǐng)使用FFC軟排線(30pin,間距0.5mm,同向),按照如下方法進(jìn)行硬件連接,并仔細(xì)核對(duì)評(píng)估板接口、FFC軟排線、攝像頭三者線序,否則可能燒毀攝像頭。
圖 6
執(zhí)行如下命令采集視頻,并輸出至顯示設(shè)備。
Target# ./v4l2_capture -M rockchip -i /dev/video-camera0 -S 1920x1080 -f NV12 -F NV12 -b 4 -o 208:71:1920x1080
圖 7
圖 8
Camera Module v2模塊測(cè)試
請(qǐng)使用FFC軟排線將MIPI攝像頭模塊(樹莓派Camera Module v2)連接至評(píng)估板CAMERA3接口,將評(píng)估板HDMI OUT接口連接至HDMI顯示屏。
注意:請(qǐng)使用FFC軟排線(15pin,間距1.0mm,反向),按照如下方法進(jìn)行硬件連接,并仔細(xì)核對(duì)評(píng)估板接口、FFC軟排線、攝像頭三者線序,否則可能燒毀攝像頭。
圖 9
執(zhí)行如下命令采集視頻,并輸出至顯示設(shè)備。
Target# ./v4l2_capture -M rockchip -i /dev/video-camera0 -S 1920x1080 -f NV12 -F NV12 -b 4 -o 208:71:1920x1080
圖 10
圖 11
案例編譯
設(shè)備樹編譯
將案例"dtssrc"目錄下tl3588-evm-imx219.dts、tl3588-evm-ov13850.dts設(shè)備樹拷貝至LinuxSDK源碼"kernel/arch/arm64/boot/dts/rockchip/"目錄下。
圖?12
請(qǐng)按照《Debian系統(tǒng)使用手冊(cè)》文檔Debian系統(tǒng)鏡像編譯、生成章節(jié),替換設(shè)備樹并重新編譯內(nèi)核,將生成的內(nèi)核鏡像文件拷貝至評(píng)估板文件系統(tǒng)進(jìn)行固化,評(píng)估板重啟后將會(huì)加載新的內(nèi)核鏡像文件。
程序編譯
將案例源碼拷貝至Ubuntu工作目錄,進(jìn)入src源碼目錄,執(zhí)行如下命令修改Makefile文件中的SDK_ROOT_PATH路徑,請(qǐng)根據(jù)實(shí)際情況修改為LinuxSDK源碼路徑。
Host# vi Makefile
圖 13
圖 14
執(zhí)行如下命令進(jìn)行案例編譯,編譯完成將會(huì)在相同目錄下生成可執(zhí)行程序。
Host# make
圖 15
案例解析
設(shè)備樹說明
我司提供的設(shè)備樹文件tl3588-evm-xxx.dts,位于產(chǎn)品資料“4-軟件資料Demoplatform-demosv4l2_capturedtssrc”目錄下。其對(duì)應(yīng)關(guān)系如下表所示。
表 4
如需使用相應(yīng)接口測(cè)試攝像頭模塊,可參考如下方法修改對(duì)應(yīng)設(shè)備樹文件。本次以CAMERA3接口為例,測(cè)試樹莓派Camera Module v2模塊。
將代碼"#define CAMERA3_ENABLE_IMX219 0"修改為:"#define CAMERA3_ENABLE_IMX219 1"即可。
圖 16?tl3588-evm-imx219.dts
關(guān)鍵代碼說明
(1)顯示初始化。
圖 17
(2)采集初始化。
圖 18
(3)DRM buffer申請(qǐng)與綁定。
圖 19
(4)圖像采集與顯示。
圖 20
審核編輯 黃宇
-
開發(fā)板
+關(guān)注
關(guān)注
26文章
6288瀏覽量
118015 -
RK3588
+關(guān)注
關(guān)注
8文章
555瀏覽量
7317
發(fā)布評(píng)論請(qǐng)先 登錄
創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—ISP圖像處理開發(fā)案例
創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—視頻開發(fā)案例(下)
創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—視頻圖像處理框架
創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—IgH?EtherCAT主站開發(fā)案例(下)
創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—IgH?EtherCAT主站開發(fā)案例(上)
創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—物聯(lián)網(wǎng)模塊開發(fā)案例
創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—調(diào)試工具安裝
迅為RK3588開發(fā)板Linux安卓麒麟瑞芯微國產(chǎn)工業(yè)AI人工智能
全國產(chǎn)!瑞芯微 RK3576 ARM 八核 2.2GHz 工業(yè)開發(fā)板—LVGL應(yīng)用開發(fā)案例
迅為iTOP-3588S開發(fā)板核心板引腳240PIN全部引出8GB內(nèi)存32GBEMMC存儲(chǔ)
迅為瑞芯微iTOP-3588開發(fā)板/核心板
迅為iTOP-RK3588S開發(fā)板/核心板瑞芯微RK3588S處理器6TOPS算力內(nèi)置NPU
iTOP-3588開發(fā)板采用瑞芯微RK3588處理器四核心架構(gòu)GPU內(nèi)置獨(dú)立NPU強(qiáng)大的視頻編解碼
全國產(chǎn)!RK3588(2.4GHz八核AI 6T NPU 8K麒麟)工業(yè)核心板規(guī)格書
創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—視頻開發(fā)案例(上)
評(píng)論