Configuring Composition Manager

This section describes some example configurations for displays in io-winmgr.


Note: io-winmgr configuration directives aren't covered here. Refer to the winmgr.conf configuration file for more information.

Configuration 1:

The following configuration provides access for applications to layer 0, as EGL level 0:

begin display
 begin plane
  wfd-pipeline = 1
 end plane
end display

Any windows that are created on this plane (or layer, or egl level) will run autonomously. Only one window can be displayed at a time. Visible windows are queued up into a FIFO and only the first visible window is displayed. If the displayed window is destroyed, or if it's visible is toggled to invisible the next window in the FIFO will be displayed if a window is queued.

Configuration 2:

The following configuration is similar to the previous configuration, however an additional plane corresponding to WFD pipeline 2 was added:

begin display
 begin plane
  wfd-pipeline = 1
 end plane
 begin plane
  wfd-pipeline = 2
  source-alpha = on
 end plane
end display

Source alpha blending is also enabled on this pipeline. By adding another plane with a pipeline, you can create two windows on separate layers that are accessible via EGL levels 0 and 1. Source alpha is also enabled on wfd-pipeline 2 (egl level 1), which means that any window that is placed on layer 1 will have a blended alpha channel. This is sample configuration provides a basic example of composition at the hardware level.


Note: To enable source alpha or source chroma on a pipeline, the corresponding layer must support those capabilities.

Configuration 3:

This configuration enables GF composition on layer 0. Any windows that are created with EGL level 0, will be composited by the GF composition module.

begin display
 begin plane
  egl-config = native rgba8888
  level = 0
 end plane
end display

Since Composition Manager is handling the composition of windows for this layer, multiple windows can be created on the same layer and can be composited together and displayed on a single layer. You can control window properties such as size, global alpha, source alpha blending, and visibility in order to get the desired composited effect.

Configuration 4:

The following configuration describes composition using GLES2. GLES2 compositing, source chroma, the background and a software cursor are all enabled on the second layer.

begin display
 begin plane
  wfd-pipeline = 1
 end plane
 begin plane
  egl-config = glesv2 rgb565
  wfd-pipeline = 2
  source-chroma = on
  sw-cursor = on
  background = FFFFFF
 end plane
end display

Note that software cursors can only be placed on composited planes. Another plane corresponding to layer 0, is also enabled. This allows a GLES2 composited frame-buffer to be composited at the hardware level with the autonomous window below. Since source chroma is enabled, the background colour will be used as the transparent colour key. Any pixels that match the background colour will be transparent.