gstreamer/subprojects/gst-plugins-bad/sys
Xavier Claessens d86a6715e1 aja: Replace global semaphore with per-device flock()
The global semaphore was never closed/unlinked, causing permission
denied issue if the device is later used by another user. Properly
removing the semaphore when stopping the pipeline would still leave it
open in case of a crash.

With a GStreamer specific name, it was also not preventing other apps to access
the device concurrently.

Finally, if the system has multiple cards, the lock should be per card
and not global (to be confirmed).

Fixes: #3283.

Sponsored-by: Netflix Inc.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6117>
2024-02-15 09:30:20 +00:00
..
aja aja: Replace global semaphore with per-device flock() 2024-02-15 09:30:20 +00:00
amfcodec amfcodec: Update plugin cache 2024-02-10 01:18:27 +00:00
androidmedia androidmedia: add NDK implementation of Android MediaCodec 2024-01-11 19:00:13 +00:00
applemedia vtenc: Fix PAUSED->READY deadlock when output loop is running 2024-01-18 07:37:58 +00:00
asio meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
bluez avdtpsink: post error message when failing to start 2024-02-09 10:09:13 +00:00
d3d11 d3d11screencapturesrc: Hide symbols 2024-01-05 21:27:35 +09:00
d3d12 d3d12screencapturesrc: Fix choppy display 2024-02-11 13:13:18 +00:00
d3dvideosink d3dvideosink: Fix navigation event leak 2023-06-15 05:09:46 +00:00
decklink decklink: Fix typo in element documentation 2023-11-09 07:53:12 +00:00
directshow sys: avoid double definition of symbol MEDIASUBTYPE_I420 2023-03-23 00:56:04 +00:00
directsound meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
dvb doc: Fix newline char between authors 2023-05-20 05:48:23 +00:00
dwrite d3d11: Rework memory allocation params signalling 2023-11-27 15:14:09 +00:00
fbdev meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
ipcpipeline meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
kms kmssink: Add TIDSS auto-detection 2023-10-12 18:25:50 +00:00
magicleap meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
mediafoundation mediafoundation: Fix build with GST_DISABLE_GST_DEBUG 2023-11-03 13:31:03 +00:00
msdk msdk: Use gst_video_info_dma_drm_to_video_info to extract video info 2024-01-31 06:24:13 +00:00
nvcodec nvdecoder: Enable zero-copy only if explicitly enabled 2024-02-13 12:37:07 +00:00
opensles meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
qsv qsvh264enc: Always specify field order 2024-01-25 14:25:16 +00:00
shm shm: drop use of GSlice allocator 2023-02-03 17:48:10 +00:00
tinyalsa meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
uvcgadget uvcsink: use the pad's current caps to update caps_changed 2023-10-06 15:55:23 +00:00
uvch264 meson: Add a wrap file for libgudev 2023-04-19 22:47:19 +00:00
v4l2codecs v4l2codecs: Always chain up to parent decide_allocation function for all codecs 2024-01-09 17:29:52 +00:00
va va: baseenc: Fix the wrong parameter order to call va_map_buffer() 2024-01-30 15:50:23 +00:00
wasapi wasapi: Don't redefine GUIDs when building under newer MinGW 2023-08-09 14:47:57 +00:00
wasapi2 wasapi2device: Ignore activation failed device 2023-11-06 12:28:50 +00:00
wic bad: Update indent 2023-02-28 10:12:31 +00:00
win32ipc win32ipc: Fix pipe handle leak 2023-08-23 18:33:04 +09:00
winks ksdeviceprovider: Fix crash while probing device caps 2024-02-09 14:09:07 +00:00
winscreencap winscreencap: Warn for deprecated plugin use 2022-12-08 17:48:11 +00:00
meson.build aja: Integrate AJA plugin into the build system 2023-10-26 09:36:09 +03:00