Nirbheek Chauhan
75848859f1
kms: Bump libdrm requirement to 2.4.108
...
DRM modifier support requires drmModeFormatModifierBlobIterNext()
which was added in 2.4.108. See:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174#note_2673883
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7991 >
2024-11-28 15:43:42 +00:00
Jakub Adam
34a400cc0e
kmsbufferpool: Accept DMA_DRM caps in the config
...
Only linear modifier is supported due to the dumb allocator's
limitation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
Jakub Adam
9e81a6517b
kmssink: ensure we have a valid vinfo_drm after set_caps
...
Consequently drop the check in import_dmabuf
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
Jakub Adam
d04a03d176
kmssink: enumerate drm formats when IN_FORMATS not present
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
He Junyan
6ad6b765ab
kmssink: Do not provide DMA buffer pool for non-linear caps
...
The dumb allocator does not support modifiers, so we can not allocate
non-linear buffers by ourself.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
He Junyan
e4d7ac5989
kmssink: Handle the DMA buffer importing correctly
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
He Junyan
a925630d87
kmssink: Add DMA kind caps into sink caps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
He Junyan
6f78e1c3e0
kmssink: Add helper functions to create DMA and raw caps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
He Junyan
3f510d1296
kmssink: Add a helper function to collect formats and modifiers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
He Junyan
9df377efc1
kmssink: Add modifier to gst_kms_allocator_dmabuf_import
...
Use the new drmModeAddFB2WithModifiers() API for binding the
non-linear BO.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5174 >
2024-11-16 13:19:13 +08:00
Benjamin Gaignard
c67e6cdec7
kmssink: Add IMX-DCSS auto-detection
...
Add IMX DCSS display controller into list of
auto-detected modules.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7685 >
2024-10-19 04:54:18 +00:00
Sebastian Dröge
6233eb0ff3
common: Stop using GQuark-based GstStructure field name API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7432 >
2024-09-26 19:21:29 +03:00
Hugues Fruchet
5801e17160
kmsallocator: fix stride with planar formats
...
This fixes a regression introduced by the merge request
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3801
The extrapolated stride was computed but not used, resulting in the same
stride being applied to all planes.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7566 >
2024-09-24 12:57:16 -04:00
He Junyan
ea0dce26e0
kmssink: Do not close the DRM prime handle twice
...
The prime_fds for multi planes may be the same. For example, on Intel's
platform, the NV12 surface may have the same FD for the plane0 and the
plane1. Then, the DRM_IOCTL_GEM_CLOSE will close the same handle twice
and get an "Invalid argument 22" error the second time.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6914 >
2024-05-23 15:45:24 -04:00
Rahul T R
6fbe4d55c4
kmssink: Add TIDSS auto-detection
...
Add Texas Instruments TIDSS display controller into list of
auto-detected modules.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5469 >
2023-10-12 18:25:50 +00:00
Marek Vasut
f18e30cf3b
kmssink: Add ST STM32 LTDC auto-detection
...
Add STM32 LTDC controller into list of auto-detected modules.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4858 >
2023-06-14 22:35:27 +00:00
Marek Vasut
b8b53cafcf
kmssink: Add NXP i.MX8M Plus LCDIFv3 auto-detection
...
Add i.MX8M Plus LCDIFv3 controller into list of auto-detected modules.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4858 >
2023-06-14 22:35:27 +00:00
Nirbheek Chauhan
55ee0635d3
meson: Fix libdrm and vaapi configure checks
...
We do not need fallback: for libdrm checks because the wrap file
already has a [provide] section.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4428 >
2023-04-28 15:21:10 +05:30
Nicolas Dufresne
37f2d2ac42
kmsallocator: Port to the new DRM Dumb Allocator
...
This ports the KMS allocator to use the DRM Dumb allocator from the allocators
library.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3801 >
2023-03-14 21:50:57 +00:00
Tim-Philipp Müller
85476eab08
kms: drop use of GSlice allocator and remove unnecessary check
...
g_new0() will never return NULL but just abort if it can't
allocate memory (same for g_slice_new).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3784 >
2023-02-03 17:48:10 +00:00
Nicolas Dufresne
6981384184
kmssink: Fix compilation without kernel headers
...
There was a drm/drm_mode.h included added recently, drm/ is usually
referencing the linux kernel header, but we only requires the libdrm
headers to be installed. On top of this, including drm_mode.h is never
needed as its already included by drm.h.
Fixes #1596
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3452 >
2022-11-23 08:39:49 +00:00
Bill Hofmann
afb18e0e31
kmssink: add HDR10 infoframe support
...
If stream has HDR10 metadata and HDMI device EDID supports it, this patch
will set the DRM properties accordingly.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3303 >
2022-11-21 17:55:41 -05:00
Bill Hofmann
daecbd1ff0
kmssink: Add skip-vsync property
...
The legacy emulation in DRM/KMS drivers badly interact with GStreamer and
may cause the framerate to be halved. With this property, users can disable
vsync (which is handled internally by the emulation) in order to regain the
full framerate.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3303 >
2022-11-21 17:55:20 -05:00
Thibault Saunier
6a4425e46a
meson: Call pkgconfig.generate in the loop where we declare plugins dependencies
...
Removing some copy pasted code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2970 >
2022-09-01 21:17:35 +00:00
U. Artie Eoff
135edee484
kmssink: add fd property
...
This allows an application to provide their own opened DRM device
fd handle to kmssink. For example, an application can lease
multiple fd's from a DRM master to display on different CRTC
outputs at the same time with multiple kmssink instances.
Specifying the fd property is not allowed when driver-name
and/or bus-id properties are specified.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2807 >
2022-08-18 18:31:59 +00:00
Nicolas Dufresne
bab9041c4b
Port plugins to gst_video_format_info_extrapolate_stride()
...
This reduces code duplication and simplify addition of new
pixel formats into related plugins.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1567 >
2022-02-20 22:32:55 +00:00
Dmitry Osipenko
644969e0ba
kmssink: Support auto-detection of NVIDIA Tegra driver
...
NVIDIA Tegra SoCs have a separate (from GPU) display controller. It's
the primary display device on all Tegra SoCs. Add Tegra to the list
of primary DRM drivers.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1514 >
2022-01-13 04:50:55 +00:00
Thibault Saunier
019971a3c7
Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir
2021-09-24 16:14:36 -03:00