AtmoWin

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

AtmoWin

Maintainer: André Weber Autor(en): André Weber, Matthiaz, MacGyver2k

Wer seine AtmoLight Hardware auch unter Windows oder außerhalb von VDR betreiben möchte, ist natürlich auf deren Softwareunterstützung angewiesen. Im diesem Rahmen entstand eine Steuersoftware die unter Microsoft Windows eingesetzt werden kann, sowie eine Modul für den populären VideoLAN Mediaplayer, welches auch für die Linux Versionen verfügbar ist.

Als Basis für die Software diente das Plugin für den VDR - aus diesem wurden die Algorithmen für die Berechnungen der Farbwerte übernommen.

Installation

Entpackt den Inhalt des Downloads (atmoWin_<xyz>.zip) in einen beliebigen Ordner und wenn ihr wollt das AtmoWin gleich beim Start eures PC geladen wird - legt ihr noch eine Verknüpfung zur AtmoWinA.exe in die Autostart Gruppe.

Nach dem Starten des Programmes erscheint dieses Symbol <bild> in eurer Taskleiste neben der Uhr - zum Öffnen des Einstellungsdialoges reicht ein Doppelklick auf das Icon oder ihr Öffnet das Einstellungsmenü via Rechtsklick [Einstellungen].

Einrichtungsdialog

Atmowin settings.png

Bedeutung der Optionen...

[Gerätetyp] erlaubt die Auswahl der angeschlossenen AtmoLight Hardware derzeit gibt es hier nur die Auswahlmöglichkeiten "Atmo" für die aktuelle Hardware und "Dummy" für eine Bildschirmausgabe der Farben speziell für Entwickler ohne eigene Hardware.

[Schnittstelle] hier wird die Serielle Schnittstelle ausgewählt an welche die Hardware angeschlossen ist. (spielt natürlich für "dummy-device" keine Rolle)

[aktiver Effekt] gibt an für was die Hardware gerade genutzt wird derzeit gibt es folgende Funktionen:

  • "Kein Effekt aktiv" -- d.h. AtmoLight bleibt beim Starten des Programmes dunkel
  • "feste Farbe" -- d.h. es wird ein voreingestellte Farbe angezeigt, die Konfiguration der Farbe erfolgt über die Schaltfläche [auswählen] in der Gruppe "Feste Farbe"
  • "live Bild" -- solange kein spezieller Player die Steuerungsschnittstellen von AtmoWin anspricht wird dabei der aktuelle Bildschirminhalt via Screencopyverfahren als Quelle verwendet (Achtung sehr hohe CPU Last ist ein bekanntes Problem). Die Parameter für die Bildberechnung finden sich in der Gruppe "Live Bild Parameter"
  • "Farbwechsel" -- durchläuft zufällige Farben auf allen Kanälen, die Anzahl der Schritte für einen Farbwechsel und die Wartezeit zwischen zwei Schritten stellt man in der Gruppe "Farbwechsel" ein.
  • "Farbwechsel LR" -- der obere und untere Kanal wird abgeschaltet, und die Farben wechseln von Links nach Rechts. Die Anzahl der Schritte für einen Farbwechsel und die Wartezeit zwischen zwei Schritten stellt man in der Gruppe "Farbwechsel LR" ein.

Die Effekte kann man auch über das Kontextmenü des Icons neben der Uhr umschalten. [Bild]


Die Gruppe "Shutdown Farbe" ermöglicht es mit dem Button [auswählen] und der Checkbox [X] verwenden eine Farbe einzustellen die AtmoLight ausgeben soll, wenn die Steuersoftware beendet wird - z.B. beim Herunterfahren von Windows. Ist diese Option deaktiviert bleibt die zuletzt gezeigte Farbe aktiv.

Live Bild Parameter

Diesen Einstellungen widme ich einiger weitergehender Erklärungen. (bitte korrigiert mich wenn diese Falsch sein sollten.) Die Auswahlliste [Quellmonitor] legt den Monitor fest dessen Bildinhalt für den Livemodus verwendet werden soll, solange dieser Modus im GDI Capture Verfahren läuft - sobald eine externe Quelle die Bilddaten liefert. Wie zum Beispiel das VideoLAN Modul oder der "geplante?" DirectShow-Filter spielt diese Einstellung keine Rolle mehr.

Die Option [Widescreenmodus] ermöglicht es bei der Ausgabe des Desktops via TV-Out auf einen 16:9 Fernseher ohne passende Auflösung, wo durch den Overscan / Abschneiden des TV's Bildinhalt vom Desktop nicht angezeigt wird aus der Berechnung auszuschließen. (Quasi umgekehrtes Letterboxing?) (spielt aber für den normalen Betrieb IMHO keine Rolle und kann inaktiv bleiben. Schwarze Balken bei Filmen etc. spielen Prinzipbedingt sowieso keine Rolle)

[Edge Weightning] steuert die Priorität von Pixeln in Abhängigkeit deren Entfernung vom Rand. Aber Achtung dieser Faktor ist nicht linear - sondern wir als Exponent für die Wichtung verwendet. Z.b. wenn die Wichtung der Pixel für den Linken Kanal als Werte von 0..255 festgelegt sind (255 höchste Priorität) ergebe sich somit für den Pixel links außen nach rechts folgende Basiswichtungen die durch "Edge Weightning" manipuliert werden können: folgende Tabelle zeigt am Beispiel für den Linken Kanal und die ersten 5 Spalten wie sich Edgeweightning auswirkt.

Spalte Grundwichtung (Graukeil) Edgeweight 0 Edgeweight 1 Edgeweight 2 Edgeweight 3
Spalte 0 255/255 1,00 1,000 1,000 1,000
Spalte 1 250/255 1,00 0,980 0,960 0,941
Spalte 2 246/255 1,00 0,965 0,931 0,899
Spalte 3 242/255 1,00 0,949 0,901 0,855
Spalte 4 238/255 1,00 0,933 0,870 0,812

Also gilt wenn man Edge Weightning auf 0 setzt - werden alle Pixel des Bildes mit gleicher Priorität betrachtet egal wie weit diese Pixel vom Rand entfernt sind - je höher man Edge Weightning wählt - desto mehr gehen die Pixel des Randes in die Berechnung ein und die Pixel weiter vom Rand entfernt verlieren an Bedeutung.


[Brightness 100%] dient zur Steuerung der Helligkeit der ausgegeben Farben - sollte im Normalfall bei 100% belassen wird, es sei denn eure LED Stripes strahlen zu hell, dann könnt hier nachregeln.

[Darkness Limit] ist eine wichtige Option da darüber gesteuert wird, welche Pixel überhaupt in die Berechnung eingehen - der Wert 0 bewirkt das alle Pixel in die Berechnung eingehen die im HSV Farbmodell V>0 besitzen. Der Wert 1 bedeutet V>10, 2 -> V>20 etc... Werte um 3 haben sich bei mir als ausreichend Wirksam gezeigt, um auch Filme die im Letterboxedformat vorliegen mit guten Optischen Effekten abzuspielen. -> man sollte den Wert keinesfalls zu hoch wählen - da sich sonst nicht mehr viel tut.

[Hue Windowing] [Sat Windowing] sollte man auf 3 belassen. Wen die Werte aber trotzdem interessieren - beim ermitteln der Statisk der häufigsten Farbe müssen für die Anteile HUE und SAT der HSV Pixel Wertegruppen gebildet werden - z.B. ein Wert von 3 bedeutet all Sat Wert 0..2 gehen in die gleiche Gruppe ein, 3..5 ... etc...je grösser man diese Werte ansetzt, desto mehr Farben werden am Ende zu einer Gruppen zusammengeführt - was am Ende wieder zu Farbverfälschungen führen kann - da am Ende der Mittelwert der Gruppe in die Ausgangsfarbe eingeht?

[Filtermodus]

  • "No Filter" -- d.h. die Farben werden sofort wie in der Statistik ermittelt ausgeben - kann zu Flimmern führen und hektischen Farbwechseln (ist nur was um Rechenleistung zu sparen.)
  • "Combined" -- ist der intelligenste Filter, er wechselt die Farben über einen gewissen Zeitraum und ergibt so schöne softe übergänge, aber wenn der Bildinhalt sich schlagartig ändert (z.b. Gewitter mit Blitzen im Film) - reagiert er auch schnell. Die Weichen langsamen Farbübergänge steuert man über den Regler [Filter length] soviele Millisekunden dauert der Übergang dann, [Filter Threshold] hingegen legt den Schwellwert fest bei dem sofort auf die neue Farbe umgeschaltet werden soll.
  • "Percent" -- bedeutet die neue Farbe für einen Kanal setz sich zu einem bestimmten Prozentsatz aus der aktuellen Farbe und der neu berechneten Farbe zusammen, der Prozentsatz wird über den Schieberegler [Filter Smoothness] eingestellt.