Beim Debuggen sollte man ohnehin alle nicht zwingend benötigten Plugins abschalten, CEC-Remote fällt da wohl in der Regel in diese Kategorie. Es müssten dann auch noch die Webseite und die Doku angepasst werden. Ich sehe deswegen keinen Mehrwert in dem Patch, zumal ich die eigene Logfunktion des Plugins eigentlich mal auf das VDR-Logging umbauen wollte.
Posts by Ulrich Eckhardt
-
-
Habe ich derzeit nicht vor. Wenn man sein System auf Debug-Level stellt bekommt man halt Debug-Ausgaben. Alles andere wäre überraschend.
-
-
Die Funktionen nutzen auch die selben Log-Level wie der VDR. Die entsprechen esyslog/isyslog/dsyslog, nur das die noch den Plugin-Namen in der Log-Meldung mit ausgeben. Hast du mal ein Beispiel wo was nicht richtig funktioniert.
-
Es gibt eine neue Version vom CEC Remote Plugin.
Änderungen:- Es gibt in der <global> Section jetzt den Tag <physical> um die CEC-Adresse manuell zu setzten.
- Zwei Racing Conditions sind gefixt, die zu Abstürzen führen konnten, speziell wenn keine Keymap definiert wurde.
- Umstellung des Code auf C++17 Standard.
Doku gibt es unter https://www.uli-eckhardt.de/vdr/cec.de.shtml.
Git Repo https://git.uli-eckhardt.de/?p=vdr-plugin-cecremote.git
Download der aktuellen Version unter https://www.uli-eckhardt.de/vdr/download/v…emote-1.6.0.tgz -
Für die 1.6.0 habe mal noch in der <global> Section den Parameter <physical> eingeführt, da kann man eine Adresse vergeben.
-
Ich verwende da die normalen VDR Logging Funktionen, die möchte ich nicht überschreiben. Wenn du den VDR mit -l3 startest ist das halt sehr geschwätzig.
-
btw, wie kann ich die cecremote logs runterdrehen
cecdebug ist nur für die Debug-Ausgaben vom CEC-Adapter. Ansonsten wird das nur über die -l Option vom vdr gesteuert.
-
Die letzten paar Änderungen waren wohl nicht ursächlich, die haben nur eine Racing-Condition getriggert. Ich habe jetzt mal etwas aufgeräumt, den C++ Code modernisiert und die Racing Condition gefixt. Ist alles schon mal im Repo, hat aber noch keine neue Version.
-
Mit neueren VDR-Versionen scheint das initialisieren einer default-Keymap nicht zu klappen. Wenn man mal eine von Hand angelegt hat ist das erst mal OK. Als Workaround nimm erst mal die Angehängte cecremote.xml als Startpunkt bis ich einen Fix habe.
-
Ich habe auch mit cecremote 1.5.2 wieder den gleichen Fehler, wie schon hier berichtet.
Anbei ein Auszug aus den Boot Journal mit Stack traces:
Was gibt denn ein cec-client -l aus? (vdr vorher stoppen)
-
Hallo Ulrich,
beim erstellen des vdr-cecremote plugin paket für Gentoo fällt mir was an Deinem Repository auf:
- zum einen wäre wünschenswert ein tar.gz file von dem commit mit dem Version Tag runterladen zu können. Das müsste man in der cgit config einstellen können.
Das aktuelle tar File findet sich immer am Ende meiner CEC-Doku.
zum anderen - wenn ich das repo clone und genauer anschaue - ist in branch "master" der neueste commit ddf32222f1728e996efb876f2c35afc6cf65f583 - und das Tag 1.5.2 ist nicht zu sehen. Das Tag 1.5.2 ist auf commit 30324b0bd17600aed51495a4faacef21c127c4ec
Mir ist bei git commit --amend was schief gegangen
. Ich habe noch mal eine Version 1.5.3 released, da ist aber nur die Version unterschiedlich. -
D.h. ich würde gerne eine Taste auf der FB belegen, die den TV und die Soundbar aktiviert und den richtigen Eingang wählt. Geht das evtl. schon?
Eventuell kann man das Über den Umweg von <menu> lösen. In der cecremote.xml legt man ein Menü an, z.B. bei mir zum Einschalten des TV:
Code
Display More<menu name="TV TOGGLE" address="0"> <!-- When menu is selected, toggle TV power state --> <onpoweron> <exec>/video/scripts/tv_on</exec> <poweron>TV</poweron> <makeactive /> </onpoweron> <onpoweroff> <!-- Send CEC commands to power off TV --> <poweroff>TV</poweroff> </onpoweroff> </menu>
Und in der keymacros.conf legt man dann ein Macro an, das dieses Menü auswählt, z.B.: -
Es gibt eine neue Version vom CEC Remote Plugin.
Änderungen:- Die keys kVolUp und kVolDn können im globalen Kontext an ein konfigurierbares Device weitergeleitet werden.
- Zugriff auf eine uninitialisierte Variable gefixt.
- Kein Support mehr für ältere libcec < 4.0.0
Doku gibt es unter https://www.uli-eckhardt.de/vdr/cec.de.shtml.
Git Repo https://git.uli-eckhardt.de/?p=vdr-plugin-cecremote.git
Download der aktuellen Version unter https://www.uli-eckhardt.de/vd…d/vdr-cecremote-1.5.2.tgzBugreports, Anmerkungen, Tippfehler oder Verbesserungen zur Doku werden wie immer gerne genommen
. -
Was hast du denn sonst noch so an Plugins installiert. Der Crash scheint nicht vom CEC-Plugin zu kommen, das läuft, während es scheinbar in einem anderen Plugin ein Problem gibt:
Nov 10 09:14:03 yavdr vdr[13701]: [cecremote] Menu Watch DVD (player)
Nov 10 09:14:03 yavdr vdr[13701]: [cecremote] onstart poweron
Nov 10 09:14:03 yavdr vdr[13701]: [cecremote] POWERON TV
Nov 10 09:14:03 yavdr vdr[13701]: terminate called after throwing an instance of 'std::out_of_range'
Nov 10 09:14:03 yavdr vdr[13701]: what(): map::at
Nov 10 09:14:03 yavdr vdr[13701]: [cecremote] onstart poweron
Nov 10 09:14:03 yavdr vdr[13701]: [cecremote] POWERON player
Nov 10 09:14:03 yavdr vdr[13701]: [cecremote] onstart makeinactiveDa müsste man mal im core schauen, an welcher Stelle das genau abstürzt. Wie das mit den Debug-Informationen bei yavdr aussieht weiß ich allerdings nicht. Im Prinzip sollte sich mit dem gdb ein Backtrace entlocken lassen: gdb <pfad zum vdr> <pfad zum core> und dann mal bt eingeben.
-
Ich habe den Patch schon mal in mein Git übernommen: https://git.uli-eckhardt.de/?p=vdr-plugin-cecremote.git
-
Ich schaue mir den Patch bei Gelegenheit an.
-
Soweit mit Build-Fehlern:
- cecremote
CEC Remote Plugin ist mit der Version 1.5.1 gefixt: [ANNOUNCE] CEC Remote Plugin 1.5.1
-
Es gibt eine neue Version vom CEC Remote Plugin. Das Plugin kompiliert jetzt auch mit VDR 2.7.1
Doku gibt es unter https://www.uli-eckhardt.de/vdr/cec.de.shtml.
Git Repo https://git.uli-eckhardt.de/?p=vdr-plugin-cecremote.git
Download der aktuellen Version unter https://www.uli-eckhardt.de/vd…d/vdr-cecremote-1.5.1.tgzBugreports, Anmerkungen, Tippfehler oder Verbesserungen zur Doku werden gerne genommen.
-
Ich habe ein ASUS PRIME N100I-D (Lüfterloses Mainboard für VDR) in meinem VDR am laufen. Die eingebaute Intel-Grafikkarte läuft da problemlos und das System braucht auch nur wenig Strom.