gstreamer/subprojects/gst-plugins-bad/sys/v4l2codecs
Nicolas Dufresne 33aafc4a91 v4l2codecs: Sort formats to avoid quality lost
When the driver prefered format is not picked by downstream, the
decoders needs to select another format from the list. The selection
was currently unsorted, resulting in 10bit data often being stripped
to 8bit.

To solve this, reorder the formats in an HW preference order. This order
deviates slightly from the preferred order in libgstvideo. This is to
prefer bandwidth saving over better CPU alignment. As an example NV15 is
prefered over P010. We also prefer tiled over linear.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8522>
2025-02-21 19:11:47 +00:00
..
linux v4l2codecs: decoder: Translate V4L2 formats into DRM fourcc/mod pairs 2024-12-19 20:55:59 +00:00
gstv4l2codecallocator.c v4l2codecs: Add remove buffers helpers 2024-10-19 01:39:04 +00:00
gstv4l2codecallocator.h v4l2codecs: Use pragma once 2025-02-06 00:58:01 +00:00
gstv4l2codecalphadecodebin.c doc: v4l2codecs: Document all decoders 2025-02-06 00:58:01 +00:00
gstv4l2codecalphadecodebin.h doc: v4l2codecs: Document all decoders 2025-02-06 00:58:01 +00:00
gstv4l2codecav1dec.c v4l2codecs: av1: Allow inter-frames resolution change 2025-02-10 13:36:57 +00:00
gstv4l2codecav1dec.h v4l2codecs: Don't needlessly expose decoder types 2025-02-06 00:58:01 +00:00
gstv4l2codecdevice.c v4l2codecs: Add a doc generation mode 2025-02-06 00:58:01 +00:00
gstv4l2codecdevice.h v4l2codecs: Use pragma once 2025-02-06 00:58:01 +00:00
gstv4l2codech264dec.c doc: v4l2codecs: Document all decoders 2025-02-06 00:58:01 +00:00
gstv4l2codech264dec.h v4l2codecs: Don't needlessly expose decoder types 2025-02-06 00:58:01 +00:00
gstv4l2codech265dec.c doc: v4l2codecs: Document all decoders 2025-02-06 00:58:01 +00:00
gstv4l2codech265dec.h v4l2codecs: Don't needlessly expose decoder types 2025-02-06 00:58:01 +00:00
gstv4l2codecmpeg2dec.c doc: v4l2codecs: Document all decoders 2025-02-06 00:58:01 +00:00
gstv4l2codecmpeg2dec.h v4l2codecs: Don't needlessly expose decoder types 2025-02-06 00:58:01 +00:00
gstv4l2codecpool.c v4l2codecs: decoder: Translate V4L2 formats into DRM fourcc/mod pairs 2024-12-19 20:55:59 +00:00
gstv4l2codecpool.h v4l2codecs: Use pragma once 2025-02-06 00:58:01 +00:00
gstv4l2codecvp8dec.c doc: v4l2codecs: Document all decoders 2025-02-06 00:58:01 +00:00
gstv4l2codecvp8dec.h v4l2codecs: Don't needlessly expose decoder types 2025-02-06 00:58:01 +00:00
gstv4l2codecvp9dec.c doc: v4l2codecs: Document all decoders 2025-02-06 00:58:01 +00:00
gstv4l2codecvp9dec.h v4l2codecs: Don't needlessly expose decoder types 2025-02-06 00:58:01 +00:00
gstv4l2decoder.c v4l2codecs: Sort formats to avoid quality lost 2025-02-21 19:11:47 +00:00
gstv4l2decoder.h v4l2codecs: Remove uneeded per-codec abstract class 2025-02-06 00:58:01 +00:00
gstv4l2format.c v4l2codecs: Sort formats to avoid quality lost 2025-02-21 19:11:47 +00:00
gstv4l2format.h v4l2codecs: Sort formats to avoid quality lost 2025-02-21 19:11:47 +00:00
meson.build docs: port plugins to explicit sources 2025-01-13 19:17:13 +01:00
plugin.c docs: v4l2codecs: Add plugin index documentation 2025-02-06 00:58:01 +00:00