第二季2:/package/mpp/sample的总体分析
生活随笔
收集整理的這篇文章主要介紹了
第二季2:/package/mpp/sample的总体分析
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1、sample的整體架構(gòu)
(1)sample其實(shí)有很多例程。
- 將sample文件夾(+同層目錄的include文件夾)導(dǎo)入SI后,搜索main時(shí)發(fā)現(xiàn)很多main函數(shù)。
- 每一個(gè)例程面向一個(gè)典型應(yīng)用,而common是通用性主體函數(shù)。
- 我們只分析venc(視頻編解碼)。
(2)基本的架構(gòu)
- venc中的main調(diào)用venc中的功能函數(shù),再調(diào)用common中的功能函數(shù),再調(diào)用mpp中的API(在上層目錄ko、lib中),再調(diào)用HI3518E內(nèi)部的硬件單元。
(3)sample的配置和編譯,重點(diǎn)注意很多環(huán)境變量,目錄結(jié)構(gòu)不要亂動(dòng)。
- 在每個(gè)例程下輸入make可以進(jìn)行編譯,但要注意上圖中Makefile.param的參數(shù)設(shè)置。見(jiàn)第一季8:三、2的描述。
2、sample代碼學(xué)習(xí)的關(guān)鍵
(1)理解基礎(chǔ)概念,譬如圖像采集原理、模擬數(shù)字、通道、綁定等等。
(2)從宏觀上理解整個(gè)視頻采集、內(nèi)部傳遞、處理、編碼輸出、網(wǎng)絡(luò)傳輸?shù)鹊倪^(guò)程。
(3)反復(fù)看代碼,熟才能生巧,才能幫助理解整個(gè)代碼。
(4)查閱mpp手冊(cè),熟悉海思這一套API的規(guī)矩和一般用法。
3、sample_venc的大體分析
(1)從main入手,main的傳參分析?
- 我們?cè)趫?zhí)行./sample_venc index時(shí)(這里的index可以是0~5或者缺省),不同的index情形對(duì)應(yīng)main函數(shù)的參數(shù)的不同形式。因此main函數(shù)里面對(duì)參數(shù)的形式先進(jìn)行判斷再跳轉(zhuǎn)到不同函數(shù)。
- 這里重點(diǎn)分析case '0',即重點(diǎn)研究SAMPLE_VENC_1080P_CLASSIC()函數(shù),因?yàn)橹饕芯緼D->VI->VPSS->VENC->h264/h265這條主線。
?(2)幾個(gè)基本概念
- 視頻編碼規(guī)范標(biāo)準(zhǔn):H.264,H.265,MJPEG
- 視頻分辨率(清晰度):1080P、720P、VGA、D1
- 幀率:fps(frame per second)。
總結(jié)
以上是生活随笔為你收集整理的第二季2:/package/mpp/sample的总体分析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Java对接某地联通API接口02---
- 下一篇: 2022 XbotPark(冬季)科创训