ILDA Image Data Transfer Format

Similar documents
ILDA Image Data Transfer Format

Nintendo. January 21, 2004 Good Emulators I will place links to all of these emulators on the webpage. Mac OSX The latest version of RockNES

Color Reproduction Complex

Data Storage and Manipulation

Calibration Best Practices

MaxView Cinema Kit Quick Install Guide

2.4.1 Graphics. Graphics Principles: Example Screen Format IMAGE REPRESNTATION

Show Designer 3. Software Revision 1.15

Stream Labs, JSC. Stream Logo SDI 2.0. User Manual

TV Character Generator

8088 Corruption. Motion Video on a 1981 IBM PC with CGA

4040C COMMUNICATION MODULE

Table of content. Table of content Introduction Concepts Hardware setup...4

Part 1: Introduction to Computer Graphics

MTL Software. Overview

Chapt er 3 Data Representation

Color Reproduction Complex

Computer Graphics. Raster Scan Display System, Rasterization, Refresh Rate, Video Basics and Scan Conversion

PASS. Professional Audience Safety System. User Manual. Pangolin Laser Systems. November 2O12

Achieve Accurate Critical Display Performance With Professional and Consumer Level Displays

LE062XF DCC Decoder for Atlas N Scale Locomotives

Pivoting Object Tracking System

INTERLACE CHARACTER EDITOR (ICE) Programmed by Bobby Clark. Version 1.0 for the ABBUC Software Contest 2011

Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 5 CRT Display Devices

NOTICE: This document is for use only at UNSW. No copies can be made of this document without the permission of the authors.

Power saving in LCD panels

for Television ---- Formatting AES/EBU Audio and Auxiliary Data into Digital Video Ancillary Data Space

Optical Technologies Micro Motion Absolute, Technology Overview & Programming

TA Document Enhancements to the AV/C Tape Recorder/Player Subunit Specification Version 2.1

Data Representation. signals can vary continuously across an infinite range of values e.g., frequencies on an old-fashioned radio with a dial

VGA 8-bit VGA Controller

General Items: Reading Materials: Miscellaneous: Lecture 8 / Chapter 6 COSC1300/ITSC 1401/BCIS /19/2004. Tests? Questions? Anything?

No Trade Secrets. Microsoft does not claim any trade secret rights in this documentation.

ATSC Standard: Video Watermark Emission (A/335)

8/30/2010. Chapter 1: Data Storage. Bits and Bit Patterns. Boolean Operations. Gates. The Boolean operations AND, OR, and XOR (exclusive or)

!"#"$%& Some slides taken shamelessly from Prof. Yao Wang s lecture slides

Automatically Creating Biomedical Bibliographic Records from Printed Volumes of Old Indexes

EECS 140 Laboratory Exercise 7 PLD Programming

4x50 User s guide Modbus TCP

LCD and Plasma display technologies are promising solutions for large-format

Warranty and Registration. Warranty: One Year. Registration: Please register your product at Port, or. or Windows.

6.UAP Project. FunPlayer: A Real-Time Speed-Adjusting Music Accompaniment System. Daryl Neubieser. May 12, 2016

Calibrating the timecode signal input

Pre-processing of revolution speed data in ArtemiS SUITE 1

LCD STIMULUS DISPLAY for ENV-007/008 CHAMBERS

SCANNER TUNING TUTORIAL Author: Adam Burns

Design and Implementation of an AHB VGA Peripheral

[MS-CFB-Diff]: Compound File Binary File Format. Intellectual Property Rights Notice for Open Specifications Documentation

SMPTE 292M EG-1 Color Bar Generation, RP 198 Pathological Generation, Grey Pattern Generation IP Core - AN4088

High Performance Raster Scan Displays

P1: OTA/XYZ P2: ABC c01 JWBK457-Richardson March 22, :45 Printer Name: Yet to Come

The Computer Revolution in Education:

The Extron MGP 464 is a powerful, highly effective tool for advanced A/V communications and presentations. It has the

SIDRA INTERSECTION 8.0 UPDATE HISTORY

Sapera LT 8.0 Acquisition Parameters Reference Manual

SCENEMASTER 3F QUICK OPERATION

Palette Master Color Management Software

Processing. Electrical Engineering, Department. IIT Kanpur. NPTEL Online - IIT Kanpur

ITEC400 Summer Training Report

Design of VGA Controller using VHDL for LCD Display using FPGA

IMS B007 A transputer based graphics board

Telemetry Standard RCC Document , Appendix L, April 2009 APPENDIX L ASYNCHRONOUS RECORDER MULTIPLEXER OUTPUT RE-CONSTRUCTOR (ARMOR)

ATSC Candidate Standard: Video Watermark Emission (A/335)

AE16 DIGITAL AUDIO WORKSTATIONS

Downloads from:

Source/Receiver (SR) Setup

ADAT DC Coupling Modifications for Laser Graphic Recording

LaCie 321 LCD Monitor

Advanced Techniques for Spurious Measurements with R&S FSW-K50 White Paper

LEDBlinky Animation Editor Version 6.5 Created by Arzoo. Help Document

VIDEO 101 LCD MONITOR OVERVIEW

Chapter 3 Digital Data

Decade Counters Mod-5 counter: Decade Counter:

Ch. 1: Audio/Image/Video Fundamentals Multimedia Systems. School of Electrical Engineering and Computer Science Oregon State University

Remote Director. Apple 23 LCD Display. Collaborative Soft Proofing using the I. MANUFACTURER INTRODUCTION. SWOP Application Data Sheet

3 rd Party Interfaces. Version Installation and User Guide

Scan Converter Quick Installation Guide

Analyzing Modulated Signals with the V93000 Signal Analyzer Tool. Joe Kelly, Verigy, Inc.

Laser phosphor cinema projectors. Reduced total cost of ownership, superior image quality

Reading. 1. Displays and framebuffers. History. Modern graphics systems. Required

Introduction to LasrPlay and DVDplay Synchronizers

Professor Henry Selvaraj, PhD. November 30, CPE 302 Digital System Design. Super Project

Supplement to the Operating Instructions. PRemote V 1.2.x. Dallmeier electronic GmbH. DK GB / Rev /

TG-1000 SPIM functions

Operations. BCU Operator Display BMTW-SVU02C-EN

APPLICATION NOTE AN-B03. Aug 30, Bobcat CAMERA SERIES CREATING LOOK-UP-TABLES

feno before light and beyond

HIGH SPEED ASYNCHRONOUS DATA MULTIPLEXER/ DEMULTIPLEXER FOR HIGH DENSITY DIGITAL RECORDERS

The BAT WAVE ANALYZER project

Data Manipulation. Audio and Image Representation. -Representation, Compression, and Communication Errors. Audio Representation

THE ASTRO LINE SERIES GEMINI 5200 INSTRUCTION MANUAL

Cable Tester Automation by Christopher E. Strangio, CAMI Research Inc.

GEC ITS Teaching and Learning Classroom Hotline Multimedia Classroom

For an alphabet, we can make do with just { s, 0, 1 }, in which for typographic simplicity, s stands for the blank space.

Data Encoding CTPS 2018

Contents 1 INSTALLATION THE 4 MAIN PARTS OF LASER CONTROLLER EDITOR/FRAMELISTS...4

Digital Representation

CHAPTER 7 BASIC GRAPHICS, EVENTS AND GLOBAL DATA

Agilent PN Time-Capture Capabilities of the Agilent Series Vector Signal Analyzers Product Note

[COE STYLE GUIDE FOR THESES AND DISSERTATIONS]

Transcription:

INTERNATIONAL LASER DISPLAY ASSOCIATION Technical Committee Revision 006, April 2004 REVISED STANDARD EVALUATION COPY EXPIRES Oct 1 st, 2005 This document is intended to replace the existing versions of the ILDA Image Data Transfer Format. It is available for public usage and evaluation for the next year. Please direct any questions or comments concerning this document and your experiences with it to the ILDA Technical Committee Introduction... 3 ILDA Coordinates... 9 ILDA Color Tables... 13 Color Table Notes... 15 Revision 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association This document 2004 International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee Contributors: Steve Heminover, Aura Technologies, Inc. Patrick Murphy, Pangolin Laser Software Michael Sollinger, LaserAnimation Sollinger GmbH Peter Jakubek, LaserAnimation Sollinger GmbH Matt Polak, Raven Systems Design, Inc. Kelly and Frank Plughoff, Full Spectrum Lasers REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association This document 1997 International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee The International Laser Display Association has developed an image data transfer format, used to exchange frames between systems. You can obtain frames from any program with an ILDA conversion program, and transparently load them directly into any system that supports ILDA standard frames. Similarly, you can save frames in ILDA format, to sell or trade with users of other systems that read ILDA format. The ILDA format is computer and disk independent. For example, it does not rely on or require files to be in PC format. To trade with another user who has ILDA files, you can either transfer the files by network, or you can use disks in a format that both of you can read and write (such as PC 3.5" 1.44 MB). The ILDA format was developed by ILDA's Technical Committee, under the direction of Steve Heminover of Aura Technologies. By its nature, the format had to support systems of differing abilities. There are some known shortcomings to the format. However, it works well in its stated goal to allow frame interchange from one system to another. The most obvious shortcoming is in the area of color. Originally, the ILDA format contained X, Y, Z and color number information for each point. The color number was arbitrary color #1 on one system might be black, while on another system it is white. For this reason, it was usually impossible to correctly transfer colors between different systems (at least, using the default color palettes on each system). To address this shortcoming, two proposals were made to ILDA. One was to have an ILDA standard color palette. When loading or saving ILDA format, a system's default colors would be translated into the closest matching ILDA standard palette. This proposal was adopted, and is available separately from the Technical Committee. The second proposal was to add a color header to the ILDA format. The color section would describe the RGB values used for each color number. The ILDA-reading program could use this information to remap color numbers correctly. This proposal was adopted in June 1992, for Revision 004. However, to the best of our knowledge, no system reads or writes the color header at the time of writing. REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association Page 1 This document 1997 International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee The desire for writing true color information (one RGB color value for each geometry point in the frame) led to a redefinition of the sections in the current ILDA file format, as well as overall restructuring of the data format to facilitate easier expansion in the future. The new header information makes it easier and faster skipping of unwanted or unknown data sections. For backwards compatibility the new true color datasets have not been added to the coordinate data, which would require a new format. Instead a new section containing the true color data is added. This section must precede the coordinate section. Older software versions will skip this section but still can read the coordinate data and look-up table based color numbers. The true color data follow the order of the color look-up table. The new section headers allow the easier and faster implementation of future expansions of the file format and even non-public proprietary formats. Page 2 REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association This document 1997International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee Introduction Formatting Items out-dented like this are part of the standard. Items indented and in a smaller font like this, contain descriptive or explanatory material. They are useful in understanding and applying the standard, but they are not an official part of the standard. Nomenclature and Structure This document describes the official International Laser Display Association format for transferring single and/or multiple frames between systems. The purpose of the standard is transfer of graphic images frames and animations between systems. It is not optimized for space or speed, and it is not currently concerned with display issues such as point output rate. The official name of this standard is ILDA Image Data Transfer Format or ILDA Format. The official name for files conforming to this standard is ILDA Format Files. There are other ILDA formats for areas such as hardware. Use the longer name of the standard on first reference. The first part of the ILDA Format incorporates the introduction. The second part covers the ILDA Coordinates section. It incorporates the two subsections Coordinate Header and Coordinate Data. The third part covers the ILDA Color Tables section. It incorporates the three subsections Color Table Header, Color Table Data and Color Table Notes. For accurate communications, use the names given in quotes above when discussing the various parts of the ILDA Format. Throughout this document, the word must is used in capitals to stress required conformance with the ILDA Format. The word should in capitals or lower case indicates suggested conformance. REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association Page 3 This document 1997 International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee Overview An ILDA file consists of sections with coordinate or color information. There are currently four types of sections: Coordinate information for two-dimensional frames Coordinate information for three-dimensional frames Color lookup table information True color information Each section has two subsections, a header and data. The header subsection begins with the ASCII characters ILDA. A format code identifies the section type: 0 for 2D, 1 for 3D, 2 for color tables, 3 for true color information. Other information follows. The most important from a reading standpoint is information on the number of coordinates or colors. This is used by the reading program to determine how many times to read data. In format 0 and 1, there is one section (header plus data) for each frame. In format 2, there is one section for each defined color table. Depending on the system, all frames may share the same color table, each frame may have its own, or there may be some other implementation. In the true-color scheme, Format 3, each frame has its own color table data, which is always connected to the coordinate data and must proceed each associated frame. Even if true color data are defined for a frame, a color table may be present for this frame as well. Depending on the receiving system true color data or the color table may be used together with this frame. Binary vs. ASCII The terms binary 0 or binary 1 refer to bit codes 0000 0000 and 0000 0001. They are used to avoid confusion with the ASCII characters 0 or 1. Byte Order For values which span more than a single byte, the multiple byte ordering followed is that of the Big Endian / Motorola standard. The most significant byte will occur first, the least significant byte last For example in a 16-bit word, the two bytes 11111111 00000000 represent the decimal number 65280, not 255. Page 4 REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association This document 1997International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee Physical Implementation This standard does not specify any physical implementations, such as using IBM disk formats. It is a software-only format. It is up to the transferring parties to have the data readable by both systems. Where modem transfer is to take place, any CRC or checksum calculations are left up to the communications programs' protocol. Upward Compatibility A program which reads ILDA Format Files MUST be able to read all past revisions at time of programming. A program which writes ILDA Format Files SHOULD write the most current ILDA format at time of programming, but could write an earlier format if desired. Skipping Unfamiliar Formats A reading program MUST skip a section (ILDA header plus data) if the format byte in the sector is unfamiliar. For example, a program may understand format 0 (3D images) and format 1 (2D images). If it sees a byte indicating format 9 (currently undefined), it does not process further data except as necessary to find the ASCII letters ILDA indicating start of next header. A reading program should calculate offsets (using Total Points or Total Colors data bytes) when skipping ahead, instead of blindly searching for the ILDA sequence. This is because ILDA may also occur within frame names or as an accidental sequence of data bytes. REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association Page 5 This document 1997 International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee ILDA Sections Section Header This part of the standard describes the general header for sections. Be sure to note and take action based on bytes 5-8, the format code. ILDA header description one for each section Byte Description Remarks 1-4 I, L, D, A The ASCII letters ILDA, identifying an ILDA format header. 5-8 Format Code unsigned 32 Bit (Big endian, Motorola) 0 3D images 1 2D images 2 Color lockup tables 3 24-bit RGB true color table All other numbers are reserved for future use 9-12 Data Length Format code 3 and higher Data length specifies the number of data bytes to follow starting at byte 13 (if present) the number of bytes in this section as an unsigned, 32 bit value. The older formats (0 2) have special headers as shown in the latter part of this document 13-nn Data These are the data to follow this header. Page 6 REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association This document 1997International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee ILDA True Color True Color Header ILDA true color header description one for each frame and MUST proceed the coordinate section. Byte Description Remarks 1-4 I, L, D, A The ASCII letters ILDA, identifying an ILDA format header. 5-8 0, 0, 0, 3 unsigned 32 Bit format code (Big endian, Motorola) Format Code 3 for true color section 9-12 Data Length Data length specifies the number of data bytes to follow starting at byte 13 (if present) as an unsigned, 32 bit value. 13-16 Number of points Total number of points in this frame in unsigned binary. This number has to be identical to the total number of points used in coordinate header of the corresponding frame. If the number of points is 0, then this is to be taken as the end of file header and no more data will follow this header. REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association Page 7 This document 1997 International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee True Color Data True color data record description one for each frame Byte Description Remarks 17 Red A 8-bit binary (unsigned) number that represents the intensity of the red component of the laser beam. Value ranges from 0 (no red) to 255 (full red) 18 Green A 8-bit binary (unsigned) number that represents the intensity of the red component of the laser beam. Value ranges from 0 (no green) to 255 (full green) 19 Blue A 8-bit binary (unsigned) number that represents the intensity of the blue component of the laser beam. Value ranges from 0 (no blue) to 255 (full blue at) 20-N color information for next point Repeat point true color format until last point has been written. N+1 Next header Next ILDA header follows. Page 8 REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association This document 1997International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee ILDA 2D Coordinates 2D Coordinate Header ILDA 2D coordinate header description one for each frame Byte Description Remarks 1-4 I, L, D, A The ASCII letters ILDA, identifying an ILDA format header. 5-8 0, 0, 0, 1 Format Code 1 for 2D images 9-16 Frame name Eight ASCII characters with the name of this frame. 17-24 Company name Eight ASCII characters with name of the company who created the frame. 25-26 Number of points Total number of points in this frame in binary (1-65535). If the number of points is 0, then this is to be taken as the end of file header and no more data will follow this header. 27-28 Frame number If the frame is part of a group such as an animation sequence, this represents the frame number. Counting begins with frame 0. Frame range is 0-65535. 29-30 Number of frames Total number of frames in this group or sequence. Range is 1-65535. 31 Scanner head The scanner head or projector number that this frame is to be displayed on. Range is 0-255. 32 Future Reserved for future use. Must be set to binary 0. REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association Page 9 This document 1997 International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee 2D Coordinate Data 2D data record description one record for each point Byte Description Remarks 33-34 X coordinate A 16-bit binary twos complement (signed) number. Extreme left is -32768; extreme right is +32767. (All directions stated using front projection.) 35-36 Y coordinate A 16-bit binary twos complement (signed) number. Extreme bottom is - 32768; extreme top is +32767. 37-38 Status code Bits 0-7 (lsb) indicate the point's color number. This value is used as an index into a color lookup table containing red, green and blue values. See ILDA Color Lookup Table Header section for more information. Bits 8-13 are unassigned and should be set to 0 (reserved). Bit 14 is the blanking bit. If this is a 0, then the laser is on (draw). If this is a 1, then the laser is off (blank). Note that all systems must write this bit, even if a particular system uses only bits 0-7 for blanking/color information. Bit 15 (msb) is the last point bit. This bit is set to 0 for all points except the last point. A 1 indicates end of image data. This was done for compatibility with certain existing systems; note that a zero in bytes 25-26 (Total Points) is the official end-of-file indication. 39-N Next X coordinate Repeat point format until last point has been written. N+1 Next header Next ILDA header follows. If this header has a zero value for Total Points (bytes 25-26), then it is the last header in the file and the file can be closed. Page 10 REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association This document 1997International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee ILDA 3D Coordinates 3D Coordinate Header ILDA 3D coordinate header description one for each frame Byte Description Remarks 1-4 I, L, D, A The ASCII letters ILDA, identifying an ILDA format header. 5-8 0, 0, 0, 0 Format Code 0 for 3D images 9-16 Frame name Eight ASCII characters with the name of this frame. 17-24 Company name Eight ASCII characters with name of the company who created the frame. 25-26 Total points Total number of points in this frame in this frame as an unsigned word (1-65535). If the number of points is 0, then this is to be taken as the end of file header and no more data will follow this header. 27-28 Frame number If the frame is part of a group such as an animation sequence, this represents the frame number. Counting begins with frame 0. Frame range is 0-65535. 29-30 Total frames Total frames in this group or sequence. Range is 1-65535. 31 Scanner head The scanner head or projector number that this frame is to be displayed on. Range is 0-255. 32 Future Reserved for future use. Must be set to binary 0. REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association Page 11 This document 1997 International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee 3D Coordinate Data 3D coordinate data record description one for each point Byte Description Remarks 33-34 X coordinate A 16-bit binary twos complement (signed) number. Extreme left is -32768; extreme right is +32767. (All directions stated using front projection.) 35-36 Y coordinate A 16-bit binary twos complement (signed) number. Extreme bottom is -32768; extreme top is +32767. 37-38 Z coordinate A 16-bit binary twos complement (signed) number. Extreme rear (away from viewer; behind screen) is - 32768; extreme front (towards viewer; in front of screen) is +32767. These two bytes do not appear if the format code (byte 8) indicates 2D frames. 39-40 Status code Bits 0-7 (lsb) indicate the point's color number. This value is used as an index into a color lookup table containing red, green and blue values. See ILDA Color Lookup Table Header section for more information. Bits 8-13 are unassigned and should be set to 0 (reserved). Bit 14 is the blanking bit. If this is a 0, then the laser is on (draw). If this is a 1, then the laser is off (blank). Note that all systems must write this bit, even if a particular system uses only bits 0-7 for blanking/color information. Bit 15 (msb) is the last point bit. This bit is set to 0 for all points except the last point. A 1 indicates end of image data. This was done for compatibility with certain existing systems; note that a zero in bytes 25-26 (Total Points) is the official end-of-file indication. 41-N Next X Repeat point format until last point has been written. coordinate N+1 Next header Next ILDA header follows. If the next header has a zero value for Total Points (bytes 25-26), then it is the last header in the file and the file can be closed. Page 12 REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association This document 1997International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee ILDA Color Tables This part of the standard describes the color table format. See the notes following for more information. Color Table Header ILDA header description one for each color table Byte Description Remarks 1-4 I, L, D, A The ASCII letters ILDA representing the organization. Same as coordinate header. 5-7 0, 0, 0, 2 Format Code 2 for color lookup table. 9-16 Palette name Eight character ASCII name of palette. Should be identical to name used in coordinate header. 17-24 Company name Eight character ASCII name of the company who created the palette. Should be identical to name used in coordinate header. 25-26 Total colors Total number of RGB values defined in lookup table. For example, a digital RGB system with 1 bit each for R, G and B would specify eight colors. Although two bytes are used here, the number of colors must be between 2 and 255. This is because the color Status Code is limited to 8 bits total. Single-color systems should specify two colors, even if they do not support blanking. Color #0 should have RGB values of 0-0-0, Color #1 should have RGB values of 255-255-255. A value of 0 is reserved. 27-28 Palette number A software program may have more than one palette lookup table. These bytes describe which lookup table is being defined. Counting begins with palette 0. Palette range is 0-65535. Systems with absolute color can use one lookup table per frame. This allows any frame to contain up to 256 colors. 29-30 Future Reserved for future use; must be zero. 31 Scanner head This represents which head or scanner pair the lookup table(s) is being defined for. Range is 0-255. 32 Future Reserved for future use; must be zero. REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association Page 13 This document 1997 International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee Color Table Data Data description one for each color entry Byte Description Remarks 33 Red # 0 value Intensity value of red for first color in table (color # 0). Value ranges from 0 (off) to 255 (full on). 34 Green # 0 value Intensity value of green for color # 0. 35 Blue # 0 value Intensity value of blue for color # 0. 36 Red # 1 value Intensity value of red for second color in table (color # 1). 37 Green # 1 value Intensity value of green for color # 1. 38 Blue # 1 value Intensity value of blue for color # 1. 39+ Repeat red, green and blue for each entry. Total entries must equal value in color header bytes 25-26. Page 14 REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association This document 1997International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee Color Table Notes Introduction Coordinate information a point's location is straightforward. The use of color lookup tables is not. There are many different ways of using blanking and color. There are many different ways of interpreting the color information in the ILDA Coordinates section. Because systems and implementations vary, the Color Table Notes go into detail. They help standardize the transfer of color information even across very different systems. Nomenclature Special terms used in this document are defined as follows. These definitions may be more specific than those in the ILDA Laser Glossary. Blanking Control of the laser's brightness on a point-by-point basis, either by turning it on and off or by varying its intensity. In this document refers to both digital and analog techniques. Digital Blanking The beam can only be turned on or off. Analog Blanking Continuously variable control of the laser brightness. Intensity is often used as a synonym. REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association Page 15 This document 1997 International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee Digital RGB Mixing the three primary colors of light by turning them on or off. Can produce 8 total colors: red, green, blue, yellow (R+G), magenta (R+B), cyan (G+B) and white (R+G+B), with black the eighth color. Analog RGB Mixing the three primaries using intensity control. Many systems have 256 levels of control over each color, providing 16,777,216 possible combinations of red, blue and green levels. Spectrum Color A single signal causes color change. Usually done by moving a prism to select different wavelengths; hence the name. Color-blanking Describes systems which use only the color devices to blank. Many analog RGB and spectrum color systems use this technique. Separate-blanking The opposite of color-blanking. A system which has a blanking device controlled separately from any color device. By definition also incorporates single color, blanking-only systems. Page 16 REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association This document 1997International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee Use of the Color Header The reading program should assume a single-color image in the absence of any Color Table Header. Reading programs MUST read in both older, non-color-header files, and newer files with color headers. An image file does not have to contain a color header. If a color header is found as part of an ILDA Format File (along with coordinate headers and data), the color header may appear anywhere in the file before, in the middle of, or after sectors with coordinate headers and data. It is also possible to make palette files that contain only a color header. The reading program MUST be able to read color Table Headers and Data anywhere in the file even if they are the only elements of the file. It is strongly suggested that the color header be the first header in a file, but this is not a requirement. In most systems, there is only one, or a few, color lookup tables. When a new table is loaded, all existing colors change to those in the new lookup table. This means that the last color header encountered takes precedence over all prior color headers that have the same lookup table number (byte 26). There may be other systems where every frame can have its own palette. (Absolute color systems would be handled like this.) To provide for these cases, the following rule applies: the color header defines a palette for the following frames. If a new color header appears, frames appearing afterwards take on the new palette values. This is why the color header should be the first header in a file. The writing program should write a Color Table Header and Data before Coordinate Headers and Data. The color header defines a palette for all frames which follow until the next color header (for multiple-palette systems). REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association Page 17 This document 1997 International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee Color, Intensity and Blanking The following rules are defined so that color usage on separate-blanking and color-blanking systems is consistent. All writing programs MUST write bit 14 of the Status Code. This blanking bit is a 0 if laser is on (draw) and a 1 if laser is off (blanked). For separate-blanking systems, then this bit simply reflects the blanking status. For color-blanking systems, then this bit MUST be 0 if any of the RGB values is greater than 0, and MUST be a 1 if the RGB values are all 0. If a system does not use 8-bit color resolution, the color resolution MUST be mapped onto 8 bits. For example, if a system has 2-bit resolution (four different color levels), the level is multiplied to fit full scale 0-225. Two-bit 0 remains 8-bit 0, 2-bit 2 becomes 85, 2 becomes 170 and 3 becomes 255. Even if a system does not use any color or blanking, it is suggested to write a Color Table Header. For compatibility with the proposed ILDA Standard Color Palette, specify just two colors in the table Color 0 with RGB values of 0, and Color 1 with RGB values of 255 and write all points using Color 1. Reading programs have a number of ways to derive blanking, intensity and color information. Some choices are left up to the programmer to allow some flexibility. The following sections discuss these choices for different types of systems. Page 18 REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association This document 1997International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee Separate-blanking Systems Digital Blanking Obtain blanking information either from the blanking bit, or derive it from the RGB information. For example, a programmer could decide to blank any points whose combined RGB values are less than 10% of full scale. This option ensures that very dim lines are not drawn by a digital (on/off) system. Analog Blanking with Digital RGB Derive intensity information from the RGB information. Convert the analog RGB levels into digital RGB levels (0 or 255). It is up to the reading program to determine the mapping algorithm that translates analog RGB into the desired information. For example, the intensity could be merely the average of the combined RGB values. Color-blanking Systems Analog RGB Reading programs using analog RGB should use the RGB information directly. REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association Page 19 This document 1997 International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.

ILDA Technical Committee Backwards Compatibility Color-blanking Systems If bit 14 indicates blanked, use a color number with RGB registers all set to zero. This ensures that blanking takes precedence over the color number in Status Code bits 0-7. Conversely, if bit 14 indicates visible, check to be sure the Status Code color number in bits 0-7 has combined RGB values greater than 0. This ensures that visible points are indeed visible. Reading programs which read image files without color headers have no idea which color numbers get which RGB values. The only absolute color information is the Status Code blanking bit. This presents a problem for color-blanking systems. It is possible that the Status Code color number bits (0-7) will not match the blanking bit (bit 14). That is, because there is no color header, a blanked point could be assigned a color which would make it visible on these systems. The system above solves this dilemma. Defining RGB Red, green and blue wavelengths are assumed to be color-balanced, although exact wavelengths are not specified. If your system uses nonstandard RGB wavelengths, you MUST correct as best you can when reading and writing. The system used by ILDA provides eight bits each of red, green and blue information. This makes for 16.7 million potential colors. These RGB values are defined in absolute terms; that is, they are not necessarily the specific RGB signals which may be sent to your particular color system. The ILDA standard assumes color-balanced RGB wavelengths similar to those used in high-quality computer monitors. Those wavelengths are not specified in the standard, so exact color matching will not be possible at this time. However, you must read and write color-balanced RGB levels even if your system does not use those internally. (You will need to use a second lookup table to convert from your projector's RGB signals to absolute RGB.) Page 20 REVISION 006, April 2004 PRELIMINARY STANDARD 2004 International Laser Display Association This document 1997International Laser Display Association. All rights reserved. For reproduction permission contact ILDA s Executive Director.