天天看點

MPP-使用說明

1、介紹

MPP是瑞芯微提供的媒體處理軟體平台,适用于瑞芯微晶片系列。它屏蔽了有關晶片的複雜底層處理,屏蔽了不同晶片的差異,為使用者提供了統一的視訊媒體統一接口。

具體提供的功能:

視訊編碼:H264、MJPEG、VP8

視訊解碼:H265、H264、VP9、VP8、MJPEG、MPEG-4、MPEG-2、VC1

視訊處理:視訊拷貝、色彩空間轉換等

2、系統架構

MPP-使用說明

Hardware:硬體層,視訊編解碼硬體加速子產品;

Kernel driver:核心驅動層,Linux核心的編碼器硬體驅動裝置;

MPP層:MPP層屏蔽了不同作業系統和不同晶片平台的差異,為使用者提供統一的MPI接口,包括MPI子產品,OSAL子產品,NAL子產品以及編解碼子產品(video decoder、video encoder)、視訊處理子產品(video process);

作業系統層:MPP的運作平台;

應用層:MPP層通過MPI對接各種中間件軟體,如ffmpeg、gstreamer;

3、編譯安裝

源代碼下載下傳位址:https://github.com/rockchip-linux/mpp

下載下傳指令:git clone -b release https://github.com/rockchip-linux/mpp.git

MPP源代碼編譯腳本為cmake,建議使用2.8.12。首先配置build/linux/arm/目錄下arm.linux.cross.cmake裡的工具鍊,再運作make-Makefiles.bash腳本,通過cmake生成Makefile,最後make即可。

4、使用測試

編碼器:

編碼器demo為mpi_enc_test系列程式,包括單線程mpi_enc_test,多執行個體mpi_enc_multi_test。

進入到mpp/test檔案夾,直接運作mpi_enc_test:

MPP-使用說明

-i:輸入檔案;

-o:輸出檔案;

-w:圖像寬度(強制要求參數);

-h:圖像高度(強制要求參數);

-f:輸入檔案類型;

-t:輸出碼流類型(強制要求參數);

-n:編碼幀數;

解碼器:

解碼器為mpi_dec_test系列程式,包括單線程的mpi_dec_test,多線程的mpi_dec_mt_test,多執行個體的mpi_dec_multi_test。

直接運作mpi_dec_test:

MPP-使用說明

-i:輸入檔案(強制要求參數);

-o:輸出檔案;

-w:圖像寬度;

-h:圖像高度;

-t:碼流類型(強制要求參數);

-f:輸出幀類型;

-n:輸出幀數;

其它工具:

mpp_info_test:讀取和列印MPP庫的版本資訊。

mpp_buffer_test:測試核心的記憶體配置設定器是否正常。

mpp_mem_test:測試C庫的記憶體配置設定器是否正常。

mpp_runtime_test:測試一些軟硬體運作時環境是否正常。

mpp_platform_test:讀取和測試晶片平台資訊是否正常。