CSV Importing and Exporting for Pixel Maps
Pixel Map Layouts
Pixel Map layouts are included in CSV exports, and can be imported for complicated Pixel Maps.
-
To export Pixel Map location data via CSV, use Browser > File > Export > CSV, and include Pixel Maps.
-
To import Pixel Map location data via CSV, put a properly-formatted CSV file (see below) on a USB flash drive, and use Browser > File > Import > CSV, and include Pixel Maps.
Pixel Map layout data can be included as part of a larger show file CSV dataset, or on its own - allowing you to use outside tools (like a spreadsheet editor) for creation or editing of complicated layouts.
Pixel Map Layout CSV Block
The Pixel Map CSV Block must follow the following structure:
-
The CSV block must start with START_PIXELMAP and end with END_PIXELMAP
-
The Title Row is required and must immediately follow START_PIXELMAP
-
Each Pixel Row contains the full data set for a single pixel on the map
-
All strings in the data must be separated by commas with no spaces, eg: “CHANNEL,ADDRESS” and “1,3,5,7,9”
START_PIXELMAP |
~Title Row |
~Pixel Row |
~Pixel Row |
~… |
~Pixel Row |
END_PIXELMAP |
Title Row Formatting
The Title Row allows you to define which data columns are used, and the order in which the values in the Pixel Rows will appear. Title Row data column options are:
Column |
Description |
Required? |
Notes |
---|---|---|---|
PIXELMAP |
Pixel Map target number |
Required |
Several Pixel Maps can be defined in the same CSV block. |
LOCATION_X |
Pixel location X |
Required |
The (1,1) pixel location is in the upper-left side of the map. X increases moving down, Y increases moving right. |
LOCATION_Y |
Pixel Location Y |
Required |
|
SCALE_X |
Scale factor X |
Optional |
Default is 1, even if omitted. |
SCALE_Y |
Scale factor Y |
Optional |
|
CHANNEL |
Channel number of pixel |
Optional, if Address & fixture fields are present |
For import, choose either Channel or Address & Fixture Data. |
ADDRESS |
Fixture start address (absolute values only, not port/offset) |
Optional, ignored if CHANNEL is nonzero |
For import, choose either Channel or Address & Fixture Data.
|
FIXTURE_DCID |
Fixture profile’s unique identifier in Eos |
Optional, ignored if CHANNEL is nonzero |
|
MANUFACTURER |
Fixture profile’s manufacturer name |
Optional, ignored if CHANNEL is nonzero |
|
FIXTURE_TYPE |
Fixture profile’s type name |
Optional, ignored if CHANNEL is nonzero |
The Title Row must contain columns describing the location for each Pixel Data row (PIXELMAP, LOCATION_X, and LOCATION_Y columns minimally), but then Eos needs to link the pixel to a fixture profile for proper control.
The easiest way is to define CHANNEL data, imported via CSV into a show file that is already patched. But the CSV file is also capable of using ADDRESS in combination with FIXTURE_DCID or MANUFACTURER & FIXTURE_TYPE fields to define the fixture profile. It is not necessary have all of these columns present for import from other software. They will be used when exported from Eos. So, valid Title Rows could be:
PIXELMAP,LOCATION_X,LOCATION_Y,CHANNEL |
PIXELMAP,LOCATION_X,LOCATION_Y,ADDRESS,FIXTURE_DCID |
PIXELMAP,LOCATION_X,LOCATION_Y,ADDRESS,MANUFACTURER,FIXTURE_TYPE |
Building the Title Row
All columns in the Title Row must be separated by commas with no spaces (see examples below). All required columns must be included - if a required column is omitted, the import will fail. The order of the columns does not matter, so long as the Pixel Data rows match the Title Row.
Any optional columns can be omitted completely, or null values can be left in the Pixel Data rows.
Examples
This is a simple and valid CSV block for importing a channel-based Pixel Map layout:
START_PIXELMAP |
PIXELMAP,LOCATION_X,LOCATION_Y,CHANNEL |
1,1,1,1 |
1,1,2,2 |
1,1,3,3 |
1,2,1,4 |
1,2,2,5 |
1,2,3,6 |
END_PIXELMAP |
This import will result in Pixel Map 1 with a layout of:
This is a CSV block where ADDRESS data exists, but because there is CHANNEL data present, it is ignored and the channels remain patched as they were before the import:
START_PIXELMAP |
PIXELMAP,LOCATION_X,LOCATION_Y,CHANNEL |
1,1,1,12,1 |
1,1,2,24,2 |
1,1,3,36,3 |
1,2,1,48,4 |
1,2,2,60,5 |
1,2,3,72,6 |
END_PIXELMAP |
This import still results in Pixel Map 1 with a layout of:
This is a CSV block with multiple Pixel Maps in the same block:
START_PIXELMAP |
PIXELMAP,LOCATION_X,LOCATION_Y,CHANNEL |
1,1,1,1 |
1,1,2,2 |
1,1,3,3 |
1,2,1,4 |
1,2,2,5 |
1,2,3,6 |
2,1,1,11 |
2,1,2,12 |
2,1,3,13 |
2,2,1,14 |
2,2,2,15 |
2,2,3,16 |
END_PIXELMAP |
This import will result in two pixel maps with the following layouts:
Pixel Map 1:
Pixel Map 2:

Pixel Map Layout CSV Format Rules Summary
-
The CSV block must start with START_PIXELMAP and end with END_PIXELMAP
-
The Title Row is required and must immediately follow START_PIXELMAP
-
Columns may be in any order
-
Optional or Ignored columns may be omitted entirely
-
Either CHANNEL or ADDRESS must be present and nonzero
-
If CHANNEL is nonzero, a channel-type pixel will be imported, using the fixture profile attached to the Channel in Patch
-
ADDRESS, FIXTURE_DCID, MANUFACTURER, and FIXTURE_TYPE are ignored, and can be omitted
-
-
If CHANNEL is omitted or zero, an address-type pixel will be imported. The fixture profile will be chosen as follows:
-
Fixture Profile with matching FIXTURE_DCID
-
Fixture Profile with matching MANUFACTURER & FIXTURE_TYPE strings
-
If neither of these finds a match in the Eos library, the Generic Dimmer fixture profile will be used.
-
-
-
-
The (1,1) pixel location is in the upper-left side of the map. X increases moving down, Y increases moving right.
-
SCALE_X and SCALE_Y default is 1, even if data is omitted. X increases a pixel size moving down, Y increases a pixel size moving right.
-
Pixel Map size:
-
Importing to a new Pixel Map target will make the map sized to fit the Pixel Data rows, based on maximum LOCATION_X and LOCATION_Y values.
-
Importing to an existing Pixel Map target will import the pixels and preserve the existing Pixel Map height and width
-