summaryrefslogtreecommitdiff
path: root/Documentation/virt/uml/user_mode_linux.rst
diff options
context:
space:
mode:
authorRobert Mader <robert.mader@collabora.com>2025-05-09 15:35:35 +0200
committerDaniel Stone <daniels@collabora.com>2025-05-29 16:32:58 +0100
commit2271e0a20ef795838527815e057f5af206b69c87 (patch)
treefb3d4b9259d28e9c89d623055fc1f4383a6e8d3b /Documentation/virt/uml/user_mode_linux.rst
parent33a46dab18c92da612778b115a600578fa4d42e1 (diff)
drm: drm_fourcc: add 10/12/16bit software decoder YCbCr formatsHEADdrm-misc-next
This adds FOURCCs for 3-plane 10/12/16bit YCbCr formats used by software decoders like ffmpeg, dav1d and libvpx. The intended use-case is buffer sharing between decoders and GPUs by allocating buffers with e.g. udmabuf or dma-heaps, avoiding unnecessary copies and format conversions in various scenarios. Unlike formats typically used by hardware decoders the 10/12bit formats use a LSB alignment. In order to allow fast implementations in GL and Vulkan the padding must contain only zeros, so the float representation can be calculated by multiplying with 2^6=64 or 2^4=16 respectively. MRs or branches for Mesa, Vulkan, Gstreamer, Weston and Mutter can be found at: - https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34303 - https://github.com/rmader/Vulkan-Docs/commits/ycbcr-16bit-lsb-formats/ - https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8540 - https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1753 - https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4348 The naming scheme follows the 'P' and 'Q' formats. The 'S' stands for 'software' and was selected in order to make remembering easy. The 'Sx16' formats could as well be 'Qx16'. We stick with 'S' as 16bit software decoders are likely much more common than hardware ones for the foreseeable future. Note that these formats already have Vulkan equivalents: - VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM - VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM - VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM Signed-off-by: Robert Mader <robert.mader@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Link: https://lore.kernel.org/r/20250509133535.60330-1-robert.mader@collabora.com Signed-off-by: Daniel Stone <daniels@collabora.com>
Diffstat (limited to 'Documentation/virt/uml/user_mode_linux.rst')
0 files changed, 0 insertions, 0 deletions