d3d12: Requires ID3D12Device4 interface

ID3D12Device4::CreateCommandList1() method is required

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5812>
This commit is contained in:
Seungha Yang 2023-12-14 21:07:10 +09:00
parent 818c95e8c3
commit 7443cc00b5

View file

@ -72,6 +72,7 @@ plugin_init (GstPlugin * plugin)
for (guint i = 0; i < 12; i++) {
GstD3D12Device *device = nullptr;
ID3D12Device *device_handle;
ComPtr < ID3D12Device4 > device4;
ComPtr < ID3D12VideoDevice > video_device;
GstD3D11Device *d3d11_device;
HRESULT hr;
@ -83,6 +84,12 @@ plugin_init (GstPlugin * plugin)
break;
device_handle = gst_d3d12_device_get_device_handle (device);
hr = device_handle->QueryInterface (IID_PPV_ARGS (&device4));
if (FAILED (hr)) {
gst_object_unref (device);
continue;
}
hr = device_handle->QueryInterface (IID_PPV_ARGS (&video_device));
if (FAILED (hr)) {
gst_object_unref (device);