WPF and D3DImage #417
Replies: 1 comment
-
it's not difficult to implement the rendering in a D3DImage but does have performance issues. FlyleafHost from the other hand it will render the received decoded texture (from FFmpeg) directly, without extra copies (see ZeroCopy support) or extra converts. You can check this for performance considerations with D3DImage which is supported only for Dicrect3D9 (not 11). I think FlyleafHost currently can solve the most common of the airspace issues and some more advanced (such as FlyleafSharedOverlay to use a shared overlay between multiple FlyleafHosts) without dropping the performance at all. If you have a case that you can't use FlyleafHost as is feel free to open an issue and I will try to include/support it. By the way, this can be achieved in WinUI 3 with SwapChainPanel without having airspace issues. However, WinUI 3 has other issues currently as -from my point of view- it is still beta. (PS: I've never used D3DImage but I'm afraid it will have other issues as well, so even if it would be possible you might come across with other critical issues that you will not be able to actually use it) |
Beta Was this translation helpful? Give feedback.
-
In WPF, the layered window approach to work around the AirSpace issues is still not ideal. Is there a way to use a D3DImage instead?
D3DImage needs a reference to a D3 surface via its SetBackBuffer. I'm wondering if someone more familiar with FlyLeaf's code would know if creating a host that uses D3DImage would be fairly easy?
Seems like it would mean creating a D3 surface to draw to as opposed to using the windows surface via its HWND?
Beta Was this translation helpful? Give feedback.
All reactions