博伦 发表于 2023-9-11 01:35:23

用OLED屏幕播放视频(1): 项目介绍

下面的系列文章记录了如何使用一块linux开发扳和一块OLED屏幕实现视频的播放:

[*]项目介绍
[*]为OLED屏幕开发I2C驱动
[*]使用cuda编程加速视频处理
这篇文章主要对项目的实现做整体的介绍, 包括硬件的需求, 最终实现的视频播放效果, 以及软件的实现思路.
1). 硬件需求


[*]beaglebone black board(之后简称bbb)
[*]ssd1306 oled屏幕(支持i2c接口)
[*]支持cuda的N卡(用于视频处理加速)
2). 效果演示

跳转到6:48直接观看演示
3). 实现原理

下图是系统中各部分的交互关系:


[*]待播放视频以mp4文件的形式保存. OLED屏幕不支持彩色, 并且要求每帧视频分辨率为128x64, 所以需要对视频数据进行resize和灰度处理, 使用GPU编程完成这部分的数据处理.
[*]bbb板子上运行着debian系统, 需要开发OLED屏幕的I2C驱动, 以及一个用户态程序, 其中用户态程序负责接收GPU处理之后的视频数据, 并且通过I2C设备驱动暴露的文件系统接口, 操作屏幕播放视频
总结下来, 实际的代码开发的工作主要包括:

[*]Host Machine:

[*]cuda视频处理加速
[*]用户态程序, 调用cuda代码处理视频, 并作为服务器把视频数据发送给bbb

[*]bbb板子:

[*]SSD1306 OLED屏幕的I2C驱动开发
[*]用户态程序, 从Host Machine请求数据, 操作设备播放视频

之后的文章中将逐一介绍代码中的实现细节.
4). 文末推广

感觉还不错的小伙伴, 欢迎关注我的B站账号, 或者加入QQ群838923389, 一起研究计算机底层技术, 一起搞事情:P

来源:https://www.cnblogs.com/kfggww/p/17672932.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: 用OLED屏幕播放视频(1): 项目介绍