led點陣屏的上位機設計,目前的實現是:
1>預先用 mplayer 將視頻文件解碼成 tga 圖片序列,然後按順序將 tga 圖片一張一張按順序通過 Ethernet 發到控制器。
如何在我讀取 000001.tga 的時候將其後的 000002.tga、000003.tga …… 緩衝到內存,且不搶佔當前的 cpu?
還有想請教的是我的方案是否是最高效的?比較下面那個方案呢?
2>將視頻文件預先解碼成壓縮圖片格式如png,然後順序讀取png文件即可,無須考慮緩衝問題,因爲文件體積小,讀的快。但讀取時解壓png格式會佔用額外的cpu,相比拷貝較大的tga文件到內存哪個更划算?
3>控制mplayer一幀一幀的播放視頻,每播放一幀將播放窗口截屏,然後處理截屏數據。相比前面的方案還要額外的將圖片畫在上位機裏做效果預覽,省多一步。但也存在視頻解壓算法,如何取捨?
按順序讀取未壓縮圖片序列如何提前緩衝?
- dukelec
- 帖子: 410
- 注册时间: 2010-08-26 22:20
- 系统: Gentoo
- 来自: Canton
- dukelec
- 帖子: 410
- 注册时间: 2010-08-26 22:20
- 系统: Gentoo
- 来自: Canton
Re: 按顺序读取未压缩图片序列如何提前缓冲?
文章主题 : 按顺序读取未压缩图片序列如何提前缓冲?
led点阵屏的上位机设计,目前的实现是:
1>预先用 mplayer 将视频文件解码成 tga 图片序列,然后按顺序将 tga 图片一张一张按顺序通过 Ethernet 发到控制器。
如何在我读取 000001.tga 的时候将其后的 000002.tga、000003.tga …… 缓冲到内存,且不抢占当前的 cpu?
还有想请教的是我的方案是否是最高效的?比较下面那个方案呢?
2>将视频文件预先解码成压缩图片格式如png,然后顺序读取png文件即可,无须考虑缓冲问题,因为文件体积小,读的快。但读取时解压png格式会占用额外的cpu,相比拷贝较大的tga文件到内存哪个更划算?
3>控制mplayer一帧一帧的播放视频,每播放一帧将播放窗口截屏,然后处理截屏数据。相比前面的方案还要额外的将图片画在上位机里做效果预览,省多一步。但也存在视频解压算法,如何取舍?
led点阵屏的上位机设计,目前的实现是:
1>预先用 mplayer 将视频文件解码成 tga 图片序列,然后按顺序将 tga 图片一张一张按顺序通过 Ethernet 发到控制器。
如何在我读取 000001.tga 的时候将其后的 000002.tga、000003.tga …… 缓冲到内存,且不抢占当前的 cpu?
还有想请教的是我的方案是否是最高效的?比较下面那个方案呢?
2>将视频文件预先解码成压缩图片格式如png,然后顺序读取png文件即可,无须考虑缓冲问题,因为文件体积小,读的快。但读取时解压png格式会占用额外的cpu,相比拷贝较大的tga文件到内存哪个更划算?
3>控制mplayer一帧一帧的播放视频,每播放一帧将播放窗口截屏,然后处理截屏数据。相比前面的方案还要额外的将图片画在上位机里做效果预览,省多一步。但也存在视频解压算法,如何取舍?