Seungha Yang
72895ed0fa
d3d12: Always allocate output texture using shared heap
...
... if downstream preference is unknown (e.g., no proposed
buffer pool by downstream), so that produced textures can be
shareable with other APIs such as d3d11 or vulkan, or other processes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7193 >
2024-07-18 14:17:43 +00:00
Seungha Yang
2ec7d82bd7
d3d12: Move fence setter helper method to gst-libs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7057 >
2024-06-19 13:19:48 +00:00
Seungha Yang
f6eb3a01c0
d3d12memory: Hide fence value from header
...
Instead of exposing fence value to wait in header, user setter/getter
methods.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7057 >
2024-06-19 13:19:47 +00:00
Seungha Yang
6942868bda
d3d12commandqueue: Update API name and arguments
...
Accepts multiple fences since single command list may have
multiple dependent resources which are associated with
different GPU engines
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7057 >
2024-06-19 13:19:47 +00:00
Seungha Yang
46131f0cb0
d3d12ipcclient: Fix deadlock when copying texture
...
Fixing deadlock in below case
* GC lock is taken by background thread, and the background thread calls
gst_d3d12_ipc_client_release_imported_data() which takes ipc lock
* ipc lock is already taken in ipc thread and trying to pushing GC data
via gst_d3d12_command_queue_set_notify()
* gst_d3d12_command_queue_set_notify() is trying to take GC lock
but it's already taken by background thread
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6749 >
2024-04-28 12:49:07 +00:00
Seungha Yang
478e49dd73
d3d12: Update copy_texture_region() method
...
Pass external fence value if any and allow passing fence
data so that dependent resources can be released
once copy is done
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6749 >
2024-04-28 12:49:07 +00:00
Seungha Yang
706d5402fa
d3d12: Remove device11on12 wrapping layer
...
It was added to avoid symbol conflict between DirectX-header project
and Windows SDK, but symbol conflict does not happen
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6494 >
2024-04-01 10:37:49 +00:00
Seungha Yang
0c148a96db
d3d12: Add IPC elements
...
Adding d3d12ipcsink and d3d12ipcsrc elements, equivalent to D3D11 ones.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6428 >
2024-03-22 23:09:12 +09:00