• 正文
  • 推荐器件
  • 相关推荐
申请入驻 产业图谱

【AWTK使用经验】如何实现序列帧动画

2024/07/17
1485
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

AWTK是基于C语言开发的跨平台GUI框架。《AWTK使用经验》系列文章将介绍开发AWTK过程中一些常见问题与解决方案,例如:如何加载外部资源?如何设计自定义进度条?这些都会在系列文章进行解答。

假设目前想在AWTK中显示炫酷流畅的图片动画,此时可以用video_image控件来播放序列帧动画。本篇文章将介绍该控件的原理和使用方法。

图1 ZTP800示教器运行video_image控件demo效果

video_image控件播放序列帧动画优点

video_image控件采用了帧间差异的图像算法,在压缩位图时会计算并保存每一帧之间的脏矩形区域和数据,接着将这些差异数据压缩成自定义的视频文件,最后再采用lz4算法对视频文件进一步压缩。在video_image控件播放视频文件时会先用lz4算法解压视频文件,再将帧间差异解析组合成位图播放。下面是video_image控件播放序列帧相比较MP4、MJPG与GIF等常见格式的优点:

对比格式 播放序列帧方式的优点
MJPG MJPG动画文件占用空间大,JPG的解压速度慢;video_image的帧间差异图像算法能够很大程度降低空间上的消耗,包括内存和文件系统空间,同时解压速度也会更快。
GIF GIF只支持8位色,并且不支持半透;而video_image动画可支持32位色,并且支持半透显示。
MP4 MP4压缩率较高 ,解压位图需要消耗较大性能,需要依赖硬件解码才能流畅播放;而video_image控件可以用在中低端平台,解码消耗性能会较低,动画会更流畅。

video_image控件的使用方法

首先,在AWStudio插件列表安装awtk-widget-video-image控件,并编译video_image控件工程,会在awtk-widget-video-image/bin目录下生成相关工具:gif_to_frame_gen工具可以将GIF转换成一张张位图序列帧;diff_image_to_video_gen工具可以将这些位图序列帧压缩成video_image控件支持播放的自定义视频文件。

图2 AWStudio插件列表的video_image控件将GIF转换成位图序列帧

假设目前的GIF名称为zlg.gif,可以在bin文件夹输入下面命令将GIF转成位图序列帧,工具的详细参数可以看控件目录下的README.md文档:

./gif_to_frame_gen.exe ./zlg.gif ./my_image/

图3 使用工具将GIF转成位图序列帧

将位图序列帧合成自定义视频文件

同样是在bin目录下可以使用diff_image_to_video_gen工具将位图序列帧合成自定义视频文件。工具的设置的参数比较多,详细参数说明可以看控件目录下的README.md文档,示例命令如下:

./diff_image_to_video_gen.exe ./my_image/ frame%d ./my_image/video_gif RGB565 30

图4 diff_image_to_video_gen工具生成自定义视频文件

在AWTK程序播放序列帧

将上面生成的自定义视频文件通过AWStudio导入到资源浏览器的“其他数据”分类项,接着再设置video_image控件的video_name属性为视频文件名称,最后打包编译运行程序即可。

图5 添加与设置视频文件到应用中

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
Q13FC1350000300 1 Seiko Epson Corporation Parallel - Fundamental Quartz Crystal, 0.032768MHz Nom,

ECAD模型

下载ECAD模型
$1.38 查看
PLR135/T8 1 Everlight Electronics Co Ltd Receiver, 16Mbps, Through Hole Mount,

ECAD模型

下载ECAD模型
$2 查看
HFBR-1521ETZ 1 Foxconn Transmitter, 5Mbps, Through Hole Mount, ROHS COMPLIANT, 6 PIN
$17.77 查看
致远电子

致远电子

广州致远电子股份有限公司成立于2001年,注册资金5000万元,国家级高新技术认证企业,广州市高端工控测量仪器工程技术研究开发中心,Intel ECA全球合作伙伴和微软嵌入式系统金牌合作伙伴。

广州致远电子股份有限公司成立于2001年,注册资金5000万元,国家级高新技术认证企业,广州市高端工控测量仪器工程技术研究开发中心,Intel ECA全球合作伙伴和微软嵌入式系统金牌合作伙伴。收起

查看更多

相关推荐