← all articles

Pixel mapping: where light ends and video begins

How many pixels fit in one universe, why 170 is the magic number, what a lighting console actually computes and when you really do need a media server.

Let's start with the number that determines everything else: 170.

That is how many RGB pixels fit in one DMX universe. Divide 512 channels by three and you get 170 and change, with two channels left over. Add white (RGBW) and it's 128. Add a per-pixel dimmer and it's 102.

The entire economics of LED structures grows out of that number.

A 144-pixel strip is almost a whole universe. A three-by-three-metre wall with 10 cm pitch is 900 pixels — 2700 channels — six universes. Six DMX lines or six outputs on network nodes, and that is before we have discussed what to show on them.

So the first question in any pixel-mapping conversation is not "which effects" but "how many universes are you prepared to deliver".

What mapping actually is

You have N fixtures, each with its own channels, scattered across universes in whatever order the technician found convenient to patch. Physically they hang as a rectangle, a serpentine, or a ring around the portal.

Mapping is a correspondence table: the pixel at (x, y) is these channels. That's it. The effect then draws a picture in coordinates, and the table distributes the colours across channels.

It sounds trivial, but this is exactly where home-grown solutions break, and here is how.

Pixel order inside a fixture. Manufacturers wire LEDs differently: left to right, serpentine (first row leftward, second rightward), from a corner. If the order in the profile doesn't match reality, your wave travels in zigzags and the picture falls apart into stripes. In Flux Lights the order is set in the fixture profile — once, after which it lives in the library.

Fixture layout on the grid. Five strips hanging vertically with a gap are not a "5 × 144 matrix" but five stripes with spaces between them. Lay them out flush and the effect crosses them as one continuous canvas, making the gaps look like a mistake. Lay them out with spacing and it treats them as five separate elements, which is usually what you want.

In the app the layout is done by dragging with a live preview, plus there are automatic variants: packed, flush, by content.

What a lighting console computes and what a media server does

Here runs a boundary worth understanding before you buy anything.

A lighting console thinks in channels. An effect is a function of pixel coordinate and time: a rainbow shifts hue along X, a wave drives a sine, a fire computes noise. The result goes straight into the same 512-byte frames as the rest of the light and out at the same 40 frames per second. No intermediate raster, no compositing.

An image, GIF or video on the matrix takes the same road, only the colour source is a frame from a file rather than a formula: sample the pixel by coordinate, distribute across channels.

A media server thinks in images. It has layers, masks, crossfades between sources, geometry correction for curved surfaces, synchronisation across several outputs, resolution matched to a specific screen. It renders a picture at full resolution and only then sends it wherever it goes.

A practical rule: if the structure reads as "light" — stripes around the portal, decor backlight, pixel heads, a ball made of strips — a console is enough. If it reads as "a screen" and content made by a video artist is going onto it, you need a media server, with the console conducting it.

The in-between case is a wall that must show both abstract animation and a logo. A logo on a 30 × 30 matrix reads poorly whatever you use, so this is usually a conversation about expectations rather than tools.

What it costs in resources

The matrix is computed by the same engine as the rest of the light, at 40 frames per second. The bottleneck is not computation: a modern processor won't even notice a thousand pixels per frame.

The bottleneck is delivery. A thousand RGB pixels is six universes, and six Art-Net universes at 40 frames is roughly 1.3 Mbit/s. Not much by itself, but forty universes is already 8–9 Mbit of continuous UDP, and on a cheap switch shared with guest Wi-Fi it starts dropping packets. A dropped lighting frame is a stripe that blinks, and the person who notices it is the audience.

For large structures: a separate network, gigabit and a managed switch. That isn't luxury, that is the cost of the wall.

Worth trying before the structure is ordered

Lay the future wall out in the app and count the universes before anyone buys it. Very often it turns out that the beautiful idea of "five-centimetre pitch" becomes twenty universes and three network nodes, while ten centimetres becomes six universes and one node. The budget difference is a multiple; the perceptual difference from twenty metres away is almost nothing.

Read next