0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

海思MPP系統(tǒng)概述

ebaina ? 來源:ebaina ? 作者:ebaina ? 2023-08-19 15:01 ? 次閱讀

1 系統(tǒng)概述

海思提供的媒體處理軟件平臺(tái)(Media Process Platform,簡(jiǎn)稱 MPP),可支持應(yīng)用軟件快速開發(fā)。該平臺(tái)對(duì)應(yīng)用軟件屏蔽了芯片相關(guān)的復(fù)雜的底層處理,并對(duì)應(yīng)用軟件直接提供MPI(MPP Program Interface)接口完成相應(yīng)功能。該平臺(tái)支持應(yīng)用軟件快速開發(fā)以下功能:輸入視頻捕獲、 H.265/H.264/JPEG 編碼、 H.265/H.264/JPEG 解碼、 視頻輸出顯示、視頻圖像前處理(包括去噪、增強(qiáng)、銳化)、 圖像拼接、 圖像幾何矯正、智能、音頻捕獲及輸出、音頻編解碼等功能。

1.1 系統(tǒng)架構(gòu)

wKgaomTgaG2AAerHAABQtSsEEZo410.png架構(gòu)

系統(tǒng)軟件架構(gòu)可以分為四層:

最底層是硬件驅(qū)動(dòng)層。

操作系統(tǒng)層;海思支持linuxliteos,此文只涉及l(fā)inux部分。

媒體層;此層是海思平臺(tái)軟件架構(gòu)的核心,海思平臺(tái)將媒體相關(guān)的功能都抽象到了這一層,如音視頻輸入輸出、isp圖像處理、編解碼等,最關(guān)鍵的是獨(dú)立的內(nèi)存管理機(jī)制,物理內(nèi)存、虛擬內(nèi)存都有獨(dú)立的機(jī)制進(jìn)行分配和回收,減少了與操作系統(tǒng)層的關(guān)聯(lián)。包含的軟件有各種媒體相關(guān)的驅(qū)動(dòng)、庫(kù)的支持,還有整套的媒體開發(fā)平臺(tái)。本文要介紹的MPP就是媒體軟件處理平臺(tái)。

最上層是應(yīng)用層。

1.2 處理流程

海思媒體處理平臺(tái)的主要內(nèi)部處理流程分為視頻輸入(VI)、視頻處理(VPSS)、視頻編碼(VENC)、 視頻解碼(VDEC)、 視頻輸出(VO)、視頻拼接(AVS)、音頻輸入(AI)、音頻輸出(AO)、音頻編碼(AENC)、音頻解碼(ADEC)、區(qū)域管理(REGION)等模塊。

wKgZomTgaJKAWpGuAAFMr0jLR6s274.png

VI 模塊捕獲視頻圖像,可對(duì)其做剪切、 去噪等處理,并輸出多路不同分辨率的圖像數(shù)據(jù)。

解碼模塊對(duì)編碼后的視頻碼流進(jìn)行解碼,并將解析后的圖像數(shù)據(jù)送 VPSS 進(jìn)行圖像處理, 再送 VO 顯示。可對(duì) H.265/H.264/JPEG 格式的視頻碼流進(jìn)行解碼。

VPSS 模塊接收 VI 和解碼模塊發(fā)送過來的圖像,可對(duì)圖像進(jìn)行圖像增強(qiáng)、銳化等處理,并實(shí)現(xiàn)同源輸出多路不同分辨率的圖像數(shù)據(jù)用于編碼、預(yù)覽或抓拍。

編碼模塊接收 VI 捕獲并經(jīng) VPSS 處理后輸出的圖像數(shù)據(jù),可疊加用戶通過 Region模塊設(shè)置的 OSD 圖像,然后按不同協(xié)議進(jìn)行編碼并輸出相應(yīng)碼流。

VO 模塊接收 VPSS 處理后的輸出圖像,可進(jìn)行播放控制等處理,最后按用戶配置的輸出協(xié)議輸出給外圍視頻設(shè)備。

上圖也包含很多典型的視頻流的處理流程。sensor負(fù)責(zé)采集圖像,是海思平臺(tái)的輸入,圖像經(jīng)過海思內(nèi)部VI、VPSS、VENC和VO后,經(jīng)由hdmi輸出到顯示屏上,sdk提供的sample_vio中有幾個(gè)case就是這個(gè)典型的流程,同時(shí)sample_vio也是最常用到的samle。

2 MPP部署

在一般的嵌入式開發(fā)中,只要將uboot,kernel,rootfs下載到開發(fā)板上,就可以進(jìn)行程序開發(fā)了。但是海思又進(jìn)一步把與多媒體相關(guān)的內(nèi)容整合到MPP平臺(tái)中,SDK中推薦使用mount nfs的方法先部署起mpp。

搭建nfs服務(wù)器,開發(fā)板作為nfs客戶端。

掛載nfs文件系統(tǒng)

mount -t nfs -o nolock -o tcp -o rsize=32768,wsize=32768 xx.xx.xx.xx:/your-nfs-path /mnt,然后就可以在/mnt目錄訪問nfs服務(wù)器上的文件。

加載驅(qū)動(dòng)
cd mpp/ko
./ load3519v100 -i -sensor0 imx334

運(yùn)行sample程序
cd mpp/sample /vio
./sample_vio 0 0

3 視頻輸入

視頻輸入單元 VI(Video Input),可以通過 MIPI Rx(包含 MIPI、LVDS、HiSPi、SLVS-EC)接口、BT.656/601、BT.1120 接口和 DC(Digital Camera)接收視頻數(shù)據(jù),存入指定的內(nèi)存區(qū)域。VI 內(nèi)嵌 ISP 圖像處理單元,可以直接對(duì)接外部原始數(shù)據(jù)(BAYER RGB 數(shù)據(jù)),VI 的功能框圖如下圖所示。 VI 分成兩個(gè)物理子模塊:捕獲子模塊 VICAP 和處理子模塊 VIPROC 組成。

wKgaomTgaKSAds8YAAA5t5pGowc525.png

海思SDK對(duì)VI的功能框架進(jìn)行了封裝,VI內(nèi)部結(jié)構(gòu)對(duì)于開發(fā)者來說是黑盒,并且黑盒內(nèi)部的代碼不進(jìn)行開源。黑盒外部進(jìn)行了軟件級(jí)的封裝,因此VI在軟件層次上劃分4個(gè)部分,輸入設(shè)備(DEV)、輸入 PIPE、物理通道(PHY_CHN)和擴(kuò)展通道(EXT_CHN),如下圖所示,開發(fā)者也只需要關(guān)注軟件架構(gòu)上的這四個(gè)層級(jí)即可。

wKgaomTgaLOAIq2ZAABXcCDZVHQ792.png

此處只針對(duì)VI進(jìn)行了講解,其他模塊也需要參考海思手冊(cè),此處不再一一寫出了。

4 開發(fā)

4.1 預(yù)覽與拍照

下圖是雙 pipe 離線模式拍照的數(shù)據(jù)通路,上面的pipe是preview通路,下面的pipe是capture通路,一般相機(jī)的通路都是如此,preview對(duì)圖像質(zhì)量要求略低,capture對(duì)圖像質(zhì)量要求高。當(dāng)然,此圖是海思平臺(tái)的雙pipe離線模式,還有在線模式、單pipe模式等,大體意思相近,不同模式的選擇需要根據(jù)芯片的處理能力和圖像的質(zhì)量需求進(jìn)行。

wKgZomTgaMGAWz81AAByk1SanMc110.png

4.2 新sensor開發(fā)

準(zhǔn)備工作

確認(rèn)主芯片規(guī)格。支持 Master 模式,支持的線性、WDR 接口模式,支持輸入頻率上限。

sensor datasheet。確認(rèn)圖像傳輸接口模式,輸出頻率。確認(rèn)曝光時(shí)間、增益如何設(shè)置,幀率如何修改。確認(rèn)在 WDR 模式下的以上兩項(xiàng)。

mipi/并口。確認(rèn)接口,并確認(rèn)時(shí)序。

initialize settings。獲取 Sensor Initialize Settings,一般至少要準(zhǔn)備最大規(guī)格和標(biāo)準(zhǔn)分辨率兩種序列。

內(nèi)核層

pinmux的配置

power的檢查

clock的配置

控制通路i2c/spi的檢查

應(yīng)用層
sensor_ctl.c,sensor的配置,需要結(jié)合datasheet完善initialize settings。

cmos.c,isp的基本功能。按如下函數(shù)順序進(jìn)行實(shí)現(xiàn)。

cmos_set_image_mode(), cmos_set_wdr_mode()。

sensor_global_init()。

sensor_init(), sensor_exit()。

cmos_get_isp_default(),cmos_get_isp_black_level()。

sensor點(diǎn)亮后還需要進(jìn)行ae功能的完善,自動(dòng)配置增益、曝光時(shí)間、幀率等。
之后還有白平衡的配置,配置完成后,顏色基本就正常了。
到此處,添加的新sensor基本就可用了,后續(xù)就是AF和各種圖像質(zhì)量調(diào)優(yōu)相關(guān)的工作了。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8249

    瀏覽量

    149939
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11123

    瀏覽量

    207888
  • JPEG
    +關(guān)注

    關(guān)注

    0

    文章

    65

    瀏覽量

    29892
  • 海思
    +關(guān)注

    關(guān)注

    41

    文章

    437

    瀏覽量

    115510
  • MPP
    MPP
    +關(guān)注

    關(guān)注

    0

    文章

    23

    瀏覽量

    10543
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    406.【科技狐】小米OV的自研芯片,離華為麒麟還有多遠(yuǎn)?

    華為cpu/soc
    小凡
    發(fā)布于 :2022年10月04日 19:11:10

    方案

    宙心科技目前作為目前在無人機(jī),運(yùn)動(dòng)相機(jī)等方向的方案推廣商,已不同往日。宙心科技目前已經(jīng)退出的成熟方案有,HI3516編碼板卡,HI3519V100編碼板卡,HI3519V101編碼板卡
    發(fā)表于 02-15 11:59

    3559開發(fā)板

    `創(chuàng)發(fā)布3559開發(fā)板,深圳市前海海芯創(chuàng)科技有限公司定位專注于為領(lǐng)先的消費(fèi)類電子產(chǎn)品解決方案商。與
    發(fā)表于 09-11 11:33

    AP6255在平臺(tái)下linux系統(tǒng)驅(qū)動(dòng)和fwnv

    分享AP6255在平臺(tái)下linux系統(tǒng)驅(qū)動(dòng)和fwnv
    發(fā)表于 03-08 10:11

    鴻蒙系統(tǒng)能被哪些芯片支持?的芯片如何購(gòu)買?

    請(qǐng)問下鴻蒙系統(tǒng)能被哪些芯片支持?的芯片如何購(gòu)買?
    發(fā)表于 09-25 09:31

    【HarmonyOS HiSpark Wi-Fi IoT HarmonyOS 智能家居套件試用 】鴻蒙教學(xué)系統(tǒng)的設(shè)計(jì)

    計(jì)劃①根據(jù)文檔,對(duì)硬件和鴻蒙軟件有個(gè)系統(tǒng)概述了解。②學(xué)習(xí)硬件擴(kuò)展應(yīng)用技術(shù),學(xué)習(xí)鴻蒙軟件
    發(fā)表于 09-25 10:04

    深圳回收系列芯片

    深圳回收系列芯片深圳高價(jià)回收系列芯片,東莞專業(yè)回收系列芯片,重慶高價(jià)收購(gòu)
    發(fā)表于 05-08 17:45

    芯片大量收購(gòu),高價(jià)回收芯片IC

    回收IC 收購(gòu)芯片芯片大量收購(gòu),高價(jià)回收
    發(fā)表于 08-30 18:59

    深圳專業(yè)回收IC 收購(gòu)芯片

    芯片大量收購(gòu),高價(jià)回收芯片IC ☆★★帝歐電子趙先生 135★★3012★★2202☆★★ QQ :8798-21252 (同步微信)【【
    發(fā)表于 09-26 17:55

    深圳高價(jià)回收系列芯片

    深圳回收系列芯片深圳高價(jià)回收系列芯片,東莞專業(yè)回收系列芯片,重慶高價(jià)收購(gòu)
    發(fā)表于 10-20 19:13

    重慶高價(jià)回收ic 重慶高價(jià)收購(gòu)ic

    重慶高價(jià)回收ic重慶高價(jià)收購(gòu)ic,深圳帝歐電子高價(jià)回收ic。帝歐趙生***QQ 18
    發(fā)表于 11-16 19:25

    芯片大量收購(gòu),高價(jià)回收IC

    芯片大量收購(gòu),高價(jià)回收IC ☆★★帝歐電子趙先生 135-3012-2202☆★★ QQ :8798-21252(同步微信)Hisilicon 電子芯片收購(gòu), 收購(gòu)Hisili
    發(fā)表于 12-28 17:04

    全志V85x MPP模塊概述以及編譯sample步驟

    /topic/3286/1.MPP 模塊概述MPP 系統(tǒng)控制模塊,根據(jù)芯片特性,完成硬件各個(gè)部件的復(fù)位、基本初始化工作,同時(shí)負(fù)責(zé)完成 MPP
    發(fā)表于 04-17 09:41

    35xx的MPP構(gòu)架和3798M的UNF構(gòu)架的詳細(xì)分析資料免費(fèi)下載

    本文通過分析文檔和代碼,把 SDK 的 MPI 和 UNF 構(gòu)架大概實(shí)現(xiàn)思想和構(gòu)架進(jìn)行了簡(jiǎn)略的分析。著重分析了內(nèi)存管理,底層功能如何實(shí)現(xiàn)。
    發(fā)表于 08-28 08:00 ?55次下載
    <b class='flag-5'>海</b><b class='flag-5'>思</b>35xx的<b class='flag-5'>MPP</b>構(gòu)架和3798M的UNF構(gòu)架的詳細(xì)分析資料免費(fèi)下載

    使用telnet來在線調(diào)試開發(fā)板

    MPP軟件開發(fā)時(shí),往往會(huì)遇到一些莫名奇妙的錯(cuò)誤或者運(yùn)行結(jié)果和預(yù)想不一致(往往是參數(shù)沒設(shè)對(duì)引起的)。這時(shí)候就需要在程序還在運(yùn)行...
    發(fā)表于 01-26 18:34 ?1次下載
    使用telnet來在線調(diào)試<b class='flag-5'>海</b><b class='flag-5'>思</b>開發(fā)板