[yavdr-0.5] Frage zur neuen "vdr-frontend.conf"

  • Zitat


    für softhddevice wurde eine neue vdr-frontend.conf eingeführt, die das Attachen des Frontends beim Start für Timer und Starts durch das acpiwakeup-Addon verzögert bis der User eine Taste auf der Fernbedienung (oder die Eingabetaste auf der Tastatur wenn kein anderes Fenster den Fokus hat) drückt. Diese Funktion wurde eingeführt, da das nachträgliche Attachen des Softhddevice-Frontends Nutzeraktivität erzeugt und so ein Herunterfahren nach einer Aufnahme nur über den normalen Benutzerinaktivitätstimeout erfolgen würde. KEY_PROG1 detacht das Frontend gezielt. Beim Druck auf KEY_POWER2 wird das Frontend nach 15s detached, sofern der VDR zu diesem Zeitpunkt noch läuft und der User den Shutdown nicht abgebrochen hat. Die Fernbedienungstasten und einige andere Optionen können über ein custom Template) unter /etc/yavdr/templates_custom/etc/init/vdr-frontend.conf/03_config_softhddevice, das die originale /usr/share/yavdr/templates/etc/init/vdr-frontend.conf/03_config_softhddevice überlagert, geändert werden.


    Da ich in meinem System Standardmäßig den KEY_PROG1 bereits durch eine andere Funktion belegt habe, wollte ich die die Änderung auf z.B. KEY_PROG6 in der "03_config_softhddevice" machen.
    Beim Anschauen des Templates ist mir aber aufgefallen, dass der KEY_PROG1 auch noch weiter unten im Template bei "30_softhddevice-02-script.py" verwendet wird.


    Frage: Muss ich hier auch die Änderung von KEY_PROG1 auf z. B. KEY_PROG6 durchführen?


    Paulaner

  • Frage: Muss ich hier auch die Änderung von KEY_PROG1 auf z. B. KEY_PROG6 durchführen?


    Nein, das ist nur als Standard-Wert gedacht, wenn jemand die Konfiguration über die Umgebungsvariable kaputt macht.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • OK, danke für die superschnelle Antwort. :D
    Dann werde ich dass heute Abend mal testen.


    Paulaner

  • So, habe es getestet und die 03_config_softhddevice über ein Template geändert:

    Code
    # Button to de/attach frontend
    # env key_detach=KEY_PROG1
    env key_detach=KEY_PROG8
    export key_detach
    # VDR's Power button
    env key_power=KEY_POWER2
    export key_power


    Prinzipiell funktioniert das, d. h. mein KEY_PROG1 der gleichzeitig mein User1 ist hat wieder seine alte Funktion. Also erstmal alles wieder i.O. 8)


    Nur der KEY_PROG8 = User8 der nun die Funktion "deattach softhddevice" machen soll zeigt keine Wirkung. Muss da evtl. noch mehr angepasst werden?
    Ist aber erstmal nicht tragisch für mich, da ich diese Funktion beim normalen TV schauen nicht benötige.
    Bzw. anders gefragt, für was brauche ich diese Funktion bei der normalen VDR-Nutzung überhaupt? ?(


    Paulaner

  • KEY_PROG8 ist kein gültiger Tastenname, da er nicht in der input.h deiner Kernel-Header definiert ist: http://lxr.free-electrons.com/source/include/linux/input.h
    Daher kann eine solcher Tastendruck einfach nicht generiert werden.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Danke für die Information, wieder etwas gelernt.
    Das "deattach softhddevice" brauche ich ja nicht und so ist es für mich auch kein Problem!


    Paulaner

  • Kann man das mit dem deattachen des frontends auch irgenwie ausschalten? oder vllt optional anbieten?
    denn erstens: funktioniert das bei mir nicht und zweitens brauche ich das nicht..


    [size=10]nOpacity: Icons
    [size=10]skindesigner: tryoutsglassy

  • Jetzt mal im ernst,
    wie kann ich das ausschalten?


    [size=10]nOpacity: Icons
    [size=10]skindesigner: tryoutsglassy

  • denn erstens: funktioniert das bei mir nicht


    Was funktioniert nicht?

    wie kann ich das ausschalten?


    Einfach leere custom Templates für die neuen 30_softhddevice-0* Templates anlegen:

    Code
    30_softhddevice-01
    30_softhddevice-02-script.py
    30_softhddevice-03-end

    und auf den alten Stand für das "30_softhddevice"-Template mit einem custom Template dafür zurückkehren: https://github.com/yavdr/yavdr…tend.conf/30_softhddevice

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • ... und zweitens brauche ich das nicht..


    Wer "braucht" das schon? Allerdings spart das Detachen messbar Strom und somit auch Abwärme. Das war mein initialer Grund, das Feature anzuregen. Wofür soll ein Fernsehbild dargestellt werden, welches unnötig Strom verbrät, wenn niemand das Bild sieht?

    ASUS M4A78LT-M GL | AMD Athlon II X2 250 | 2GB RAM | Asus ENGT430 | Digital Devices OctopusNet mit 2 x Digital Devices DuoFlex S2 | PS3Remote | yaVDR 0.6.1

  • Moin Jungs,
    danke für die Antworten...

    Zitat

    Was funktioniert nicht?


    Das reattachen mit einer Taste auf meiner Fernbedienung ;)
    Es ist so, das der VDR per Timer gestartet wird. dann komme ich irgendwann dazu und will tv schauen,
    schalte den TV also an und sehe das das frontend dettached ist mit der Meldung das ich irgendeine Taste drucken soll um das frontend wieder zu starten.
    Und eben das funktioniert nicht. Ich muss den VDR dann per reset taste neustarten und die Aufnahme damit unterbrechen..das ist ein wenig ärgerlich...
    Wenn du willst schaue ich mir das nochmal genauer an...


    [size=10]nOpacity: Icons
    [size=10]skindesigner: tryoutsglassy

  • Wenn du willst schaue ich mir das nochmal genauer an...


    Naturgemäß sind wir natürlich deutlich mehr daran interessiert die Funktion zum Laufen zu bringen, als für dich auszuarbeiten wie du sie wieder los wirst.
    Sehr komisch das das nicht als erstes in deinen Sinn kam.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

    Einmal editiert, zuletzt von gda ()

  • Moin.


    Habe da auch mal eine Frage zu diesem Thema.
    Das "detachen" per FB, wenn eine Aufnahme läuft und der VDR per Power auf der FB ausgeschalten werden soll, klappt wunderbar.
    Drücke ich aber die Power-Taste am Gerät, wird nicht "detached". Was ist der Unterschied zwischen diesen beiden Tasten? Kann ich dem yavdr auch beibringen, dass es das Frontend "detached", wenn ich die Power-Taste am Gerät benutze? Die benutze ich eigentlich mehr als die auf der FB.


    Danke und Gruss.
    Markus

  • Drücke ich aber die Power-Taste am Gerät, wird nicht "detached". Was ist der Unterschied zwischen diesen beiden Tasten? Kann ich dem yavdr auch beibringen, dass es das Frontend "detached", wenn ich die Power-Taste am Gerät benutze? Die benutze ich eigentlich mehr als die auf der FB.


    Beim Drücken der Power-Taste auf der Fernbedienung erstellt das Skript in der vdr-frontend einen 15s-Timer zum Detachen des Frontends (der abgebrochen wird, wenn der User wieder eine Taste auf der FB drückt), wenn es die Power-Taste der FB erkennt (https://github.com/yavdr/yavdr…ddevice-02-script.py#L330)
    Beim Drücken der Power-Taste am Gehäuse wird die /etc/acpi/powerbtn.sh aufgerufen, die momentan per dbus2vdr die Powertaste an den VDR sendet: https://github.com/yavdr/yavdr…i/powerbtn.sh/10_main#L18
    Prinzipiell lässt sich das Python-Skript in der vdr-frontend.conf auch schon über dbus steuern (https://github.com/yavdr/yavdr…ddevice-02-script.py#L291) - ein Aufruf für den Shutdown mit detachen des Frontends, falls der VDR nicht herunter fährt fehlt da in yaVDR 0.5 aber noch.


    Um dem Frontend über dbus Befehle zu senden kannst du so etwas als Skript frontend-dbus-send nutzen (am besten als /usr/bin/frontend-dbus-send ablegen und ausführbar machen):


    Die Klasse dbusService https://github.com/yavdr/yavdr…ddevice-02-script.py#L291 muss dann noch um eine Funktion erweitert werden (Einrückungen mit Leerzeichen beachten!):

    Code
    @dbus.service.method('de.yavdr.frontend',out_signature='b')
        def shutdown(self):
            remote.enable()
            remote.sendkey("POWER")
            if settings.frontend_active == 0:
                remote.disable()
            settings.timer = gobject.timeout_add(15000,soft_detach)
            return True


    Dann sollte sich der Shutdown so auslösen lassen (und das kann man dann auch an passender Stelle in der /etc/acpi/powerbtn.sh statt den vdr-dbus-send eintragen):

    Code
    frontend-dbus-send /frontend shutdown

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Danke seahawk.


    Ohje, soviel "Aufwand" für eine kleine Funktion :)
    Wird das evtl. als Feature in yavdr wandern?
    Sollte Power nicht gleich Power sein? Egal, ob am Gerät oder der FB?


    Gruss.
    Markus

  • Ohje, soviel "Aufwand" für eine kleine Funktion
    Wird das evtl. als Feature in yavdr wandern?


    Dadurch wird der Aufwand aber auch nicht niedriger. Wenn du es fertig hast, dann können wir das gerne übernehmen.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470


  • Dadurch wird der Aufwand aber auch nicht niedriger.


    Hab ich ja auch nicht behauptet ... die Frage nach der Unterscheidung der beiden Powertasten bzw. der "Nichtbelegung" des Gehäusetasters mit der deta-Funktion der FB hat sich nur ergeben, weil ich es gestern beim Ausschalten das erste Mal beobachtet hatte. Sonst mach ich den Fernseher ja innerhalb der 15s auch gleich aus. Daher hielt ich es für einen "Bug" - für mich ist halt Powertaste = Powertaste. Sie hat bisher immer das selbe Verhalten an meinen VDRs ausgelöst.


    Markus

  • Daher hielt ich es für einen "Bug" - für mich ist halt Powertaste = Powertaste. Sie hat bisher immer das selbe Verhalten an meinen VDRs ausgelöst.


    Beide Möglichkeiten lösen irgendwann den vdr-dbus stop Befehl aus. Das ist das was für uns wichtig ist. Nur der Weg dorthin ist unterschiedlich. Das mag man jetzt als Bug ansehen, hat für mich allerdings eine sehr niedrige Priorität.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Hallo seahawk,


    da ich von der Programmiererei keinerlei Plan habe, habe ich es jetzt mal wie in Deinem Post beschrieben umgesetzt und abgetippt :D
    (gleich auch mal als Templates angelegt)


    Da ich 'grad nicht zu Hause bin ... sollte ein "svdrpsend hitk power" auf der Konsole das gleiche auslösen wie der Druck auf den Power-Button am Gehäuse?


    Gruss.
    Markus

  • Da ich 'grad nicht zu Hause bin ... sollte ein "svdrpsend hitk power" auf der Konsole das gleiche auslösen wie der Druck auf den Power-Button am Gehäuse?


    Nein, das kann es nicht. Das setzt nur per svdrp einen Power-Tastendruck an den VDR ab.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!