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包:

    git clone https://github.com/rockchip-linux/mpp.git
    
  • 编译安装

    cd mpp/build/linux/aarch64 ./make-Makefiles.bashmake -j8sudo make install     
    

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

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对应的库文件:

    ls /usr/local/liblibrockchip_mpp.so    librockchip_mpp.so.1  librockchip_vpu.so.0  pkgconfig
    librockchip_mpp.so.0  librockchip_vpu.so    librockchip_vpu.so.1  
    
  • 查看mpp对应的头文件:

    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文件:

    ls /usr/local/binmpi_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:

    mpp_dec_test: 单线程解码器demo
    mpi_dec_mt_test:多线程解码器demo
    mpi_dec_multi_test:多实例解码器demompp_enc_test:单线程编码器demo
    mpi_enc_multi_test:多实例编码器demo
    
  • 实用工具
    MPP 提供了一些单元测试用的工具程序,这种程序可以对软硬件平台以及 MPP 库本身进行测试

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

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

mpp_dec_test

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/217562.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

css给盒子写四个角

如图:之前一直用定位 现在发现可以用css写 background: linear-gradient(to top, #306eef, #306eef) left top no-repeat, /*上左*/ linear-gradient(to right, #306eef, #386eef) left top no-repeat, /*左上*/ linear-gradient(to left, #386eef, #306eef) righ…

Linux网络——网络层

目录 一.IP协议(IPv4) 二.子网划分 三.特殊的IP地址 四.IP地址的数量限制 五.私有IP地址和公网IP地址 六.路由 七.分片 一.IP协议(IPv4) IP协议:提供一种能力使得数据从一个主机发送到另一个主机的能力。 TCP协…

工业级 S25HS01GTDPBHV030 NOR闪存,L9305EP汽车级驱动器IC,LMK03318RHSR时钟发生器,PLL(中文资料)

一、工业级 S25HS01GTDPBHV030 Semper™ NOR闪存 S25HS01GT SEMPER™ NOR Flash闪存系列是英飞凌高性能、安全而可靠的 NOR Flash解决方案。 它集成了适用于汽车、工业、通信等广泛应用的关键安全功能。 凭借 SEMPER™ NOR Flash闪存,英飞凌推出了业界首款符合 ASI…

ArcGis如何用点连线?

这里指的是根据已有坐标点手动连线,类似于mapgis中的“用点连线”,线的每个拐点是可以自动捕捉到坐标点的,比直接画精确。 我也相信这么强大的软件一定可以实现类似于比我的软件上坐标时自动生成的线,但是目前我还没接触到那里&a…

MIPI 打怪升级之DSI篇

MIPI 打怪升级之DSI篇 目录 1 Overview2 DSI Mode 2.1 Video 模式2.2 Command 模式3 DSI Physical Layer 3.1 数据流控3.2 双向性3.3 Video Mode Interfaces3.4 Command Mode Interfaces3.5 Clock4 多通道管理 4.1 通道数匹配4.2 线上数据分布5 DSI 协议 5.1 包格式 5.1.1 短包…

模拟退火算法应用——求解一元函数的最小值

仅作自己学习使用 一、问题 需求: 计算函数 的极小值,其中个体x的维数n10,即x(x1,x2,…,x10),其中每一个分量xi均需在[-20,20]内。因此可以知道,这个函数只有一个极小值点x (0,0,…,0),且其极小值是0&…

Spring - Mybatis-设计模式总结

Mybatis-设计模式总结 1、Builder模式 2、工厂模式 3、单例模式 4、代理模式 5、组合模式 6、模板方法模式 7、适配器模式 8、装饰者模式 9、迭代器模式 虽然我们都知道有26个设计模式,但是大多停留在概念层面,真实开发中很少遇到,…

流量分析-PhishingEmail_WriteUp

一、题目问题 问题1:黑客的email名称 问题2:黑客向几人发送了钓鱼邮件 问题3:黑客传输的木马文件名 问题4:下载并运行了木马文件的人的email名称和ip地址,用“-”连接 问题5:黑客用于反弹shell的主机i…

YOLOv8 训练自己的分割数据集

之前写过一篇 使用YOLOv8训练自己的【目标检测】数据集-【收集数据集】-【标注数据集】-【划分数据集】-【配置训练环境】-【训练模型】-【评估模型】-【导出模型】,里面带大家整个流程走过一遍了, 这篇文章我们来介绍如何使用 YOLOv8 训练分割数据集&a…

JAVA小游戏“简易版王者荣耀”

第一步是创建项目 项目名自拟 第二部创建个包名 来规范class 然后是创建类 GameFrame 运行类 package com.sxt;import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; im…

Leetcode—55.跳跃游戏【中等】

2023每日刷题&#xff08;四十&#xff09; Leetcode—55.跳跃游戏 贪心法实现代码 #define MAX(a, b) ((a > b)? (a): (b))bool canJump(int* nums, int numsSize) {int k 0;for(int i 0; i < numsSize; i) {if(i > k) {return false;}k MAX(k, i nums[i]);}r…

借助 XEOS V6, 农牧龙头企业实现原有存储的高效在线替换

面对旧有存储系统的应用不足&#xff0c;某大型现代农牧龙头企业采用了星辰天合的对象存储 XEOS V6 方案&#xff0c; 该方案以其卓越的技术架构和同城双活异地灾备的解决方案完整性&#xff0c;在无缝高效完成系统替换的同时&#xff0c;可以极大地提升系统的灵活性和业务的连…