首页 > 其他分享 >用OLED屏幕播放视频(1): 项目介绍

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

时间:2023-09-10 23:00:10浏览次数:53  
标签:视频 bbb OLED cuda 屏幕 播放

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

  1. 项目介绍
  2. 为OLED屏幕开发I2C驱动
  3. 使用cuda编程加速视频处理

这篇文章主要对项目的实现做整体的介绍, 包括硬件的需求, 最终实现的视频播放效果, 以及软件的实现思路.

1). 硬件需求

  • beaglebone black board(之后简称bbb)
  • ssd1306 oled屏幕(支持i2c接口)
  • 支持cuda的N卡(用于视频处理加速)

2). 效果演示

跳转到6:48直接观看演示

<iframe allowfullscreen="true" border="0" frameborder="no" framespacing="0" height="600" scrolling="no" src="//player.bilibili.com/player.html?aid=788149070&bvid=BV1d14y1k7YR&cid=1260923220&p=1" width="100%"> </iframe>

3). 实现原理

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

image

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

总结下来, 实际的代码开发的工作主要包括:

  1. Host Machine:

    • cuda视频处理加速
    • 用户态程序, 调用cuda代码处理视频, 并作为服务器把视频数据发送给bbb
  2. bbb板子:

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

之后的文章中将逐一介绍代码中的实现细节.

4). 文末推广

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

标签:视频,bbb,OLED,cuda,屏幕,播放
From: https://www.cnblogs.com/kfggww/p/17672932.html

相关文章

  • 用OLED屏幕播放视频(2): 为OLED屏幕开发I2C驱动
    下面的系列文章记录了如何使用一块linux开发扳和一块OLED屏幕实现视频的播放:项目介绍为OLED屏幕开发I2C驱动使用cuda编程加速视频处理这是此系列文章的第2篇,主要总结和记录一个I2C从设备的驱动,在linux内核中如何实现,如何给用户态的程序暴露合适的接口,让用户态有机......
  • C#获取屏幕大小的“简单整理”。
    Console.WriteLine("主显示器完整尺寸:");Console.WriteLine("宽:"+Screen.PrimaryScreen.Bounds.Width);Console.WriteLine("高:"+Screen.PrimaryScreen.Bounds.Height);Console.WriteLine("主显示器工作尺寸(排除任务栏、工具栏):");Console.WriteLine(......
  • 基于live555研发的EasyRTSPServer嵌入式流媒体服务器解决对接海康NVR时G726音频不能正
    我们在基于live555研发实现对接海康NVR时候,发现视频正常,但音频不能正常播放。基于live555研发的EasyRTSPServer在接入输出视频编码为H.264,音频编码格式为G726,当接入视频源都来自海康的摄像机时,摄像机直接接入海康NVR是可以正常播放的,但接入live555研发的EasyRTSPServer是有问题的......
  • 用OLED屏幕播放视频(3): 使用cuda编程加速视频处理
    下面的系列文章记录了如何使用一块linux开发扳和一块OLED屏幕实现视频的播放:项目介绍为OLED屏幕开发I2C驱动使用cuda编程加速视频处理这是此系列文章的第3篇,主要总结和记录了如何使用cuda编程释放GPU的算力.在此之前尝试过使用python调用opencv直接处理视频数据,但使用......
  • 视频汇聚平台EasyCVR如何完成多设备平台视频监控向应急中心播放的实现
    将各种智能分析和预防功能汇聚起来,并与省级视频和感知数据共享平台进行对接,以获取视频资源。通过整合雪亮工程、"天翼应急"视频和其他厅局资源,形成一个视频资源池,并集中提供给与应急业务相关的特殊场景监控,例如森林防火、地震、危化品大中小企业、无人机/单兵和应急指挥中心大楼。......
  • 提升AI视频监控汇聚平台EasyCVR的用户体验:优化多分屏默认播放协议配置
    EasyCVR智能视频监控平台提供高度拓展和开放度,可作为独立的业务平台使用,也能被调用和集成为视频能力层。该平台具备兼容性,支持自由调用和第三方集成。此外,它还支持与TSINGSEE青犀视频平台的AI智能分析网关接入,提供多种智能分析功能如人脸检测、车辆检测等。通过EasyCVR平台,用户可以......
  • 在国标云服务EasyGBS国标视频平台中添加宇视sdk实现暂停播放和恢复播放的具体步骤
    EasyGBS国标视频云服务平台不仅支持无缝、完整接入内网或者公网的国标设备,在输出上,实现全平台、全终端输出。平台可将GB/T28181的设备/平台推送的PS流转成ES流,并提供RTSP、RTMP、FLV、HLS、WebRTC等多种格式视频流的分发服务,实现Web浏览器、手机浏览器、微信端、PC客户端等各终端......
  • RTSP协议视频智能安防监控平台EasyNVR的录像播放及下载接口支持返回在线m3u8格式视频
    随着视频智能安防监控系统的普及,安防监控平台在各行各业的项目中得到了广泛应用。未来,AI智能将成为安防监控的主导方向。为了满足行业需求,TSINGSEE青犀视频不断提升现有产品的适应能力,进一步推动智能安防监控系统的发展。目前,EasyNVR作为TSINGSEE青犀视频开发的稳定可靠的智能安防......
  • 国标GB28181协议视频智能分析平台EasyGBS,其无法播放的常见原因及排查汇总
    关于EasyGBS服务稳定性的问题,TSINGSEE青犀视频平台一直备受咨询者关注。然而,服务稳定性与用户接入方式和配置密切相关。如果您对此有更详细的了解需求,我们建议您联系我们以获取测试版本进行自行测试。有时候用户会反映EasyGBS无法播放的问题,但是"不能播放"是一个广泛的概念,有很多可......
  • 排查国标GB28181视频监控平台EasyGBS无法播放且抓包返回ICMP的步骤
    GB28181视频平台EasyGBS是一个基于国标GB28181协议的视频云服务平台。它支持多路设备同时接入,并能将视频流以RTSP、RTMP、FLV、HLS、WebRTC等格式分发给多个平台和终端。该平台提供视频监控直播、云端录像、云存储、检索回放、智能告警以及语音对讲等功能。在视频能力方面,EasyGBS支......