# VERSION: v0.8.3 (2026-09-20 07:38 UTC)
# Laser Sim for Raspberry Pi - config.txt

SUBNET=0        #Art-Net Sub-Net; min:0 max:15 std:0
UNIVERSE=0      #Art-Net DMX Univerum; min:0 max:15 std:0
ANZAHL=4        #Anzahl der simulierten Laser; min:0 max:25 std:1
DMX_START=200   #Startadresse des ersten Lasers, alle weiteren folgen im Abstand von 20 Kanälen; min:1 max:490 std:100
ZOOM=1          #1 = Original Zoom verhalten | 2 = Zoomen in Kreis; std:1
#SCAL_MULT=2.0   #Multiplikator Skalierung, '.' als Dezimaltrennzeichen, min: 0.01 max: 9.9

#ACHTUNG!! Die hier eingegebene GPIO Nummer wird nicht weiter auf Gültigkeit geprüft!!!!
#Übersicht möglicher Eingaben z.B. hier: http://elinux.org/RPi_BCM2835_GPIOs
#oder hier: http://developer-blog.net/hardware/raspberry-pi-gpio-schnittstelle-teil-1/
LED_GPIO_PIN=23 #GPIO Pin für eine LED zur Artnet Statusanzeige | -1 = Benutze keine LED

#MEDIA_PLAYER_CHANNEL=40   #DMX-Kanal RELATIV zu DMX_START (nicht absolut!), unabhaengig vom Laser-Block:
                            #z.B. bei DMX_START=100 bedeutet 40 den absoluten Art-Net-Kanal 140
                            #Der Kanal-Wert selbst: 0 = Laser Simulation, 1-255 = Media Player (waehlt Datei aus ./media/ in Einerschritten)
                            #auskommentiert/-1 = Media Player deaktiviert

#FOG_DENSITY_CHANNEL=41       #DMX-Kanal RELATIV zu DMX_START fuer Nebeldichte (Festival-Haze-Effekt, macht
                               #Laserstrahlen sichtbar); Wert 0-255 wird linear auf 0-100% Dichte abgebildet
                               #auskommentiert/-1 = kein Nebel-Effekt

#BEAM_VISIBILITY_CHANNEL=42   #DMX-Kanal RELATIV zu DMX_START fuer die Sichtbarkeit der Laserstrahl-Kegel,
                               #die von einem gemeinsamen Fluchtpunkt (Buehne/Tiefe) zu jedem aktiven Gobo
                               #ausfaechern; Wert 0-255 wird linear auf 0-100% Sichtbarkeit abgebildet
                               #auskommentiert/-1 = keine Laserstrahl-Kegel (nur die reinen Gobo-Muster)

#TILE_COUNT_CHANNEL=43        #DMX-Kanal RELATIV zu DMX_START, Schalter fuer Kachel-Effekt (statt 1:1
                               #wird das Bild in einem Raster wiederholt): 0-63=aus, 64-127=4 Kacheln (2x2),
                               #128-191=16 Kacheln (4x4), 192-255=64 Kacheln (8x8)
                               #auskommentiert/-1 = kein Kachel-Effekt

#TILE_MIRROR_CHANNEL=44       #DMX-Kanal RELATIV zu DMX_START, Schalter fuer Spiegelungsmodus der Kacheln:
                               #0-84=1:1 Uebernahme (keine Spiegelung), 85-169=vertikal gespiegelt (obere
                               #Rasterhaelfte normal, untere auf dem Kopf), 170-255=horizontal gespiegelt
                               #(linke Rasterhaelfte normal, rechte seitenverkehrt)
                               #auskommentiert/-1 = wirkt wie 1:1 (nur relevant, wenn TILE_COUNT_CHANNEL aktiv ist)

# Farbverlauf-Raster-Effekt (Hintergrund-Layer): diagonaler Farbverlauf, der langsam durchlaeuft,
# hinter einem Kachel-Raster mit leicht "atmenden" Luecken. Alle Kanaele relativ zu DMX_START.
#GRADIENT_INTENSITY_CHANNEL=45   #Sichtbarkeit, 0-255 linear -> 0-100%; auskommentiert/-1 = Effekt aus
#GRADIENT_START_R_CHANNEL=46     #Anfangsfarbe Rot,   0-255 direkt (wie normale Gobo-Farbkanaele)
#GRADIENT_START_G_CHANNEL=47     #Anfangsfarbe Gruen, 0-255 direkt
#GRADIENT_START_B_CHANNEL=48     #Anfangsfarbe Blau,  0-255 direkt
#GRADIENT_END_R_CHANNEL=49       #Endfarbe Rot,   0-255 direkt (im Regenbogen-Modus ungenutzt)
#GRADIENT_END_G_CHANNEL=50       #Endfarbe Gruen, 0-255 direkt (im Regenbogen-Modus ungenutzt)
#GRADIENT_END_B_CHANNEL=51       #Endfarbe Blau,  0-255 direkt (im Regenbogen-Modus ungenutzt)
#GRADIENT_SPEED_CHANNEL=52       #Durchlaufgeschwindigkeit, 0-255 linear -> langsam bis schnell
#GRADIENT_MODE_CHANNEL=53        #Schalter: 0-127=zwei Farben (Start/Ende, hin und her),
                                  #128-255=Regenbogen (volles Farbspektrum, Start/Endfarbe ungenutzt)

#RENDER_WIDTH=960   #Breite des Rohvideo-Streams, den unser Programm an mpv schickt; min:64 max:3840 std:960
#RENDER_HEIGHT=540  #Hoehe des Rohvideo-Streams; min:64 max:2160 std:540
#RENDER_FPS=25      #Ziel-Framerate des Rohvideo-Streams; min:1 max:60 std:25
                     #Hoehere Werte = schaerferes Bild, aber mehr CPU/Pipe-Last. 960x540@25fps
                     #ist ein guter Kompromiss fuer den Pi4; bei Rucklern zuerst hier runterschrauben.

#TUNNEL_STEPS=10    #Anzahl der verkleinerten Gobo-"Echo"-Kopien im Laser-Tunnel-Effekt (siehe
                     #BEAM_VISIBILITY_CHANNEL); min:1 max:60 std:10. Mehr Schritte = glatterer/
                     #dichterer Tunnel, aber mehr Rechenlast pro Frame.

#ARTNET_DEBUG=0     #1 = jedes empfangene/geaenderte Art-Net-Signal mit Universe/Kanal/Wert nach
                     #journalctl loggen (hilft bei "kommt ueberhaupt was an?"-Fragen). Nur zum
                     #Debuggen einschalten - erzeugt bei aktivem Sender viele Logzeilen. std:0

#RECORD_VIDEO=0            #1 = Bildschirmdarstellung (Laser-Simulation) zusaetzlich als MP4 aufzeichnen
                            #(z.B. fuer Demo-Zwecke). Waehrend der Media Player aktiv ist, liefert
                            #unser Renderer keine Frames - die Aufzeichnung pausiert in der Zeit
                            #automatisch. std:0
#RECORD_VIDEO_PATH=./recording.mp4   #Zieldatei der Aufzeichnung
