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简介
文章图片

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 【HI3556V200 Linux+Liteos双系统学习(2)----SDK简介】此部分主要提供了产品层面的一些参考组件,方便客户基于这些组件,根据需求进行裁剪,快速开发。
主要提供了两个产品级的参考组件:
action camera:运动相机类产品;
dash camera:行车记录仪(后视镜)类产品;

    推荐阅读