d3d11: Add support for AYUV, AYUV64, and RGBA64_LE formats
authorSeungha Yang <seungha@centricular.com>
Mon, 14 Feb 2022 13:59:01 +0000 (22:59 +0900)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Wed, 16 Feb 2022 18:41:05 +0000 (18:41 +0000)
commit04b8dfa3913a34ba5a4c0c980129997a4ca02fb7
tree51f26da7a674a1b1e0a29bbbe4adcaecb4a7d408
parentcb7e454b53adad0211c2983c5c2179a3034ffce7
d3d11: Add support for AYUV, AYUV64, and RGBA64_LE formats

Note that AYUV and AYUV64 formats will be used to expand format
support, especially some packed YUV formats (e.g., Y410, YUY2)
are common DXGI formats used for hardware decoder/encoder on Windows
but those formats cannot be used as a render target. We need to handle
them differently without pixel shader help, using compute shader
for example.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1699>
subprojects/gst-plugins-bad/gst-libs/gst/d3d11/gstd3d11_private.h
subprojects/gst-plugins-bad/gst-libs/gst/d3d11/gstd3d11device.cpp
subprojects/gst-plugins-bad/gst-libs/gst/d3d11/gstd3d11format.h
subprojects/gst-plugins-bad/sys/d3d11/gstd3d11converter.cpp
subprojects/gst-plugins-bad/tests/check/elements/d3d11colorconvert.c