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 ...
随机推荐
- bugku login2 writeup 不使用vps的方法
0x00前言 这个题是sql注入与命令执行相结合的一个题,思路有两个: 一.:sql注入登录web系统,命令执行反弹公网IP监听端口(需要vps),此种方法详见链接:http://www.bugku. ...
- jsp页面日期格式不正确
第一种: 如果是从数据库获取的时间(数据库中日期格式是乱的)可以在数据库取数据时 进行格式化 例如 ;TO_CHAR(SYSDATE,'YYYY-MM-DD') 第二种: 在数据库取出数据后 ...
- 跨域cors方法(jsonp,document.domain,document.name)及iframe性质
这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被 ...
- Ubuntu 命令手册
提示:命令太多,查找的时候请用Shift+F. 目录 • 1. 前言 • 2 安装升级 • 2.1 查看软件 xxx 安装内容 • 2.2 查找软件库中的软件 • 2.3 显示系统安装包的统计信息 • ...
- onConfigurationChanged方法的使用
在日常生活中,手机会有很多种配置放生改变的情况,当然,有些时候需要监听他们并对他们进行处理,这就涉及到了onConfiguration方法的使用,我大致说一下,这个方法需要发生在屏幕切换横竖屏,或者选 ...
- 一个bug分析 ----------换个角度,有另外一个天地
有个接口是按修改时间(updated_time)排序的 优化后,有人反馈接口的返回值有问题 查了一下,反馈的数据是推荐过的(推荐操作是会更新updated_time的). 然后就认为是有人进行了推荐操 ...
- difference between collection and association mapping in mybatis 3
Mybatis处理“一对多”的关系时,需要用到associasion元素.处理”多对一“用collection元素来实现(这两个元素在之前mapper文件中提到过). 本例子中,假设一名User可以有 ...
- CentOS6.*安装gitolite
http://www.kankanews.com/ICkengine/archives/64748.shtml 2人收藏此文章, 发表于4小时前(2013-10-22 16:12) , 已有26次阅读 ...
- 让Virtualbox复制出的虚拟机联网
http://www.williamsang.com/archives/215.html vi /etc/udev/rules.d/70-persistent-net.rules 注释掉eth0的相关 ...
- com.mysql.jdbc.Driver 和 com.mysql.cj.jdbc.Driver的区别 serverTimezone设定
转自: http://blog.csdn.net/superdangbo/article/details/78732700 com.mysql.jdbc.Driver 和 com.mysql.cj.j ...