HI3556V200 Linux+Liteos双系统学习(2)----SDK简介

文章目录

  • 1 SDK目录
  • 2 目录简介
    • 2.1 amp
      • 2.1.1 drv
      • 2.1.2 hisyslink
      • 2.1.3 mpp
      • 2.1.4 osal
    • 2.2 build
    • 2.3 configs
    • 2.4 middleware
      • 2.4.1 ndk部分
      • 2.4.2 业务组件部分
    • 2.5 osdrv
      • 2.5.1 components
      • 2.5.2 opensource
      • 2.5.3 platform
      • 2.5.4 rootfs_scripts
      • 2.5.5 tools
    • 2.6 pqtool
    • 2.7 reference

HI3556和我们常用的HI3518E的SDK结构不太一样。所以简单介绍下SDK相关的目录。

1 SDK目录

HI3556V200 Linux+Liteos双系统学习(2)----SDK简介_第1张图片

2 目录简介

2.1 amp

amp目录主要分为Liteos和Linux两个目录,每个目录下分别有下面四个目录。

2.1.1 drv

该目录下主要包含了芯片以及板级相关的驱动。

2.1.2 hisyslink

此目录下包含了双系统之间通信相关的代码。包含datafifo和ipcmsg两个目录。datafifo主要用于双系统之间大数据传输,比如视频流数据。ipcmsg适用于双系统之间小数据通信,比如音频数据(几百个字节)、信令交互等。

2.1.3 mpp

此目录主要提供媒体服务驱动和相关库。

2.1.4 osal

操作系统适配组件。

2.2 build

SDK编译相关的一些配置。

2.3 configs

SDK全局配置参数文件,里面包含了同一SOC不同的软硬件配置(flash/sensor/内存/外设等)的配置文件,编译SDK时候可以根据设备进行修改。

2.4 middleware

此目录主要包含两部分。

2.4.1 ndk部分

此部分主要是基于MPP中的MPI部分,对MPI部分的接口做进一步的抽象和封装,形成新的接口,称为MAPI。这样封装的好处是,只需要简单的参数设置,就可以媲美以前的MPI繁杂的接口设置,简化了使用流程。另外,这个MAPI也支持多CPU双系统方案,减小了开发难度。

2.4.2 业务组件部分

此部分主要是针对运行DV或者行车记录仪场景的核心功能,提供了一些中间件或者说模块,供上层应用进行调用。
大致包含以下模块:
录像模块:提供基本的录像功能;
文件管理模块:提供运动DV和行车场景下的文件管理功能;
文件封装模块:提供一些文件封装功能,MP4/DNG/TS/EXIF/XMP等;
网络点播模块:主要是RTSP直播流部分;
HiGUI模块:UI相关;
本地文件回放模块:实现本地文件回放功能。

2.5 osdrv

osdrv 目录主要提供设备系统相关代码,包括 Bootloader、OS、Rootfs,关键Driver,工具等。

2.5.1 components

包含双系统之间通信(IPCM)相关的源码。
主要包含以下三个方面:
ipcm:双系统之间数据传输相关;
virt_tty:虚拟调试终端相关;
sharefs:共享文件系统相关。

2.5.2 opensource

内核、uboot、busybox源码路径。

2.5.3 platform

Liteos源码。

2.5.4 rootfs_scripts

文件系统源码。

2.5.5 tools

一些常用的工具源码。

2.6 pqtool

图像调优相关。

2.7 reference

此部分主要提供了产品层面的一些参考组件,方便客户基于这些组件,根据需求进行裁剪,快速开发。
主要提供了两个产品级的参考组件:
action camera:运动相机类产品;
dash camera:行车记录仪(后视镜)类产品;

你可能感兴趣的:(HI3556V200)