Zum Inhalt springen

Open Pixel Control (OPC)

Open Pixel Control (OPC) - Leichtgewichtiges Pixel-Protokoll

Open Pixel Control (OPC) ist ein minimales, TCP/IP-basiertes Protokoll zum Streamen von Pixeldaten an LED-Controller. Es wurde von Micah Scott fuer das Fadecandy-Projekt designed und wird weit in Creative-Coding-Umgebungen verwendet.

Fadecandy USB-LED-Controller-Platine

Technische Spezifikationen

ParameterWert
TransportTCP/IP (Port 7890 Standard)
Max. Pixel pro Nachricht65.535 Bytes (~21.845 RGB-Pixel)
Max. Kanaele256
BefehlstypenPixel-Farben setzen, Farbkorrektur setzen, System-exklusiv
RahmungEinfacher Binär-Header + Daten-Nutzlast

Protokoll-Header-Format

ByteFeldBeschreibung
0KanalAusgangskanal (0-255)
1Befehl0 = Pixel setzen, 1 = Farbkorrektur setzen, 255 = System-exklusiv
2-3LaengeAnzahl Daten-Bytes (Big-Endian, 16-Bit)
4+DatenPixeldaten (RGB 0-255 pro Kanal)

Eine Pixeldaten-Nachricht fuer 3 LEDs (RGBRGBRGB) waere: [0, 0, 0, 9, R, G, B, R, G, B, R, G, B]

Vergleich mit anderen Protokollen

MerkmalOPCArt-NetsACN (E1.31)
TransportTCPUDPUDP
Max. Pixel pro Paket~21.845512 (RGB) / 680 (RGBW)512 (RGB) / 680 (RGBW)
Universum/Kanal-Unterstuetzung256 Kanaele32.768 Universen63.999 Universen
FehlerpruefungKeine (TCP behandelt es)KeineCID + Sequenznummern
KomplexitaetSehr niedrigMittelMittel
LatenzNiedrig (TCP-Overhead)Sehr niedrigSehr niedrig

Tools, die OPC verwenden

ToolZweck
FadecandyUSB-LED-Controller mit OPC-Server
ProcessingPixelBender, OPC-Bibliothek fuer Java-Sketches
openFrameworksofxOPC-Addon fuer C++ Creative Coding
GlediatorLED-Matrix-Steuerungssoftware
PixelControllerWebbasierte LED-Matrix-Steuerung
OPC Python ClientLeichtgewichtige Python-Bibliothek fuer LED-Steuerung

Anwendungsfaelle

  • Interaktive Installationen - Niedrige Latenz, einfach zu integrieren mit Processing, openFrameworks, TouchDesigner
  • Fadecandy-Setups - Das native Protokoll fuer Fadecandy-Controller (8 Ausgaenge, 512 Pixel jeweils)
  • Prototyping - Minimaler Overhead macht es ideal fuer schnelle LED-Sketches
  • Kleine bis mittlere Installationen - Bis ~21K Pixel pro Kanal ohne Multiplexing

Art-Net vs. sACN Vergleich ->