图形转换工具

待完善事项

  • 视频转换自研eZip压缩编码格式功能添加

  • 图片编辑、视频编辑功能完善

  • 开放更多专业参数接口并提供详细描述

  • 工具UI界面根据大家意见进行优化

工具简介

在HMI类应用开发中,会用到大量图片和视频素材,在思澈芯片平台上,处理图片素材会有几个方面:

  • 对图片基本处理,包括格式转换、压缩、分辨率变换

  • 图片转换为芯片需要专用格式(eZip)

  • 将最终素材烧录到平台存储器中(FLASH或SD卡等)

本工具旨在将这些处理集中在一起,方便用户开发,提高效率。工具主要实现如下几点功能:

  • 常用图片格式(PNG/JPEG/WebP/AVIF等)的转换、size调整、压缩功能

  • 常用视频格式(MP4/AVI/MJPEG等)的转换、基本参数调整、序列帧抽取等功能

  • 将GIF/PNG/APNG等格式图片转换成思澈芯片专用格式,即eZip(静图)或eZip-A(动画)

  • 提供单独图片与视频的处理,以及批量化图片和视频处理功能

工具下载

点击下载 GraphicsTool工具包

工具及平台方案要求

本工具设计目的主要是为思澈开发平台资源转换提供便利,平台方案和工具结合使用有如下要求:

  • 芯片软件系统及基本资源放在NOR FLASH中,可通过思澈下载工具下载后直接运行

  • 客户新加资源放在SD卡中,解决NOR FLASH空间限制

  • SD卡上有固定名称的目录结构,包括:

    • ebook:电子书文件夹

    • music:音乐MP3文件夹

    • dynamic_app:可安装动态应用文件夹

    • dynamic_wf:可安装动态表盘文件夹

    • ota:系统固件升级文件夹,可放置多个文件选择其中一个升级

    • photo:照片文件夹

    • video:视频文件夹

    • startuplogo:可定制开关机动画文件夹

    通过工具可以创建这些基本目录结构,用户把资源放入对应路径后经过工具转换,输出的文件再拷贝到SD卡中对应目录下使用。

  • ota升级包在使用思澈编译工具编译系统代码时自动生成,放入ota文件夹中即可使用

工具使用模式

重要

本工具提供专用模式普通模式,针对不同的使用者提供便利。

  • 专用模式:针对下游客户的日常使用(可能是非专业用户),基于发布的芯片平台,只提供有限的经充分优化测试的配置,避免客户因为不熟悉错误配置带来意想不到的问题,减少后续支持的复杂度。这种情模式下,MP4、MJPEG、eZip等压缩方式的视频文件的后缀会统一为xxx.mp4。

  • 普通模式:该模式开放图片/视频处理的常用参数,具有更多的配置灵活性和信息量。开发者模式主要用于思澈内部,对图片/视频处理熟悉的下游客户也可酌情使用。该模式为方便日常开发,会有一些特殊的格式约束,例如MJPEG文件会以xxx.240x320.mjpeg.mp4方式出现,以体现文件配置的具体信息,但是不能保证生成的文件都能有效解码。

图片转换

基本功能

本工具提供常用图片格式之间的相互转换,包括PNG/JPG/WebP/AVIF等,可调整图片尺寸以及图片质量等参数。在思澈平台上,一般的流程是将其他格式图片按照所需分辨率转换成PNG格式,再进一步从PNG通过工具转换成eZip格式供芯片使用。

PNG/GIF/APNG–>eZip

eZip是思澈科技自行研发的无损压缩格式,它既可以被用于图形格式的压缩(压缩功能类似于PNG,支持透明度,压缩比略高于PNG),也可以被用于通用的文件压缩。本工具支持将PNG/GIF/APNG格式的图形文件转换为思澈平台使用的eZip格式。

视频转换

基本功能

本工具提供常用视频格式之间的相互转换,并有如下可配置参数:

  • 容器格式选择(MP4/AVI/MJPEG/序列帧等)

  • 视频编码格式(H.264/H.265/EZIP/VP8/VP9/AV1/MJPEG等)

  • 音频编码格式(MP3/AAC等)

  • 视频分辨率选择/设置(缩放/区域截取)

  • 视频帧率选择/设置

  • 音频参数设置(消音、单声道或立体声,码率,采样频率等)

  • 视频内容截取(截取指定时间段内的视频)

在思澈平台上常用的视频转换场景有:MP4/AVI–>MP4、MP4/AVI–>eZip-A、 MP4/AVI–>MJPEG。

备注

  • 以上输出MP4的配置项必须与具体芯片内部解码机制的设置保持完全一致,这是由特定芯片的设计决定的,工具需要相应地提供各种配置以配合调试开发,但是对外发布的工具则应该有几个固定配置,不要提供客户太多自由度。

序列帧抽取

在部分场景下,需要抽取视频的序列帧用于播放无声动画。抽取序列帧的帧率配合方案不超过30帧,如原视频帧率小于30帧则以原视频帧率为准,抽取后的帧序列保存为PNG图片再进一步做eZip转换。

工具使用方法

工具界面如下图所示,主要分为5个区域。工具使用方法可参考GraphicsTool工具包中的"GraphicsTool.pdf"文档,此处简单介绍几种常用场景的操作流程和注意事项。

../_images/%E5%9B%BE%E5%BD%A2%E5%B7%A5%E5%85%B7_1.png

如何将转换文件放入列表中

方法1:使用功能控制区的“源选择”按钮选择资源路径

方法2:文件选择区右键菜单“更新路径”选择资源路径

方法3: 将文件或者路径拖入到列表中

重要

需要注意在文件列表框中,只会显示文件夹以及跟当前处理功能相匹配的格式文件,具体可参考工具目录下GraphicsTool.ini文件的 [IMG_FILTER] 和 [VIDEO_FILTER] 配置。

如何将转换生成的文件放入SD卡中

SD卡插到电脑上(或者SD卡插在开发板上,Type-C USB线连接到电脑上),电脑上成功枚举出SD卡的盘符,将生成的文件拷贝到SD卡盘符对应的目录位置。

推荐使用方式及步骤

本工具虽然提供了单独的图片转换和视频转换功能,但是需要设置的参数较多,一般是有特殊需求时使用。针对思澈平台方案,建议直接使用专用模式,不需要设置过多参数,只需将资源放置在对应的路径下一键转换即可。

首次打开工具,默认选择的是专用模式,并且在工具路径下会创建SiFli_Module文件夹,里面放置方案设定的目录结构,使用时也可根据需求新创建目录结构,点击工具栏中的“目录创建”按钮,在弹出的编辑框中选择路径,并在目录上添加项目名称用于标记,然后即可创建目录结构并选择使用该目录结构。

创建好目录结构并使用该路径作为资源路径后,可以将资源拷贝到对应的目录下,在工具的转换文件选择区,右键菜单中的刷新列表可以显示新加的资源,注意只有图片/视频/GIF等文件会显示出来。勾选需要转换的文件,或者全部勾选。

专用模式下需要设置的参数:选择屏幕分辨率、选择视频处理格式(参考GraphicsTool.pdf文档3.1节“视频处理”描述)、选择调整大小方式(参考3.1节“调整大小”描述)。

点击“转换”按钮启动资源转换,工具下边状态栏的描述及进度条显示转换进度,转换完后,点击“目标路径”按钮进入转换后的保存路径,可以将整个文件夹拷贝到SD卡中插入硬件板使用。

附录:SD卡的基本知识

对于有SD卡的系统,出于方便用户的考虑,对具体SD卡的性能和格式往往不可以提出过高要求。

一般来说,由于思澈芯片SDK采用了FatFS文件系统,支持FAT16和FAT32,对于现代SD卡,往往有较大大容量,因此唯一要求的是SD的文件系统也为FAT32,最多支持32GB容量。这种情况下SD卡可以通过Windows操作系统的文件浏览器选择FAT32系统进行格式化,除此以外并无其它要求。

对于特定场景(例如视频播放或存储),有可能会出现要求客户产品搭配专用SD卡的场景,这时可以进一步提高对SD卡读写速度的要求,例如典型的主流规格为:

  • SDHC,最多32GB

  • Class 10(C10),UHS-I(U1),Video 10MB/s (V10),支持10MB/s读写

备注

SD卡的基本信息如下,更多知识可以参考以下文章:

SD该如何选择?事关速度和寿命,你应该这么选

SD卡的容量等级

SD卡按照容量可以分为:

  • SD 或 SDSC(安全数码标准容量卡):最大存储容量为2GB

  • SDHC(安全数码高容量卡):超过2至32GB的存储容量

  • SDXC(安全数码扩展容量):超过32GB至2TB的存储容量

  • SDUC(安全数码超大容量):超过2TB至128TB的存储容量

SD卡的速度等级

SD卡按照速度可以分为:

tools/assets/SD_speed.png

SD卡的接口与速率模式

SD卡的接口分SDIO和SPI两种,根据芯片平台和应用场景的不同,两种接口都有可能会被用到。

  • SDIO:按照接口的速率模式,SD卡可以分为以下7种:

    1. Default Speed Mode:3.3V供电,频率上限25MHz,速度上限12.5MB/s

    2. High Speed Mode:3.3V供电,频率上限50MHz,速度上限25MB/s

    3. SDR12:UHS-I卡,1.8V供电,频率上限25MHz,速度上限12.5MB/s

    4. SDR25:UHS-I卡,1.8V供电,频率上限50MHz,速度上限25MB/s

    5. SDR50:UHS-I卡,1.8V供电,频率上限100MHz,速度上限50MB/s

    6. SDR104:UHS-I卡,1.8V供电,频率上限208MHz,速度上限104MB/s

    7. DDR50:UHS-I卡,1.8V供电,频率上限50MHz,速度上限50MB/s

  • SPI:

    • SD卡的SPI速率模式下频率上限为25MHz,速度上限为3.125MB/s

备注

当模组或PCBA上芯片外挂存储容量不足时,有可能会利用板载的SD卡以较低成本进一步扩展存储,这时SD卡的分区和文件系统需要根据使用场景被固定下来,那么就需要利用专用工具来对SD卡进行分区和烧录,同时SD卡的性能也可以被固定下来。

这种情况下,SD卡应该被置于被保护的状态(贴封条或卡槽被内置而不外露);如果用户自行取出SD卡并在电脑文件浏览器(而非专用工具)上格式化或改变分区,则非常有可能会损害整个系统,导致系统无法恢复正常工作。这种情况下,唯一的办法就是引导客户使用专用工具重新分区并格式化。由于售后服务的复杂性,这种终端用户自行操作的方式应该极力避免。