ESP32视频显示系统 ESP32_Video_Display

⭐☆☆☆☆ (1/5) 已发布
younes-makhchan 64 Stars MIT BOM 完整度: /5 教程完整度: /5

项目简介

在ESP32+SSD1306 OLED上播放黑白视频。


ESP32 Video Display 是一个基于 ESP32 微控制器和 SSD1306 OLED 显示屏的黑白视频播放系统。该项目源自 Hackerspace-FFM 的 ESP32_BadApple,经过优化和扩展,让开发者能够轻松在低成本硬件上播放自定义黑白视频。核心功能包括视频格式转换、数据压缩与存储,以及通过 I2C 接口驱动 OLED 实时显示。技术栈方面,项目使用 Arduino IDE 或 PlatformIO 作为开发环境,依赖 ESP32 Arduino 核心库和 Adafruit SSD1306 库,视频转换部分则通过 Python 脚本(Compress.py)完成,将普通视频文件压缩为专用的 binary 格式。硬件连接非常简单,只需将 ESP32 的 GPIO21(SDA)和 GPIO22(SCL)分别连接至 OLED 的对应引脚,即可完成搭建。该项目主要解决了在资源受限的嵌入式设备上播放视频的难题,通过将彩色视频转换为黑白帧并高效压缩,使得仅 128x64 分辨率的单色 OLED 也能流畅呈现动画内容。适用场景广泛,包括创意电子制作、桌面装饰、信息展示牌、复古风格动画播放,以及作为学习嵌入式系统、I2C 通信和视频压缩算法的教学案例。无论是想复现经典的 Bad Apple 动画,还是展示自定义的 Logo 或短片,ESP32 Video Display 都提供了一个低成本、易上手的解决方案。

标签

项目特点

支持在 ESP32 上播放任意黑白视频
使用 SSD1306 OLED 显示屏(128x64 分辨率)
提供 Python 脚本将视频转换为 ESP32 可读取的二进制格式
基于 Arduino IDE 或 PlatformIO 开发环境
开源且基于 MIT 许可证

技术规格

主控芯片
显示屏
接口
视频格式
开发环境
视频转换工具
依赖库

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
ESP32 开发板 1 任意型号
SSD1306 OLED 128x64 1 I2C 接口
杜邦线 4 用于连接 ESP32 和 OLED
USB 数据线 1 为 ESP32 供电

所需工具

工具用途是否必需
电脑 编写代码、转换视频、上传固件 ✅ 是
Arduino IDE 或 PlatformIO 开发环境 ✅ 是
Python 环境 运行视频转换脚本 ✅ 是
USB 数据线 连接 ESP32 到电脑 ✅ 是

能力画像

记忆与知识检索
1/5
逻辑推演
2/5
表达与交流
1/5
感知与观察
1/5
数理与计算
2/5
动手与操作
3/5
狂热与坚持
2/5
创造与创新
2/5

所需技能

🔧 **动手能力**:需要连接 ESP32 和 OLED 显示屏的 I2C 接线,以及上传固件到开发板。 💻 **编程能力**:需要基本的 Arduino 或 PlatformIO 编程知识,以及 Python 脚本运行能力。 ⚡ **电子电路**:了解 I2C 通信协议和基本接线。

适用场景

在低成本硬件上播放黑白动画或视频
学习 ESP32 与 OLED 显示屏的 I2C 通信
制作小型视频播放器或信息显示装置
作为嵌入式视频播放的教学示例