MPP-使用说明
1、介绍
MPP是瑞芯微提供的媒体处理软件平台,适用于瑞芯微芯片系列。它屏蔽了有关芯片的复杂底层处理,屏蔽了不同芯片的差异,为使用者提供了统一的视频媒体统一接口。
具体提供的功能:
视频编码:H264、MJPEG、VP8
视频解码:H265、H264、VP9、VP8、MJPEG、MPEG-4、MPEG-2、VC1
视频处理:视频拷贝、色彩空间转换等
2、系统架构

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:

-i:输入文件;
-o:输出文件;
-w:图像宽度(强制要求参数);
-h:图像高度(强制要求参数);
-f:输入文件类型;
-t:输出码流类型(强制要求参数);
-n:编码帧数;
解码器:
解码器为mpi_dec_test系列程序,包括单线程的mpi_dec_test,多线程的mpi_dec_mt_test,多实例的mpi_dec_multi_test。
直接运行mpi_dec_test:

-i:输入文件(强制要求参数);
-o:输出文件;
-w:图像宽度;
-h:图像高度;
-t:码流类型(强制要求参数);
-f:输出帧类型;
-n:输出帧数;
其它工具:
mpp_info_test:读取和打印MPP库的版本信息。
mpp_buffer_test:测试内核的内存分配器是否正常。
mpp_mem_test:测试C库的内存分配器是否正常。
mpp_runtime_test:测试一些软硬件运行时环境是否正常。
mpp_platform_test:读取和测试芯片平台信息是否正常。
MPP-使用说明的更多相关文章
- Hi3531 SDK 安装以及升级使用说明
Hi3531 SDK 安装以及升级使用说明 第一章 Hi3531_SDK_Vx.x.x.x版本升级操作说明 如果您是首次安装本SDK,请直接参看第2章. 第二章 首次安装SDK 1.Hi ...
- Hi3536DV100 SDK 安装以及升级使用说明
第一章 Hi3536DV100_SDK_Vx.x.x.x版本升级操作说明 如果您是首次安装本SDK,请直接参看第2章. 第二章 首次安装SDK1.Hi3536DV100 SDK包位置 在"H ...
- Atitit.项目修改补丁打包工具 使用说明
Atitit.项目修改补丁打包工具 使用说明 1.1. 打包工具已经在群里面.打包工具.bat1 1.2. 使用方法:放在项目主目录下,执行即可1 1.3. 打包工具的原理以及要打包的项目列表1 1. ...
- awk使用说明
原文地址:http://www.cnblogs.com/verrion/p/awk_usage.html Awk使用说明 运维必须掌握的三剑客工具:grep(文件内容过滤器),sed(数据流处理器), ...
- asp.net 读取导入的project(mpp)文件
公司项目有用到读取project文件(.mpp)并保存到指定数据库类似的功能. 查了一下大家总结的方法. 找到一哥们代码,初步判断可行,特此收藏. using System.IO; using Mic ...
- SMP、NUMA、MPP(Teradata)体系结构介绍
从系统架构来看,目前的商用服务器大体可以分为三类,即对称多处理器结构 (SMP : Symmetric Multi-Processor) ,非一致存储访问结构 (NUMA : Non-Uniform ...
- “我爱背单词”beta版发布与使用说明
我爱背单词BETA版本发布 第二轮迭代终于画上圆满句号,我们的“我爱背单词”beta版本已经发布. Beta版本说明 项目名称 我爱背单词 版本 Beta版 团队名称 北京航空航天大学计算机学院 拒 ...
- Oracle 中 union 和union all 的简单使用说明
1.刚刚工作不久,经常接触oracle,但是对oracle很多东西都不是很熟.今天我们来了解一下union和union all的简单使用说明.Union(union all): 指令的目的是将两个 S ...
- Map工具系列-02-数据迁移工具使用说明
所有cs端工具集成了一个工具面板 -打开(IE) Map工具系列-01-Map代码生成工具说明 Map工具系列-02-数据迁移工具使用说明 Map工具系列-03-代码生成BySQl工具使用说明 Map ...
- Map工具系列-03-代码生成BySQl工具使用说明
所有cs端工具集成了一个工具面板 -打开(IE) Map工具系列-01-Map代码生成工具说明 Map工具系列-02-数据迁移工具使用说明 Map工具系列-03-代码生成BySQl工具使用说明 Map ...
随机推荐
- ztre的使用入门
1.首先需要下载ztree插件, 2.把下载的插件中的js和css放到项目中去(img文件默认放到css文件下方,如果把img文件放到其他地方,加载出来的树将没有默认图标(文件夹图标)和节点前的展开闭 ...
- 小程序开发之图片转Base64(C#、.et)
小程序页面代码因为某些人力不可控的代码丢失了,这里简单说明一下 调用小程序APIwx.chooseImage(OBJECT)选择相册或拍摄照片,会返回 tempFilePaths,之后通过wx.upl ...
- 在阿里云的CentOS环境中安装配置MySQL、JDK、Maven
Welcome to Alibaba Cloud Elastic Compute Service ! [root@izbp19stm1x1k2io1e7r3tz ~]# rpm -Uvh http:/ ...
- RabbitMQ (五)主题(Topic)
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37706355 上一篇博客中,我们进步改良了我们的日志系统.我们使用direct类 ...
- Java面试题之对static的理解
1.静态变量 类型说明符是static.2.静态变量属于静态存储方式,其存储空间为内存中的静态数据区(在 静态存储区内分配存储单元),该区域中的数据在整个程序的运行期间一直占用这些存储空间(在程序整个 ...
- 关于 行高lineheight的概念及与Vertical-align、内容框、基线等的关系
1.关于行高 行高:顾名思意指一行文字的高度.具体来说是指两行文字间基线之间的距离,他也是底线和顶线之间距离 (1)内容区
- 【构造】UVa 11387 The 3-Regular Graph
Description 输入n,构造一个n个点的无向图,使得每个点的度数都为3.不能有重边和自环,输出图或确定无解. Solution 如果n为奇数,奇数*3=奇数,度数为奇,必无解. 考虑我们怎么构 ...
- bzoj 3195 奇怪的道路 状压dp
看范围,状压没毛病 但是如果随便连的话给开1<<16,乘上n,m就爆了 所以规定转移时只向回连边 于是想状态数组:f[i][j]表示到i这里i前K位的状态为j(表示奇偶) 发现有条数限制, ...
- React组件设计
React组件设计 组件分类 展示组件和容器组件 展示组件 容器组件 关注事物的展示 关注事物如何工作 可能包含展示和容器组件,并且一般会有DOM标签和css样式 可能包含展示和容器组件,并且不会有D ...
- Docker最全教程——Redis容器化以及排行榜实战(十三)
前言 容器教程的路还很长,笔者尽量根据实践来不断地完善.由于在编写的过程中还会有完善和补充,后续可能会以番外来补充. 接下来会分享TeamCity.树莓派等内容,节奏可能会有点跳脱. 另外,长沙.NE ...