VC++ 快速画图解决方案

VC++ 快速画图
一个二进制文件,大约5G多。里面全是bayer数据(RG,GB格式的灰度图),每幅图像大小为320*320.
经过插值后,现在用GDI把所有的图像全部播放出来,每秒大约最多能播放12副彩色图像。

问题:如何能提高播放的速度。最好每秒能播放24副以上的图像。请各位大侠指点。

------解决方案--------------------
这个需要高手来解答了,帮顶一下。
------解决方案--------------------
做成AVI,即去除图片间的相关性。
------解决方案--------------------
directdraw直接写内存
------解决方案--------------------
关键要提高的是处理速度..BitBlt()的速度是可以忽略不计的.

如果你的速度不能限制在40ms以内,那么每秒25祯就是梦想了,即使你用什么ddddd都无补于事。

------解决方案--------------------
显示其实还不是问题
问题在于你5G文件不可能一次性读入内存
现读现显示肯定影响效率
你现在文件是怎么读的
是不是用的内存映射的方式
------解决方案--------------------
换速度快的电脑看行不行。

另外,是不是可以考虑多核优化,如果你现在只用到了一个核心的话,那么再用一个核心就差不多了
------解决方案--------------------
可能耗时的地方:
文件IO:提前读,内存里保留N帧
插值算法:如果追求图像质量,raw转RGB可能采用复杂的算法。简化之,比如用两点/4点均值
GDI:建立hbitmap比较慢,直接用SetDIBitsToDevice。
最快是用DDraw,raw直接转成设备的格式