我正在使用 Direct2D 进行一些简单的加速图像合成/操作,现在需要获取 RenderTarget 的像素数据以将其传递给编码器。
到目前为止,我已经通过渲染到 a 来解决这个问题BitmapRenderTarget
,然后最终将位图从它绘制到 a 上WicBitmapRenderTarget
,这样我就可以锁定一个区域并获取指向像素的指针。
然而...
这仅在我的初始 RenderTarget 使用时才有效D2D1_RENDER_TARGET_TYPE_SOFTWARE
,因为硬件渲染目标的位图不能与 WicBitmapRenderTarget
仅支持软件渲染的“共享”。软件渲染似乎比硬件慢得多。
有没有办法解决这个问题?改用 Direct3D 会更好吗?