Herunterfahren bei Inaktivität verhindern, wenn kodi läuft

  • Ich starte vdr mit dem Parameter "-s /usr/local/lib/vdr/shutdown-wrapper". Beim Betätigen des Powerbuttons wird ""/usr/local/bin/svdrpsend HITK power" aufgerufen. Wenn ich das richtig sehe, lösen damit sowohl die Powertaste als auch das Erreichen der MinUserActivity den shutdown-wrapper aus, der wiederum das eigentliche Script /usr/local/bin/vdrpoweroff.sh aufruft:


    Bash
    #!/bin/bash
    hwclock --systohc --utc
    DEV=/sys/class/rtc/rtc0/wakealarm
    
    nextboot=$(($1 - 300 ))  # Start 5 minutes earlier
    sh -c "echo 0 > $DEV"
    sh -c "echo $nextboot > $DEV"
    
    poweroff


    Ziel 1:

    Wenn ich aus dem vdr heraus zu kodi wechsle, möchte ich nicht, dass während der laufenden kodi-Wiedergabe der Rechner runterfährt, weil vdr im Hintergrund die MinUserInactivity erreicht hat.

    Ziel 2:

    Andererseits möchte ich aber während des laufenden kodi-Betriebs den Rechner ausschalten können, wobei dann der wrapper und das vdr-shutdown-Script ausgeführt werden sollen, um den nächsten Timer ins ACPI zu schreiben. Gleichzeitig soll ein Runterfahren auch verhindert werden, wenn vdr im Hintergrund gerade etwas aufnimmt oder der nächste Timer in Kürze ansteht. Die entsprechenden OSD-Sicherheitsabfragen werde ich aber ja im kodi-Betrieb nicht sehen können, solange das softhddevice-Plugin suspended ist.


    Wie löse ich das am einfachsten? Ich kann ja nicht einfach vdrpoweroff.sh so modifizierten, dass es bei laufendem kodi-Betrieb abbricht - denn dann wäre Ziel 2 auch nicht mehr möglich.


    Und an welcher Stelle kann ich kodi so modifizieren, dass bei Auswahl des Menüpunktes "Ausschalten" nicht direct poweroff oder "shutdown - h now" ausgeführt wird (wie es jetzt wahrscheinlich der Fall ist), sondern der shutdown-wrapper (und in der Folge vdrpoweroff.sh wegen Setzen des nächsten Timers).

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

  • Wenn ich aus dem vdr heraus zu kodi wechsle, möchte ich nicht, dass während der laufenden kodi-Wiedergabe der Rechner runterfährt, weil vdr im Hintergrund die MinUserInactivity erreicht hat.

    Das einfachste ist dem VDR ein svdrpsend remo off zu schicken, wenn man das Frontend detached und KODI startet - solange die Reaktion auf die Fernbedienung deaktiviert ist, fährt der VDR nicht von alleine herunter (vgl. http://git.tvdr.de/?p=vdr.git;…17c3e6795f4b;hb=HEAD#l157)

    Wenn man zum VDR-Frontend zurück wechselt oder den VDR herunterfahren lassen will, muss man die Reaktion auf die Fernbedienung dann natürlich wieder einschalten, damit die Methode nicht vorzeitig abbricht.

    Andererseits möchte ich aber während des laufenden kodi-Betriebs den Rechner ausschalten können, wobei dann der wrapper und das vdr-shutdown-Script ausgeführt werden sollen, um den nächsten Timer ins ACPI zu schreiben. Gleichzeitig soll ein Runterfahren auch verhindert werden, wenn vdr im Hintergrund gerade etwas aufnimmt oder der nächste Timer in Kürze ansteht. Die entsprechenden OSD-Sicherheitsabfragen werde ich aber ja im kodi-Betrieb nicht sehen können, solange das softhddevice-Plugin suspended ist.

    KODI ist in der Hinsicht ziemlich unbequem - man kann das leider nicht über das Skript regeln, das den Aufweckzeitpunkt für PVR-Backends setzt, weil der Rückgabewert von CPVRManager::SetWakeupCommand (https://github.com/xbmc/xbmc/b…c/pvr/PVRManager.cpp#L566) bei allen Aufrufen ignoriert wird.


    Was passiert, wenn man den Knopf zum Herunterfahren im Shutdown-Menü drückt, muss man für jeden Skin einzeln ändern (und das ist auch nicht Update-sicher) - für Estuary wäre das z.B. diese Stelle: https://github.com/xbmc/xbmc/b…/DialogButtonMenu.xml#L25 - da könnte man dann z.B. ein Skript aufrufen (vgl. https://kodi.wiki/view/Built-in_scripting), das den VDR einen Shutdown-Versuch (oder wenn man über das vdr-plugin-dbus2vdr gehen will nur den Check, ob ein Herunterfahren grundsätzlich möglich ist: https://github.com/flensrocker…r/blob/master/README#L309) machen lässt.


    Das vdr-plugin-vnsiserver kann OSD-Meldungen des VDR an das kodi-pvr-addon-vnsi weiterreichen, IIRC ist das in dein Einstellungen des Addons aber standardmäßig deaktiviert.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Und ebenfalls kann Kodi ein Runterfahren verweigern wenn VDR aufnimmt.

    IIRC gilt das nur für das automatische Herunterfahren, aber nicht, wenn man explizit die Shutdown()-Methode aufruft - oder hat sich da etwas geändert?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Und vdr-addon-lifeguard-ng so konfigurieren, daß vdr-shutdown abgebrochen wird, wenn Kodi läuft?

    Das Kodi-Shutdown sollte sich davon nicht beeindrucken lassen.

  • Dass ein Deaktivieren der Fernbedienung auch das automatische Runterfahren verhindert, wusste ich nicht. Es erklärt aber, weshalb es bisher noch nie zu einem Shutdown kam, wenn ich längere Zeit in Kodi war.

    Fürs Protokoll:

    Ich rufe kodi über das Befehlsmenü mittels eine Eintrags in der commands.conf auf:

    Code
    Kodi starten             : /usr/local/lib/vdr/start_kodi

    Der Inhalt von /usr/local/lib/vdr/start_kodi :

    Und /usr/share/kodi/addons/skin.estuary/xml/DialogButtonMenu.xml habe ich jetzt so editiert, dass hinter dem Ausschalt-Symbol nur noch ein einziger Eintrag ("Verlassen") hinterlegt ist, mit dem ich zu vdr zurückkehre. Ich habe kein Problem damit, zum Runterfahren immer erstmal zu vdr zurückkehren zu müssen. Hauptsache, ich kann nicht versehentlich ein ungewolltes Runterfahren auslösen, dass das nächste Timer-Aufwachen verhindern würde.

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

Jetzt mitmachen!

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