Color DMD Widget

The Color DMD widget is used to render a display on a slide and to apply options that make it look like a DMD (dot filters, etc.).

Here’s an example:

../../../_images/display_color_dmd2.png

This is how you get a “Color DMD” look on your LCD display. (The How to give your on-screen window the DMD “dot look” guide walks you through that.)

Note that the Color DMD Widget really is unrelated to whether you have a physical RGB DMD in your machine. (Though if you do have a physical DMD, you can add a Color DMD widget to a slide in your on-screen window to see the Color DMD when you’re running your machine in virtual mode.)

Settings

type: color_dmd
width:
height:
source_display:
gain:
pixel_color:
dark_color:
shades:
dot_filter:
pixel_size:
blur:
bg_color:

type: color_dmd

Note

Color DMD widgets also have “common” widget settings for position, opacity, animations, style, etc. Those are not listed here, but are instead covered in common widget settings page.

Also remember that all widget settings can be controlled via widget styles, rather than you having to set every setting on every widget.

width:

The width (in pixels) that the color DMD will be drawn on the slide. Note that this does not control how many pixels (or dots) are in the DMD, rather, it’s how big it is on the slide. (The number of dots on the DMD is controlled via the source display’s width setting.)

For example, you might have a window that’s 1024x768, and a source DMD display that’s 128x32.

If you set width: 896 for your color DMD widget, that means it will be 896 pixels wide in your 1024 window, and each drawn “dot” in the display will be 7 pixels wide in the window (896 / 128 = 7).

This setting is required.

height:

The height that the color DMD will be drawn on the slide. See the “width:” setting above for details.

source_display:

The name of the display (from your displays: section) that will be the source for the content of this color DMD widget. The default is dmd, which means you would need to have a display called “dmd” in the displays: section of your machine config.

gain:

A numeric multiplier that will be applied to every color channel of every pixel in this color DMD widget.

For example, if you set gain: 1.2, then a pixel on this color DMD’s source display that has a color of (100, 100, 100) will be drawn with the color (120, 120, 120). (Each element multiplied by 1.2).

Note that values above 255 will be capped at 255.

The default is 1.0 which means that the original colors are unchanged. You can play with this to act as a “poor man’s” brightness control, but values too far above or below 1.0 will probably look weird.

pixel_color:

A color value (either a color name or a list of RGB color values) that will be multiplied by every pixel from the source display before it’s drawn on the slide. This gives you the ability to “tint” the display (the RGB channels in the pixel_color are separated applied to the corresponding RGB channels in the display).

The default is None which means this is disabled and the pixels show up with their regular colors.

dark_color:

Note: This feature is not currently implemented. TODO

This is the color of the pixels when they’re “off” (black). Default is 221100.

shades:

This is the number of shades each color channel will be reduced to. The default is 0 which disables it and uses the full 256 shades per color channel, meaning the color DMD widget will use have 256 shades each of red, green, and blue. (In other words, the default is standard 24-bit color for a total of 16.7m colors.)

Note that this setting can produce weird results depending on your source content. If you want an old school look, you might have better luck creating your videos and graphics with fewer colors and then not setting the shades option here.

Also note if you want to use full color (no shade reduction), it’s better to set this to 0 and not 256 since 0 will disable this processing which will be less overhead.

dot_filter:

Enabled the “dot” look. Setting this to False means that the color DMD will not have dots. Default is True.

pixel_size:

The size of the individual “dots”, expressed as a decimal relative to what their full size would be. A value of 1.0 will mean that each pixel will fill 100% of the space (e.g. no space in between), and it won’t really look like separate pixels.

The default is 0.5.

You can play with this setting (and the blur: setting below) to get a look that you like.

blur:

This is the radius of the “glow” of the pixels (when using dot_filter: true). This is expressed as a decimal relative to the size of the pixels. The default is 0.1 which means there’s a 10% glow radius.

This will be in addition to the pixel_size:, so the defaults...

pixel_size: 0.5
blur: 0.1

...would result in the pixel being 50% of the space, the glow being 20% (10% on each side), leaving 30% for spacing in between the pixels.

bg_color:

The background color which is used for the spaces in-between the pixels when you have dot_filter: true. Default is 191919ff which is a dark gray color that’s fully opaque.

If you set the alpha channel to be transparent (like 19191900), then the dots will appear “on top” of whatever else is on the slide behind the color DMD widget.

Examples

The example config files section of the documentation contains examples of color DMD widgets.

More examples are in the How to give your on-screen window the DMD “dot look” guide.