DRM database property: pixel blend mode

Back to index

Details

Name
pixel blend mode
Flags
<none>
Type
enum
Attached to
plane
Specification
{"None", "Pre-multiplied", "Coverage"}

Documentation

Pixel blend mode is set up with drm_plane_create_blend_mode_property().
It adds a blend mode for alpha blending equation selection, describing
how the pixels from the current plane are composited with the
background.

 Three alpha blending equations are defined:

 "None":
	 Blend formula that ignores the pixel alpha::

		 out.rgb = plane_alpha * fg.rgb +
			 (1 - plane_alpha) * bg.rgb

 "Pre-multiplied":
	 Blend formula that assumes the pixel color values
	 have been already pre-multiplied with the alpha
	 channel values::

		 out.rgb = plane_alpha * fg.rgb +
			 (1 - (plane_alpha * fg.alpha)) * bg.rgb

 "Coverage":
	 Blend formula that assumes the pixel color values have not
	 been pre-multiplied and will do so when blending them to the
	 background color values::

		 out.rgb = plane_alpha * fg.alpha * fg.rgb +
			 (1 - (plane_alpha * fg.alpha)) * bg.rgb

 Using the following symbols:

 "fg.rgb":
	 Each of the RGB component values from the plane's pixel
 "fg.alpha":
	 Alpha component value from the plane's pixel. If the plane's
	 pixel format has no alpha component, then this is assumed to be
	 1.0. In these cases, this property has no effect, as all three
	 equations become equivalent.
 "bg.rgb":
	 Each of the RGB component values from the background
 "plane_alpha":
	 Plane alpha value set by the plane "alpha" property. If the
	 plane does not expose the "alpha" property, then this is
	 assumed to be 1.0

Driver support

✗ adp
✓ amdgpu
✗ apple
✗ ast
✗ bochs-drm
✗ drm-rp1-dsi
✗ evdi
✓ exynos
✗ gma500
✓ i915
✗ imx-dcss
✓ imx-drm
✗ imx-lcdif
✗ jmgpu
✗ kirin
✗ mediatek
✓ meson
✗ mga2
✗ mgag200
✓ msm
✗ msm_drm
✗ mxsfb-drm
✓ nouveau
✓ nvidia-drm
✓ omapdrm
✗ panel-mipi-dbi
✗ pvr
✗ qxl
✗ radeon
✗ rcar-du
✓ rockchip
✓ rvdisplay
✗ simpledrm
✗ smifb
✓ spacemit
✓ starfive
✗ stm
✗ sun4i-drm
✓ sunxi-drm
✗ tegra
✗ tilcdc
✗ v3d
✗ vboxvideo
✓ vc4
✗ virtio_gpu
✗ vivante
✗ vkms
✗ vmwgfx
✓ vs-drm
✓ xe
✗ xlnx