我有一个jpeg图片流(25fps,aboud 1000x700),我想用尽可能少的CPU使用率将其渲染到屏幕上。
到目前为止,我发现了一种快速解压缩jpeg图像的方法 - 它是一个gdi + api。在我的机器上,每帧大约需要50ns。我不知道他们是怎么设法做到的但是这是真的,例如libjpeg8就像记得的那样慢得多。
我尝试使用gdi +来输出拉伸的图片,但它使用了很多CPU来完成这么简单的工作。所以我切换到directx9。这对我有好处,但我找不到将gdi +图片转换为directx9纹理的好方法。
有很多方法可以做到这一点,所有这些方法都很慢并且CPU使用率很高。
其中一个:
另一种方式:
顺便说一句D3DXCreateTextureFromFileInMemory
很慢。
问题是如何在没有复制开销的情况下将图像用作纹理?或者将图像转换为纹理的最佳方法是什么?