gstreamer/subprojects
Robert Mader f982b94cd9 v4l2codecs: decoder: Reorder caps to prefer DMA_DRM ones
Certain V4L2 fourccs don't (yet) have DRM counter parts, in which case
we can't create DMA_DRM caps for them. This is usually the case for
specific tilings, which are represented as modifiers for DMA formats.

While using these tilings is generally preferable - because of e.g.
lower memory usage - it can result in additional conversion steps when
interacting with DMA based APIs such as GL, Vulkan or KMS. In such cases
using a DMA compatible format usually ends up being the better option.

Before the addition of DMA_DRM caps, this was what playbin3 ended up
requesting in various cases - e.g. prefering NV12 over NV12_4L4 - but
the addition of DMA_DRM caps seems to confuse the selection logic.

As a simple and quite robust solution, assume that peers supporting
DMA_DRM caps always prefer these and reorder the caps accordingly.

In the future we plan to have a translation layer for cases where
there is a matching fourcc+modifier pair for a V4L2 fourcc, ensuring
optimal results.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6645>
2024-05-09 16:37:07 +00:00
..
gst-devtools debug-viewer: Fix plugin loading machinery 2024-04-17 16:24:15 +00:00
gst-docs gst: Move GstQueueArray as GstVecDeque to core 2024-05-06 18:25:42 +00:00
gst-editing-services ges-pipeline: Configure encodebin before linking 2024-04-30 15:47:41 +00:00
gst-examples webrtc.js: Fix a small typo 2024-04-07 21:50:17 +00:00
gst-integration-testsuites validate/flvdemux: Stop spamming audio/video on test 2024-04-24 07:47:42 +02:00
gst-libav avviddec: Fix AVPacket leak 2024-04-04 19:39:09 +00:00
gst-plugins-bad v4l2codecs: decoder: Reorder caps to prefer DMA_DRM ones 2024-05-09 16:37:07 +00:00
gst-plugins-base pbutils: fix visualization plugins 2024-05-07 14:48:47 +00:00
gst-plugins-good gst: Move GstQueueArray as GstVecDeque to core 2024-05-06 18:25:42 +00:00
gst-plugins-ugly Back to development 2024-03-05 12:58:57 +00:00
gst-python meson: Fix Python library searching on Windows 2024-04-27 01:30:21 +00:00
gst-rtsp-server gst: Move GstQueueArray as GstVecDeque to core 2024-05-06 18:25:42 +00:00
gstreamer info: Use GstVecDeque for the ringbuffer logger instead of GQueue 2024-05-06 18:25:42 +00:00
gstreamer-sharp Back to development 2024-03-05 12:58:57 +00:00
gstreamer-vaapi Back to development 2024-03-05 12:58:57 +00:00
macos-bison-binary macos-bison: Update to 3.8.2 and add an ARM64 build 2023-08-31 07:50:43 +00:00
packagefiles subprojects: directxmath: Update to 3.1.9 2024-04-02 05:14:53 +09:00
webview2 subprojects: webview2: Fix warning with meson 1.4.0 2024-04-13 14:47:29 +00:00
win-flex-bison-binaries
win-nasm
win-pkgconfig
avtp.wrap
cairo.wrap cairo: update wrap to 1.18.0 2023-12-13 11:51:53 +00:00
dav1d.wrap meson: Declare dav1d dependency in subproject 2024-03-25 10:14:13 +00:00
DirectX-Headers.wrap subprojects: Add DirectX-Headers wrap 2023-12-14 18:08:00 +09:00
directxmath.wrap subprojects: directxmath: Update to 3.1.9 2024-04-02 05:14:53 +09:00
dssim.wrap
dv.wrap
expat.wrap
fdk-aac.wrap
FFmpeg.wrap meson: Make wrap downloads smaller 2024-03-23 13:08:15 +00:00
flac.wrap flac: Add wrap file and add fallback for it to the flac plugin 2024-04-07 11:12:51 +00:00
fontconfig.wrap
freetype2.wrap
fribidi.wrap
gl-headers.wrap
glib-networking.wrap subprojects: update glib-networking wrap to 2.78.1 2024-04-03 18:49:08 +00:00
glib.wrap subprojects: update glib wrap to 2.78.3 2023-12-21 19:22:25 +02:00
gobject-introspection.wrap
graphene.wrap
gst-plugins-rs.wrap Back to development 2024-03-05 12:58:57 +00:00
gtk-sharp.wrap csharp: update gtk-sharp subproject 2023-12-07 17:34:30 +01:00
gtk.wrap
harfbuzz.wrap
json-glib.wrap
lame.wrap
libdrm.wrap
libffi.wrap
libgudev.wrap meson: Update libgudev wrap to 238 2023-12-06 20:17:56 +00:00
libjpeg-turbo.wrap
liblc3.wrap
libmicrodns.wrap
libnice.wrap webrtc: Change requirement to libnice 0.1.22 2024-03-22 08:49:32 +00:00
libopenjp2.wrap
libpng.wrap
libpsl.wrap
libsoup.wrap soup: Link to libsoup in all cases on non-Linux 2024-02-21 09:27:59 +05:30
libsrtp2.wrap
libva.wrap
libwpe.wrap
libxml2.wrap
ntv2.wrap ntv2: Use a patch overlay instead of diff 2023-12-20 18:18:43 +00:00
ogg.wrap
openh264.wrap
opus.wrap meson: Fix various build issues with opus-1.5.1 2024-03-23 13:08:15 +00:00
orc.wrap subprojects: track orc main branch again 2024-03-05 13:25:19 +00:00
pango.wrap pango: update wrap to 1.51.0 2023-12-13 11:51:53 +00:00
pcre2.wrap
pixman.wrap meson: Bump pixman.wrap to latest version 2024-03-23 13:08:15 +00:00
proxy-libintl.wrap
pycairo.wrap
pygobject.wrap
soundtouch.wrap pitch: add validate tests 2024-05-02 13:26:09 +02:00
sqlite3.wrap
vorbis.wrap
vpx.wrap meson: Make wrap downloads smaller 2024-03-23 13:08:15 +00:00
wayland-protocols.wrap gstwayland: Support wp_single_pixel_buffer_v1 2024-01-22 16:51:36 -05:00
webrtc-audio-processing.wrap meson: Update webrtc-audio-processing wrap to 1.3 2023-09-05 11:27:17 -04:00
wpebackend-fdo.wrap
x264.wrap meson: Make wrap downloads smaller 2024-03-23 13:08:15 +00:00
zlib.wrap