gstreamer/subprojects/gst-plugins-bad/sys/d3d12
Seungha Yang 4bb3854772 d3d12: Add d3d12swapchainsink element
Adding a new videosink element for Windows composition API based
applications. Unlike d3d12videosink, this element will create only
DXGI swapchain by using IDXGIFactory2::CreateSwapChainForComposition()
without actual window handle, so that video scene can be composed
via Windows native composition API, such as DirectComposition.
Note that this videosink does not support GstVideoOverlay interface
because of the design.

The swapchain created by this element can be used with
* DirectComposition's IDCompositionVisual in Win32 app
* WinRT and WinUI3's UI.Composition in Win32/UWP app
* UWP and WinUI3 XAML's SwapChainPanel

See also examples in this commit which show usage of the videosink

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7287>
2024-08-19 11:07:17 +09:00
..
gstd3d12av1dec.cpp d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12av1dec.h d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12basefilter.cpp d3d12basefilter: Add adapter property 2024-06-20 00:03:28 +09:00
gstd3d12basefilter.h d3d12basefilter: Add adapter property 2024-06-20 00:03:28 +09:00
gstd3d12compositor.cpp d3d12: Always allocate output texture using shared heap 2024-07-18 14:17:43 +00:00
gstd3d12compositor.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12convert.cpp d3d12: Always allocate output texture using shared heap 2024-07-18 14:17:43 +00:00
gstd3d12convert.h d3d12: Add convert element 2023-12-29 14:39:00 +00:00
gstd3d12decoder.cpp d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12decoder.h d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12decodercpbpool.cpp d3d12decoder: Use sub-allocated bitstream buffer 2024-06-29 20:47:39 +09:00
gstd3d12decodercpbpool.h d3d12decoder: Use sub-allocated bitstream buffer 2024-06-29 20:47:39 +09:00
gstd3d12download.cpp d3d12: Define more formats 2023-12-29 14:39:00 +00:00
gstd3d12download.h d3d12: Add d3d12download element 2023-09-19 08:52:04 +00:00
gstd3d12dpbstorage.cpp d3d12: Add H.264 video encoder 2024-01-19 12:47:35 +00:00
gstd3d12dpbstorage.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12dxgicapture.cpp d3d12screencapturesrc: Always release acquired frame 2024-08-02 15:36:14 +00:00
gstd3d12dxgicapture.h d3d12screencapturesrc: Add support for WGC API 2024-03-08 01:05:24 +09:00
gstd3d12encoder.cpp d3d12: Remove unnecessary event handles 2024-07-16 19:17:15 +00:00
gstd3d12encoder.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12encoderbufferpool.cpp d3d12: Add H.264 video encoder 2024-01-19 12:47:35 +00:00
gstd3d12encoderbufferpool.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12graphicscapture.cpp d3d12memory: Hide fence value from header 2024-06-19 13:19:47 +00:00
gstd3d12graphicscapture.h d3d12screencapturesrc: Add support for WGC API 2024-03-08 01:05:24 +09:00
gstd3d12h264dec.cpp d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12h264dec.h d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12h264enc.cpp d3d12encoder: Do not print error log for not-supported feature 2024-05-29 10:45:13 +00:00
gstd3d12h264enc.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12h265dec.cpp d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12h265dec.h d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12ipc.cpp d3d12: Add IPC elements 2024-03-22 23:09:12 +09:00
gstd3d12ipc.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12ipcclient.cpp d3d12: Always allocate output texture using shared heap 2024-07-18 14:17:43 +00:00
gstd3d12ipcclient.h d3d12: Add IPC elements 2024-03-22 23:09:12 +09:00
gstd3d12ipcserver.cpp d3d12memory: Hide fence value from header 2024-06-19 13:19:47 +00:00
gstd3d12ipcserver.h d3d12: Add IPC elements 2024-03-22 23:09:12 +09:00
gstd3d12ipcsink.cpp d3d12device: Add helper method for getting fence handle 2024-06-19 13:19:47 +00:00
gstd3d12ipcsink.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12ipcsrc.cpp d3d12: Add IPC elements 2024-03-22 23:09:12 +09:00
gstd3d12ipcsrc.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12memorycopy.cpp d3d12download: Do not overwrite fence of non-writable memory 2024-07-27 03:23:22 +09:00
gstd3d12memorycopy.h d3d12: Add support for resource copy between d3d11 and d3d12 2024-07-01 20:18:42 +00:00
gstd3d12mpeg2dec.cpp d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12mpeg2dec.h d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12overlaycompositor.cpp d3d12: Remove notify_com and notify_mini_object helper methods 2024-06-19 13:19:47 +00:00
gstd3d12overlaycompositor.h d3d12overlaycompositor: Remove unused parameter 2024-06-17 16:05:00 +00:00
gstd3d12pluginutils.cpp d3d12: Move fence setter helper method to gst-libs 2024-06-19 13:19:48 +00:00
gstd3d12pluginutils.h d3d12: Move fence setter helper method to gst-libs 2024-06-19 13:19:48 +00:00
gstd3d12screencapture.cpp d3d12screencapturesrc: Add support for WGC API 2024-03-08 01:05:24 +09:00
gstd3d12screencapture.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12screencapturedevice.cpp d3d12: Add screen capture element 2024-01-05 21:27:35 +09:00
gstd3d12screencapturedevice.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12screencapturesrc.cpp meson: d3d12: Use configuration file 2024-07-22 23:02:48 +09:00
gstd3d12screencapturesrc.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12swapchainsink.cpp d3d12: Add d3d12swapchainsink element 2024-08-19 11:07:17 +09:00
gstd3d12swapchainsink.h d3d12: Add d3d12swapchainsink element 2024-08-19 11:07:17 +09:00
gstd3d12testsrc.cpp d3d12: Always allocate output texture using shared heap 2024-07-18 14:17:43 +00:00
gstd3d12testsrc.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12upload.cpp d3d12: Define more formats 2023-12-29 14:39:00 +00:00
gstd3d12upload.h d3d12: Add upload element 2023-12-29 14:39:00 +00:00
gstd3d12videosink.cpp d3d12videosink: Present on GstVideoOverlay::expose() 2024-06-24 08:46:24 +00:00
gstd3d12videosink.h d3d12: Move core part to gst-libs 2024-04-01 10:37:50 +00:00
gstd3d12vp8dec.cpp d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12vp8dec.h d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12vp9dec.cpp d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12vp9dec.h d3d12decoder: Add support for d3d11 output again 2024-07-22 23:17:25 +09:00
gstd3d12window-swapchain-resource.h d3d12: Remove unnecessary event handles 2024-07-16 19:17:15 +00:00
gstd3d12window-swapchain.cpp d3d12: Remove unnecessary event handles 2024-07-16 19:17:15 +00:00
gstd3d12window-swapchain.h d3d12videosink: Present on GstVideoOverlay::expose() 2024-06-24 08:46:24 +00:00
gstd3d12window-win32.cpp d3d12videosink: Present on GstVideoOverlay::expose() 2024-06-24 08:46:24 +00:00
gstd3d12window-win32.h d3d12videosink: Present on GstVideoOverlay::expose() 2024-06-24 08:46:24 +00:00
gstd3d12window.cpp d3d12videosink: Fix mouse event handling 2024-07-16 17:02:24 +00:00
gstd3d12window.h d3d12videosink: Present on GstVideoOverlay::expose() 2024-06-24 08:46:24 +00:00
meson.build d3d12: Add d3d12swapchainsink element 2024-08-19 11:07:17 +09:00
plugin.cpp d3d12: Add d3d12swapchainsink element 2024-08-19 11:07:17 +09:00