Motivation
Mein Denon AVR kann kein OSD anzeigen, wenn das Bild vom HTPC kommt. Woran das genau liegt konnte ich nicht herausfinden. Entweder an der Kombi UHD+SDR+8bit oder am RGB statt YCbCr und bei 4096x2160 geht es sowieso nicht. Für die Ersteinrichtung des AVRs ist das noch ok, im Betrieb ist das aber ein totaler Blindflug. Zumindest habe ich einen Blick auf das AVR-Display, dazu muss ich aber meinen Hals um 160° drehen.
Da ich auf meinen NZ8 zwei Monate warten musste, habe ich ein C# Projekt mit VisualStudio2022 aufgesetzt, welches ein Windows OSD mit der aktuellen Lautstärke anzeigen sollte. Bei der Entwicklung kamen mir immer neue Idee, was und wie man noch alles anzeigen könnte.
Status:
Am Bildschirm das OSD von NNOSD dann z.B. so aus wie unten dargestellt. Layout (Farben, Schriften, Anordnunge) und Inhalt (Parameter) lässt im Rahmen des RTF-Formats frei gestalten und platzieren.
Hat sich ein Parameter geändert, kann dieser für eine definierte Zeitspanne hervorgehoben dargestellt werden und je nach Einstellung die OSD Anzeige triggern.
Das OSD ist tatsächlich ein Overlay, es wird über allen Fenstern angezeigt und ist nicht anklickbar. Es kann nur nicht angezeigt werden, wenn MadVR oder ein Game im Exklusiv-Modus läuft. Da bei mir MadVR nicht im Exklusive-Modus funktioniert nutze ich nur den Fenster Modus. Hier funktioniert NNOSD perfekt. Die Ansicht muss aber auch nicht als OSD eingeblendet werden, sondern kann auch als reguläres Fenster auf einem anderen Bildschirm oder anderen PC dargestellt werden.
Demo-Layout 1
Demo-Layout 2
Im Filmbild schaut das dann zB so aus
Ein paar Details
Aktuell implementiert habe ich die Einbindung meines Denon AVR über ein C#-Klasse die sich für andere HK-Geräte mit IP-Schnittstelle relativ leicht anpassen lässt.
Im Wesentlichen läuft die Kommunikation mit den HiFi-Geräten über IP immer sehr ähnlich ab. Es wird über eine IP-Adresse und einen TCP-Port eine TCP/IP-Verbindung zur Kommunikation hergestellt. Darüber laufen die Kommandos und Antworten, den Syntax kann man aus den meisst öffentlich verfügbaren Protokollspezifikation entnehmen.
Praktisch ist beim Denon, dass er bei jeder Konfigurationsänderung ein IP-Telegramm mit den Infos zur Änderung versendet. Dabei ist es egal, ob diese Änderung von der Fernbedienung, über ein IP-Kommando oder aufgrund eines neue Eingangssignals zustande kommt. Drückt man somit auf der FB auf „lauter“ sendet der AVR daraufhin die neue Lautstärke als Parameter an das Programm, dieses öffnet unmittelbar das OSD und zeigt den Lautstärkewert an. Oder wenn ein Film startet und sich das Tonformat z.B. von Stereo zu Atmos ändert, kann dies auch gleich angezeigt werden. Wie und ob eine Änderung das OSD triggert, kann konfiguriert werden und auch was angezeigt wird oder wie lange das OSD sichtbar bleiben soll. Manche Abfragen liefern unpassende Antworten. Der Parameter „Source Input“ liefert beim Denon zB. „SAT/CBL“ bei mir steckt aber der AppleTV dran. Daher gibt es Dictionary-Listen zur Übersetzung. Sendet der AVR als Eingang „SAT/CBL“ wird im OSD „HDMI 1 -Apple TV“ angezeigt.
Parameter von Geräten die nicht von sich aus Updates senden, können zyklisch abgefragt werden - zB alle 60 Sekunden den Beamer abfragen.
Weitere Details gehen jetzt hier zu weit.
Konfiguration
Das Konfigurationsfenster sieht aktuell wie folgt aus. (siehe unten)
1) Bereich - OSD Layout Designer
Hier kann man wie in einem Textprogramm das Layout entwerfen
Für die Parameter der Devices werden Tags (Platzhalter) eingefügt. zB <D.MV> für den Wert des Parameters „Denon Master Volume“. Wird ein „.HL“ an den Tag angefügt gibt dieser die Formatierung für die Darstellung bei einer Parameteränderung an.
2) Bereich - Devices
Hier werden die verbunden Geräte angezeigt, konfiguriert und getestet.
3) Bereich – Debugging
Für die Entwicklung wichtig – kann man dann später ausblenden
Meinen Fragen an das Forum
- Gibt es Interesse an diesem Programm?
- Welche Geräte soll ich primär noch hinzufügen? Mein JVC Beamer kommt jetzt mal als nächstes dran!
- Ich möchte hier auch die IP-Protokollspezifikationen der HiFi-Geräteherstellen verlinken. Gibt es da schon eine Zusammenstellung, auf der man aufbauen kann?
- Gibt es freiwillige Alfa-Tester?
- Sonstige Ideen?