使用 C++ 在窗口中进行硬件加速图像缩放



我必须缩放位图图像(例如 1280 x 720 到 1920 X 180,反之亦然(。

我在从屏幕捕获视频时使用这种缩放。基于软件的扩展会消耗大量 CPU 扩展,而且速度也较慢。

是否有任何硬件加速的 API 或库来执行扩展?

线程中讨论了一些方法 如何使用硬件视频缩放器?.但没有最终结论。

所需支持 : 视窗 7 及以上

如果您有要缩放的图像IDirect3DTexture9,则可以使用 StretchRect。

D3D11 中没有等效的函数,但是,如果您有要缩放的图像ID3D11Texture2D,则只需创建所需目标大小的呈现器目标(全屏四边形(,并使用仅对原始纹理进行采样的简单着色器呈现到目标。生成的呈现目标将是输入的缩放图像。注意:这种全屏四屏方法也适用于D3D9。

最新更新