diff options
-rw-r--r-- | recipes/3375.patch | 53 | ||||
-rw-r--r-- | recipes/gst-plugins-bad-1.0.recipe | 3 |
2 files changed, 56 insertions, 0 deletions
diff --git a/recipes/3375.patch b/recipes/3375.patch new file mode 100644 index 00000000..2d62d9ed --- /dev/null +++ b/recipes/3375.patch @@ -0,0 +1,53 @@ +From 71bfbbf598d060e0cbbc45c518c9c003f76b5334 Mon Sep 17 00:00:00 2001 +From: Seungha Yang <seungha@centricular.com> +Date: Thu, 10 Nov 2022 02:49:38 +0900 +Subject: [PATCH] d3d11screencapturesrc: Fix build error with MSVC x86 + +Delete the code for now. Note that the code block is unnecessary already +--- + .../sys/d3d11/gstd3d11winrtcapture.cpp | 15 --------------- + 1 file changed, 15 deletions(-) + +diff --git a/sys/d3d11/gstd3d11winrtcapture.cpp b/sys/d3d11/gstd3d11winrtcapture.cpp +index 3c2c2cbd7eb..4c876f36cf0 100644 +--- a/sys/d3d11/gstd3d11winrtcapture.cpp ++++ b/sys/d3d11/gstd3d11winrtcapture.cpp +@@ -122,9 +122,6 @@ struct GstD3D11WinRTCaptureInner + { + ~GstD3D11WinRTCaptureInner() + { +- if (item) +- item->remove_Closed (closed_token); +- + CLOSE_COM (session); + CLOSE_COM (pool); + CLOSE_COM (item); +@@ -144,7 +141,6 @@ struct GstD3D11WinRTCaptureInner + ComPtr < IGraphicsCaptureItem > item; + ComPtr < IDirect3D11CaptureFramePool > pool; + ComPtr < IGraphicsCaptureSession > session; +- EventRegistrationToken closed_token; + + bool closed = false; + }; +@@ -441,17 +437,6 @@ gst_d3d11_winrt_configure (GstD3D11WinRTCapture * self) + goto error; + } + +- { +- /* FIXME: This callback does not work for some reasons */ +- auto closed_handler = Callback < ITypedEventHandler < GraphicsCaptureItem *, +- IInspectable * >>(inner, &GstD3D11WinRTCaptureInner::OnClosed); +- hr = inner->item->add_Closed (closed_handler.Get (), &inner->closed_token); +- if (!gst_d3d11_result (hr, self->device)) { +- GST_ERROR_OBJECT (self, "Could not install closed callback"); +- goto error; +- } +- } +- + hr = device_handle->QueryInterface (IID_PPV_ARGS (&dxgi_device)); + if (!gst_d3d11_result (hr, device)) { + GST_WARNING_OBJECT (self, "IDXGIDevice is not available"); +-- +GitLab + diff --git a/recipes/gst-plugins-bad-1.0.recipe b/recipes/gst-plugins-bad-1.0.recipe index 201fe868..5bc36fa3 100644 --- a/recipes/gst-plugins-bad-1.0.recipe +++ b/recipes/gst-plugins-bad-1.0.recipe @@ -85,6 +85,9 @@ class Recipe(custom.GStreamer): 'srt', 'zbar'] use_system_libs = True + # https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3375 + patches = ['3375.patch'] + files_lang = ['gst-plugins-bad-1.0'] files_libs = [ |