On Thu Jul 4 23:01:39 2024 +0000, Brendan McGrath wrote:
It turns out the issue wasn't related to the padding; I had simply introduced a bug. Namely I hadn't catered for the use-case where we read from the DXGI buffer rather than write. I've fixed that now, and I now seem to get the same results with and without this MR. I only hit this issue once I started using an isolated video processor transform and passed it DXGI buffers. Prior to that, I was testing with `IMFSourceReader`, which was passing the transform buffers from wg_parser, which appear not to be DXGI buffers.
Yeah, D3D buffers with software video conversion will be extremely inefficient. The proper solution here is to use the ID3D11VideoProcessor which I intend to use in Proton to do everything on the GPU. It's not yet implemented in WineD3D but I believe Yuxuan is looking into it. DXVK implements it already.