RK3588硬编解码MPP环境配置

1. 简介

瑞芯微提供的媒体处理软件平台(Media Process Platform,简称 MPP)是适用于瑞芯微芯片系列的

通用媒体处理软件平台。该平台对应用软件屏蔽了芯片相关的复杂底层处理,其目的是为了屏蔽不

同芯片的差异,为使用者提供统一的视频媒体处理接口(Media Process Interface,缩写 MPI)。MPP

提供的功能包括:

  • 视频解码

    H.265 / H.264 / H.263 / VP9 / VP8 / MPEG-4 / MPEG-2 / MPEG-1 / VC1 / MJPEG

  • 视频编码

    H.264 / VP8 / MJPEG

  • 视频处理

  • 视频拷贝,缩放,色彩空间转换,场视频解交织(Deinterlace)

2. 环境介绍

  • 硬件环境:

    ArmSoM-W3 RK3588开发板

  • 软件版本:

    OS:ArmSoM-W3 Debian11

3. RK3588 MPP环境配置

3.1. 下载安装rkmpp

  • 从github下载mpp包:

    bash 复制代码
    git clone https://github.com/rockchip-linux/mpp.git
  • 编译安装

    bash 复制代码
    cd mpp/build/linux/aarch64 
     
    ./make-Makefiles.bash
    
    make -j8
    
    sudo make install     

3.2. 安装完成:查看MPP目录结构

bash 复制代码
tree

/usr/local/
├── bin
│	├──  mpi_dec_test
│	├──  mpi_dec_mt_test
│	├──  mpi_dec_multi_test
│	├──  mpi_dec_nt_test
│	├──  mpi_enc_mt_test
│	├──  mpi_enc_test
│	├──  mpi_rc2_test
│	├──  mpp_info_test
│	├──  test_rknn_demo.sh
│	├──  test_rtsp.sh
│	└──  vpu_api_test
│
└── include/
│	└── rockchip
│			
└── lib
	├── librockchip_mpp.so
	├── librockchip_mpp.so.0
	├── librockchip_mpp.so.1
	├── librockchip_vpu.so
	├── librockchip_vpu.so.0
	├── librockchip_vpu.so.1
	└── pkgconfig
  • 查看mpp对应的库文件:

    bash 复制代码
    ls /usr/local/lib
    
    librockchip_mpp.so    librockchip_mpp.so.1  librockchip_vpu.so.0  pkgconfig
    librockchip_mpp.so.0  librockchip_vpu.so    librockchip_vpu.so.1  
  • 查看mpp对应的头文件:

    bash 复制代码
    ls /usr/local/include/rockchip/
    
    mpp_buffer.h   mpp_log.h      mpp_task.h         rk_vdec_cfg.h  rk_venc_ref.h
    mpp_compat.h   mpp_meta.h     rk_hdr_meta_com.h  rk_vdec_cmd.h  vpu_api.h
    mpp_err.h      mpp_packet.h   rk_mpi_cmd.h       rk_venc_cfg.h  vpu.h
    mpp_frame.h    mpp_rc_api.h   rk_mpi.h           rk_venc_cmd.h
    mpp_log_def.h  mpp_rc_defs.h  rk_type.h          rk_venc_rc.h
  • 查看mpp对应的bin文件:

    bash 复制代码
    ls /usr/local/bin
    
    mpi_dec_mt_test     mpi_dec_test     mpi_rc2_test       test_rtsp.sh
    mpi_dec_multi_test  mpi_enc_mt_test  mpp_info_test      vpu_api_test
    mpi_dec_nt_test     mpi_enc_test     test_rknn_demo.sh
  • 编解码器demo:

    bash 复制代码
    mpp_dec_test: 单线程解码器demo
    mpi_dec_mt_test:多线程解码器demo
    mpi_dec_multi_test:多实例解码器demo
    	
    mpp_enc_test:单线程编码器demo
    mpi_enc_multi_test:多实例编码器demo
  • 实用工具

    MPP 提供了一些单元测试用的工具程序,这种程序可以对软硬件平台以及 MPP 库本身进行测试

    bash 复制代码
    mpp_info_test:    读取和打印 MPP 库的版本信息
    mpp_buffer_test:  测试内核的内存分配器是否正常。
    mpp_mem_test:     测试C库的内存分配器是否正常。
    mpp_runtime_test: 测试一些软硬件运行时环境是否正常。
    mpp_platform_test:读取和测试芯片平台信息是否正常。

3.4. 我们可以运行mpp_dec_test来判断mpp安装情况:

bash 复制代码
mpp_dec_test
相关推荐
徐113 分钟前
自动化检测系统投资回报分析:思看科技如何助力企业降本增效
python·科技·物联网·自动化
龙仔72516 分钟前
n2n supernode Linux完整部署笔记,包含离线部署,
linux·运维·笔记·n2n·supernode
kaikaile199517 分钟前
基于MATLAB的视频行人检测与跟踪系统实现
开发语言·matlab·音视频
c++逐梦人17 分钟前
进程控制(2)进程程序替换
linux·操作系统·进程
2301_7722042823 分钟前
ARM——时钟系统
arm开发·单片机·嵌入式硬件
鱼香rose__42 分钟前
Linux基础概念知识
linux·网络
彭泽布衣1 小时前
gdb调试方法总结
linux·c语言·gdb·故障排查·段错误
KL's pig/猪头/爱心/猪头1 小时前
写一个rv1106的gpio输入驱动(带中断)
linux·驱动开发·rv1106
恶魔泡泡糖1 小时前
51单片机直流电机
单片机·嵌入式硬件·51单片机
Calebbbbb1 小时前
Windows 向 Vmware Ubuntu 传大文件校验不一致问题完整排查记录
linux·windows·ubuntu