首先,了解MPP编码之前,先了解一下MPP的MPI接口。

1、MPI接口结构

MPP设计的MPI接口,下面的图都来自于官方参考文档:

MppMem:C库malloc内存的封装;

MppBuffer:dmabuf内存的封装;

MppPacket:一维缓存封装,可以从MppMem、MppBuffer生成,用来表示码流数据;

MppFrame:二维帧数据封装,可以从MppMem、MppBuffer生成,用来表示图像数据;

MppMeta、MppTask:输入输出用任务的高级组合接口,可以指定输入输出方式;

使用MppPacket和MppFrame就可以完成一般的编解码工作。

以视频编码为例,图像输入端把图像数据和大小交给MppFrame,通过encode_put_frame输入,在输出端通过encode_get_packet得到编码后的码流MppPacket,就完成了一帧数据的编码。

2、MPI接口使用

MPI是MPP提供给用户的接口,通过C结构里的函数指针方式提供给用户,用户可以通过MPP上下文结构MppCtx与MPI接口结构MppApi组合实现编解码器。

RKMPP库快速上手--(四)MPP编码入门相关推荐

  1. RKMPP库快速上手--(三)MPP解码入门

    一.RKMPP整个解码流程简单介绍一下: 1. 创建 MPP context 和 MPP api 接口. (注意,和RGA一样,多个线程多个实例需要多个独立的的context) ret = mpp_c ...

  2. RKMPP库快速上手--(二)MPP关键配置

    一.RKMPP编码配置总结: 为了方便配置功能,我们一般将Mpp配置的关键参数定义为结构体: struct MPP_ENC_DATA //编码所需要的数据 { // global flow contr ...

  3. RK3399Pro-硬件编解码器MPP库快速上手--(三)MPP编码关键代码讲解

    MPP关键配置(讲解在注释中) 代码链接:https://download.csdn.net/download/qq_39839546/67314289 已设置成了0积分下载,欢迎大家下载分享. 为了 ...

  4. python爬虫requests-Python爬虫---requests库快速上手

    一.requests库简介 requests是Python的一个HTTP相关的库 requests安装: pip install requests 二.GET请求 import requests #首 ...

  5. Eigen矩阵运算库快速上手

    目录 1. 配置 2. 初始化 2.1 Array类 2.2 Vector类 2.3 Matrix类 2.4 Vector赋值 2.5 高级初始化 3. 矩阵计算 3.1 矩阵基本计算 3.2 线性求 ...

  6. element-plus组件库快速上手教程

    前言 一般我们开发单页面应用(关于单页面应用是什么在本专栏的另一篇文章中有介绍)时,特别是针对和我一样打算走后端开发的同学,对于前端只需要有了解的程度就行了,但是平常做项目练手时经常会要自己写前端的东 ...

  7. 密码学C语言函数库——Miracl库快速上手中文指南(VC)

    一.简介 密码学学习.研究人员往往着重于理论研究,难以与实践直接挂钩,今天介绍一下国外著名密码学C语言函数库--Miracl库的使用方法. Miracl库的官方网站是http://www.shamus ...

  8. vs怎么配置c语言codemac,在Mac上使用vs-code快速上手c语言学习(入门文,老鸟退散)...

    jsf初学解决faces 中文输入乱码问题 中文乱码,貌似在java里很常见,请看简单代码: 很简单的faces win8 中使用第三方无线网卡出现无线连接受限解决办法 无线路由  无线网络模式基本设 ...

  9. Extjs4快速上手四——实现菜单

    原文 http://www.cnblogs.com/good-temper/archive/2013/04/16/3023263.html 这几天状态不佳,杂事太多有些烦心,这一次就少讲点吧. 本次将 ...

最新文章

  1. 数据结构与算法(7-1)图的存储(邻接矩阵、邻接表)
  2. 刘铁岩谈机器学习:随波逐流的太多,我们需要反思
  3. 基于jQuery实现富文本的拖拽和修改大小
  4. CentOS 7 firewall防火墙命令
  5. [git]git忽略文件
  6. Mail.Ru Cup 2018 Round 2
  7. 主仆模式的一点小理解
  8. SaltStack之state.sls
  9. 【预测模型】基于VMD结合Elman神经网络预测数据matlab代码
  10. ubuntu16.04安装tomcat7
  11. tensorflow pb ckpt pbtxt
  12. “没有灵魂”的AI作诗,有啥用?
  13. This Product is covered by one or more of the folloWing patents
  14. 远程控制-Virut蠕虫病毒(需专杀工具请三连并私信)
  15. Bios开启CPU虚拟化后,进不了系统,解决办法如下
  16. Python可视化:Pyecharts成长之路
  17. 【洛谷】P1488 肥猫的游戏(博弈论+全网最详细!!!)
  18. Weixin4j微信开发网页授权获取openid案例
  19. django数据库错误django. db. utils. OperationalError: ( 1044,‘Access denied for user’ erqueque’@' %’to‘dj’
  20. jks与keystore区别

热门文章

  1. C#之CAD二次开发(16) 表格操作
  2. Power Query数据清洗的常用操作
  3. 全球与中国汽车气动舒适座椅系统市场深度研究分析报告
  4. C#十二进制字符串转换成十进制整数
  5. 抓耳挠腮猜不出来的猜数字
  6. 学校校园学生信息管理系统 毕业设计毕业源码毕业论文开题报告参考(3)上课老师功能
  7. 白云学院计算机专业好不好,2021年广东白云学院专业排行榜,哪个专业就业比较好...
  8. Webpack打包后模块分析
  9. [HNOI2011]卡农
  10. 剪映电脑版超简单使用教程Mac