Overview
ISO/IEC 9637-2:1992, "Information technology - Computer graphics - Interfacing techniques for dialogues with graphical devices (CGI) - Data stream binding - Part 2: Binary encoding," defines a standardized binary encoding for the Computer Graphics Interface (CGI) data stream. For every CGI function syntax (as specified in ISO/IEC 9636 parts 2–6) the standard prescribes an opcode and a precise sequence of parameter data types and bit/byte representations. The Binary Encoding maps abstract CGI types to explicit bit, 8‑bit (octet) and 16‑bit (word) entities to optimize generation and interpretation of graphics command streams across systems.
Key Topics
- Opcode + parameter model: Each function/response is encoded with a class/id opcode, a length, and parameter data.
- Octet and word organization: The octet (8-bit) is the fundamental unit; the word (16-bit) is used for alignment. Representations are word-aligned and padded as needed.
- Representation headers: The standard defines short-form, long-form and extended-form representation headers and encoding functions to identify and parse partitions.
- Primitive data forms: Explicit binary formats for signed/unsigned integers (8/16/24/32-bit variants), octets, fixed-point and floating-point reals (IEEE 754 referenced).
- Precision and special rules: Mechanisms for encoding precision settings, strings, fixed strings, data records, point lists, transformation matrices, color specifiers, and local color precision.
- Efficiency features: Run-length encoding for repeated colors and packed list encodings to pack values tightly for compact streams.
- Extensibility and compatibility: Opcode/class assignment supports future growth; designed to be compatible with CGM/Metafile binary encodings where semantics match.
- Response handling: Soliciting functions and associated response opcodes are defined so interpreters can recognize and correlate requests and replies.
Applications and Who Uses It
- Graphics system implementers: Developers of CGI interpreters, graphics libraries and device drivers use this standard to implement efficient binary command streams.
- Middleware and tool vendors: Metafile, metafile-to-device converters, and rasterization tools adopt the encoding for interoperability and performance.
- System integrators and embedded graphics: Environments where CPU or bandwidth is constrained benefit from lower processing overhead of binary encodings.
- Standards engineers and QA teams: Use the specification to verify conformance, alignment, and correct type representation.
Benefits include reduced processing effort, consistent cross-platform interchange, and compact, high-performance data streams for graphical dialogues.
Related Standards
Keywords: ISO/IEC 9637-2, Binary encoding, CGI, data stream binding, opcode, octet, word-aligned, IEEE 754, computer graphics interoperability.