HiMPP V4.0 媒体处理软件开发参考(Hi3559V200)(海思)

时间:2024-03-29 22:56:08

HiMPP V4.0 媒体处理软件开发参考(Hi3559V200)(海思)

1 系统概述

1.1 概述

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

1.2 系统架构

MPP 平台支持的典型的系统层次如图 1-1 所示,主要分为以下层次:

硬件层硬件层由 Hi35xx 芯片加上必要的外围器件构成。外围器件包括 Flash、DDR(Double Data-Rate)、视频 Sensor 或 AD、音频 AD 等。

操作系统层基于 Linux 或 Huawei LiteOS 的 OS 系统。

操作系统适配层提供操作系统系统调用基础函数,屏蔽操作系统差异,支持媒体处理平台运行在不同的操作系统上,或相同操作系统不同版本。

媒体处理平台基于操作系统适配层,控制芯片完成相应的媒体处理功能。它对应用层屏蔽了硬件处理细节,并为应用层提供 API 接口完成相应功能。

其他驱动除媒体处理平台外,海思为 Hi35xx 芯片的其他相关硬件处理单元提供了相应的驱动,包括 CIPHER、RTC 等驱动。

应用层基于海思媒体处理平台及其他驱动,由用户开发的应用软件系统。
HiMPP V4.0 媒体处理软件开发参考(Hi3559V200)(海思)

1.3 海思媒体处理平台架构

海思媒体处理平台的主要内部处理流程如图 1-2 所示,主要分为视频输入(VI)、视频处理(VPSS)、视频编码(VENC)、视频解码(VDEC)、视频输出(VO)、视频拼接(AVS)、音频输入(AI)、音频输出(AO)、音频编码(AENC)、音频解码(ADEC)、区域管理(REGION)等模块。主要的处理流程介绍如图 1-2:
HiMPP V4.0 媒体处理软件开发参考(Hi3559V200)(海思)
HiMPP V4.0 媒体处理软件开发参考(Hi3559V200)(海思)
HiMPP V4.0 媒体处理软件开发参考(Hi3559V200)(海思)

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

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

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

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

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

AVS 接收多路 VI 采集的图像,进行拼接合成全景图像。

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

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

HiMPP V4.0 媒体处理软件开发参考(Hi3559V200)(海思)