当前位置:网站首页 > 深度学习 > 正文

海思3559AV100 MPP学习2--MPP平台初识

        前面虽然按照教程能够顺利运行MPP中的sample,但是对于我来说只是点了几下鼠标,执行了几行命令,对于其内部的逻辑完全不懂,所以接下来就结合手册来研究学习一下海思的MPP,参考文档是海思提供的《HiMPP V4.0 媒体处理软件开发参考.pdf》。

MPP概述       

        文档中对于MPP的概述为:MPP,全称Media Process Platform,是海思提供的媒体处理软件平台,可支持应用软件快速开发。该平台对应用软件屏蔽了芯片相关的复杂的底层处理,并对应用软件直接提供 MPI(MPP Program Interface)接口完成相应功能。该平台支持应用软件快速开发以下功能:输入视频捕获、H.265/H.264/JPEG 编码、H.265/H.264/JPEG 解码、视频输出显 示、视频图像前处理(包括去噪、增强、锐化)、图像拼接、图像几何矫正、智能、音频捕获及输出、音频编解码等功能。

        可以看到,MPP的功能非常丰富,不过和我之前做算法不一样,这里只能调用开放的API,是看不到算法的,所以如果想要在海思开发板的基础上进行二次开发,就需要熟悉开放的API有哪些,参数是什么,数据的流动和缓存等。

MPP内部处理流程

        海思媒体处理平台内部处理流程图如下所示:

        可以看到主要分为视频输入(VI)、视频处理(VPSS)、视频编码(VENC)、视频解码(VDEC)、视频输出(VO)、视频拼接(AVS)、音频输入(AI)、音频输出(AO)、音频编码(AENC)、音频解码(ADEC)、区 域管理(REGION)等模块,几个主要模块的大致功能为:

VI模块:捕获视频图像,可对其做剪切、去噪等处理,并输出多路不同分辨率的图像数据。

VDEC模块:解码模块对编码后的视频码流进行解码,并将解析后的图像数据送 VPSS 进行图像处理,再送 VO 显示。可对 H.265/H.264/JPEG 格式的视频码流进行解码。

VPSS模块:接收 VI 和解码模块发送过来的图像,可对图像进行图像增强、锐化等处理,并实现同源输出多路不同分辨率的图像数据用于编码、预览或抓拍。

VENC模块:编码模块接收 VI 捕获并经 VPSS 处理后输出的图像数据,可叠加用户通过 Region
模块设置的 OSD 图像,然后按不同协议进行编码并输出相应码流。

VO模块:接收 VPSS 处理后的输出图像,可进行播放控制等处理,最后按用户配置的输出协议输出给外围视频设备。

AVS模块:接收多路VI采集的图像,进行拼接合成全景图像(这里的AVS是指“视频拼接子系统”,我之前一直以为是编解码的AVS标准)。

AI模块:捕获音频数据,然后AENC模块支持按多种音频协议对其进行编码,最后输出音频码流。

ADEC模块:用户从网络或外围存储设备获取的音频码流可直接送给ADEC模块,ADEC支持解码多种不同的音频格式码流,解码后数据送给AO模块即可播放声音。

        从视频编解码的角度来看,整个流程是sensor开始采集视频,然后交给VI做一些类似于预处理的工作,VI再将数据交给VPSS再处理一次,然后编码器接受VPSS的数据进行编码并生成码流,虽然VENC可以直接接受VI处理后的数据,但是一个完整的流程就是这样,后面的解码和音频等我这边就暂不研究了,不过从图中可以看到VDEC的输入是SD卡,后面可以参考一下官方例程是怎么从文件域拿数据的。

        祝大家平安健康。

到此这篇海思3559AV100 MPP学习2--MPP平台初识的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • STATA学习笔记:缺漏值的处理2024-11-24 15:45:07
  • 深度学习的进展_深度学习的进展2024-11-24 15:45:07
  • 【深度学习时间序列预测案例】零基础入门经典深度学习时间序列预测项目实战(附代码+数据集+原理介绍)2024-11-24 15:45:07
  • 人工智能——深度学习2024-11-24 15:45:07
  • 基于Pytorch深度学习的脑肿瘤分类识别2024-11-24 15:45:07
  • “黑客”入门学习之“单机游戏外挂原理与实现”_cheatengine什么原理2024-11-24 15:45:07
  • Linux学习笔记1---Windows上运行Linux2024-11-24 15:45:07
  • canvas学习笔记2024-11-24 15:45:07
  • webpack5学习与实战-(十二)-webpack模块与解析原理2024-11-24 15:45:07
  • webpack5学习与实战-(八)-配置打包后的文件名2024-11-24 15:45:07
  • 全屏图片