RT-Thread 联合瑞萨, LVGL于今年6月份推出了HMI Board 开发模式,取代传统的 HMI + 主控板 硬件,一套硬件即可实现 HMI + IoT + 控制 的全套能力。依托于瑞萨高性能芯片 RA6M3 及 RT-Thread 和 LVGL 软件生态,HMI Board 不仅硬件性能强劲,同时软件生态丰富,助力开发者快速开发出 GUI 智能硬件产品。
本示例开源链接:
https://github.com/RT-Thread-Studio/sdk-bsp-ra6m3-hmi-board/tree/main/projects/hmi-board-video
本文将带领大家学习上手RA6M3 HMI Board 使用硬件JPEG解码播放视频。
演示视频
JPEG作为一种通用而灵活的视频格式,在嵌入式平台上,有以下几种用途:
● JPEG视频可以用于嵌入式设备的本地存储和回放,例如数码相机、摄像机、监控系统等。
● JPEG视频可以用于嵌入式设备与其他设备或平台的互联和互操作,例如通过网络或蓝牙传输视频数据,或者通过HDMI或USB输出视频信号。
● JPEG视频可以用于嵌入式设备的高级功能和应用,例如通过人工智能或图像处理算法对视频内容进行分析、识别、增强等。
JPEG介绍:
JPEG或称JPG,是一种针对照片影像而广泛使用的有损压缩标准方法,由联合图像专家小组开发。它是一种广泛使用的图像压缩标准,可以有效地减少图像文件的大小,同时保持较高的图像质量。
一般在不具备硬件解码外设情况下,在嵌入式平台上实现JPEG视频编解码都是通过软件解码器进行的。但其缺点也是明显的,它耗费了大量CPU时间,如果编解码质量较高的图像,会带来较高的编解码延迟和功耗。
瑞萨的RA6M3具备硬件JPEG的外设,因此可以有效的规避以上问题,通过硬件编解码模块我们只需要将规定的需要编/解码的数据传输到JPEG外设中,便可以指定它生成我们需要渲染的图像格式。
RA6M3 JPEG编解码器提供了功能选项:
● 基础的编码和解码
● 流式输入与/或输出
● 解码未知大小的JPEG
● 在解码过程中收缩(子样本)图像
● 重新排列输入和输出字节顺序(字节、字与/或长字交换)
● JPEG错误检测
示例使用说明
SD卡格式化:
这里我使用 DiskGenius 工具进行 SD卡格式化,值得注意的是:SD卡需要使用 512 Byte 大小格式化扇区。
视频制作方式:
这里我使用 格式工厂 软件进行视频转码处理,具体使用方式如下:
视频配置选项:
音频配置选项:
配置选择好并选择指定的输出路径后,点击确定。最后点击开始转码即可完成视频转换步骤:
视频转换成功后,将其后缀名为 .avi 的视频存放到 sdcard 中即可
硬件连接方式:
● 将 SD 卡插入开发板背面卡槽
● 将喇叭插入开发板背面音频输出接口
HMI-Board-Video Demo 使用方式
1. 使用USB连接到开发板
2. 编译、烧录固件
3. 正常运行上电屏幕上会便会循环遍历播放文件系统中的视频文件
4. 使用 UI 的上下按键可以切换上/下一个视频资源,使用左侧的滑条可以调节音量大小(向上滑动+,向下滑动-)
查看运行结果
下载程序成功之后,系统会自动运行并打印系统信息。
连接开发板对应串口到 PC , 在终端工具里打开相应的串口(115200-8-1-N),复位设备后,可以看到 RT-Thread 的输出信息,同时屏幕上会运行lvgl-视频播放器demo。
● 快速上手:
https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/hw-board/ra6m3-hmi-board/ra6m3-hmi-board
● RT-Thread BSP:
https://github.com/RT-Thread/rt-thread/tree/master/bsp/renesas/ra6m3-hmi-board
● 原理图:
https://github.com/RT-Thread-Studio/sdk-bsp-ra6m3-hmi-board/tree/main/documents
● SDK仓库:
https://github.com/RT-Thread-Studio/sdk-bsp-ra6m3-hmi-board
● ra6m3芯片手册:
https://github.com/RT-Thread-Studio/sdk-bsp-ra6m3-hmi-board/blob/main/documents/ra6m3-user-manual.pdf
● ra6m3数据手册:
https://github.com/RT-Thread-Studio/sdk-bsp-ra6m3-hmi-board/blob/main/documents/ra6m3-datasheet.pdf
● fsp下载地址:https://github.com/renesas/fsp/releases/tag/v3.5.0
● RA系列BSP外设驱动使用教程:
https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/tutorial/make-bsp/renesas-ra/RA%E7%B3%BB%E5%88%97BSP%E5%A4%96%E8%AE%BE%E9%A9%B1%E5%8A%A8%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B
● RA系列使用 FSP 配置外设驱动:
https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/tutorial/make-bsp/renesas-ra/RA%E7%B3%BB%E5%88%97%E4%BD%BF%E7%94%A8FSP%E9%85%8D%E7%BD%AE%E5%A4%96%E8%AE%BE%E9%A9%B1%E5%8A%A8?id=ra%e7%b3%bb%e5%88%97%e4%bd%bf%e7%94%a8-fsp-%e9%85%8d%e7%bd%ae%e5%a4%96%e8%ae%be%e9%a9%b1%e5%8a%a8
● 瑞萨RA6M3开发实践指南:
https://docs.qq.com/doc/DQmVYUEN1dHVyd0hi
● LVGL参考设计说明文档:
https://github.com/RT-Thread-Studio/sdk-bsp-ra6m3-hmi-board/blob/main/projects/hmi-board-lvgl/README_ZH.md
● B站大波丁上手+LVGL系列教程:
https://www.bilibili.com/video/BV15F411R7fn/?spm_id_from=333.788&vd_source=b4b860721501577122570da2b68319db
大波丁整理的网盘资料:
https://pan.baidu.com/s/1b8GafjKZ-tKCfykvu6h_bQ?pwd=5bvr#list/path=%2F&parentPath=%2Fsharelink1099850265858-802741187519332
● LVGL 参考设计:
https://github.com/RT-Thread-Studio/sdk-bsp-ra6m3-hmi-board/tree/main/projects/hmi-board-lvgl
● GPU A/B 测试对比:
https://github.com/Rbb666/HMI-Board-Benchmark
● 综合示例Demo,包含 JPEG 解码播放:
https://github.com/RT-Thread-Studio/sdk-bsp-ra6m3-hmi-board/tree/main/projects/hmi-board-factory
● 视频播放Demo:
https://github.com/RT-Thread-Studio/sdk-bsp-ra6m3-hmi-board/tree/main/projects/hmi-board-video
RT-Thread x 瑞萨线下培训报名火热进行中,详情请点击:
公众号:RTThread物联网操作系统【线下培训】上海临港: RT-Thread × 瑞萨 工业监视器 RA6M3 HMI Board解决方案
———————End———————
全部0条评论
快来发表一下你的评论吧 !