Remote.xml/keyboard.xml anpassen - Tipp/Unterstützung gesucht

  • Hallo zusammen

    Ich würde gern zwei Sachen per keyboard.xml anpassen, komme aber trotz diverser Versuche nicht zurecht. Liegt einfach daran, dass ich von xml nichts verstehe.

    Folgendes würde ich gern modifizieren:

    1: Shutdown bei Druck auf Powerbutton an der IR Fernbedienung.

    War bis Kodi 20 Standard, bei Kodi 21 erscheint stattdessen das Shutdown-Menü.

    2: Video pausiert und Bildschirm in Dimm -> Ein einzelner Druck auf Play soll das Video wieder abspielen (bisher: Erster Druck -> Dimm deaktiviert, zweiter Druck -> Video weiter abspielen)

    Ich bekam schon den Tipp, dass ich die Keyboard.xml mit ctrl+shift P modifizieren soll.

    Mein Versuch blieb bisher erfolglos.

    System: HTPC mit LE 12 generic nightly.

    Standard RC6 IR Fernbedienung

    Mag jemand mit der Modifikation aushelfen?

    Die aktuelle keyboard.xml von Github im Anhang.

    Gruß

    Thomas

  • Die Änderungen werden auch direkt auf Github beschrieben. Dort ist lediglich in der /storage/.kodi/userdata/remote.xml der Eintrag

    <power>ActivateWindowShutdownMenu</power> auf <power>Shutdown()</power> zurückzuändern. Existiert keine remote.xml, dann legt man sich eine an mit folgendem Inhalt:

    XML
    <[definition='3','0']keymap[/definition]>
        <global>
            <remote>
                <power>Shutdown()</power>
            </remote>
        </global>
    </[definition='3','0']keymap[/definition]>

    Keymap Editor geht natürlich auch. Im übrigen ist das kein Bug sondern ein neues Feature ;) https://github.com/xbmc/xbmc/pull/23806 Ich finde die alte Lösung auch besser. Wozu hat man einen Power-Button auf der FB.

    So ein Käse ;)

    AZi (DEV): Nexus auf LibreElec | Asrock J4205 | 4 GB RAM | 128 GB Sandisk| Rii mini
    DEV: PC Ubuntu 20.04 | Matrix
    AZi: Tanix TX3 | Android/CoreElec Dualboot (EMMC), Nexus
    WoZi: Nexus auf LibreElec | Asrock J4205 | 4GB RAM | 128 GB Sandisk SSD | Atric IR | URC7960

    NAS: unRaid, 3x6TB, 2x12TB | TV-Server: Futro S550 mit Hauppauge QuadHD DVB-C
    PayPal: paypal.me/pvdbj1

    Einmal editiert, zuletzt von PvD (9. November 2023 um 16:56)

  • So ein Käse

    Und so eine Unverschämtheit: "greybeards who ..." [zu doof und tatterig] Nicht dass ich jetzt so aussähe - aber so langsam fühlt man sich angesprochen.

    Kodi 21.1, 17.6, 21.1, 16, 20.5 on Windows 11 Pro, Android 6, Android 12, FireTV Box 2nd Gen, FireTV 4k Max 2nd Gen
    Media on NAS, OpenMediaVault 6 (Debian Linux).

  • Moin
    Danke Euch für die Tipps und Unterstützung!

    Thema 1 (Shutdown) ist erledigt. Ich habe eine remote.xml abgelegt, wie von PvD beschrieben.

    Thema 2 kriege ich noch nicht hin.
    (Nur 1x Play drücken, um Dimm zu beenden UND das Viedo weiter abzuspielen)

    Mit dem Keymap-Edito habe ich rumprobiert, komme damit aber nicht zum Ziel.
    Die remote.xml habe ich ergänzt um:

    Code
    <[definition='3','0']keymap[/definition]>
        <global>
            <remote>
                <power>Shutdown()</power>
                <p mod="ctrl,shift,p">Play</p>
            </remote>
        </global>
    </[definition='3','0']keymap[/definition]>

    Das hat aber auch keinen Effekt. Der Befehl ist möglicherweise auch eher für Tastaturen gedacht (?)

    Habt ihr hier noch einen Tipp für mich, wie ich das umgesetzt bekomme?

    die Yatse-App macht das bspw. schon von Haus aus so.


    Und ganz generell teile ich Eure Sicht, dass die Shutdownänderung Käse ist.

    Da beschreibt jemand als Fehler: "Wenn ich auf "Aus" drücke geht das Gerät aus"

    Äh, ja....

    Gruß
    Thomas

  • <p mod="ctrl,shift,p">Play</p> gilt für die Taste "P" in der Verbindung mit CTRL und SHIFT. Und ja, das gilt für Tastaturen. Bei Yatse müsste ich mal nachschauen, was im Log ankommt, evtl. kann man da was nachbauen.

    AZi (DEV): Nexus auf LibreElec | Asrock J4205 | 4 GB RAM | 128 GB Sandisk| Rii mini
    DEV: PC Ubuntu 20.04 | Matrix
    AZi: Tanix TX3 | Android/CoreElec Dualboot (EMMC), Nexus
    WoZi: Nexus auf LibreElec | Asrock J4205 | 4GB RAM | 128 GB Sandisk SSD | Atric IR | URC7960

    NAS: unRaid, 3x6TB, 2x12TB | TV-Server: Futro S550 mit Hauppauge QuadHD DVB-C
    PayPal: paypal.me/pvdbj1

  • Was PvD dir mit seinem Posting sagen wollte ist, dass du auf deiner Fernbedienung wahrscheinlich keine Taste hast, die innerhalb von Kodi mit "p" interpretiert wird. Diese Taste hättest du nur auf deiner Tastatur und dann müsste die entsprechende XML wie folgt aussehen:

    Code
    <[definition='3','0'][definition='3','0'][definition='3','0']keymap[/definition][/definition][/definition]>
        <global>
            <keyboard>
                <p mod="ctrl,shift,p">Play</p>
            </keyboard>
        </global>
    </[definition='3','0'][definition='3','0'][definition='3','0']keymap[/definition][/definition][/definition]>

    Achte auf den Unterscheid von "keyboard" in meinem Beispiel zu "remote" in deinem.

    Wenn du dir mal diese Datei anschaust (keine Angst, es ist nicht so wild, wie es aussieht): https://github.com/xbmc/xbmc/blob…maps/remote.xml

    und du mal nach dem Wort "power" suchst, dann wirst du sehen, dass dort die entsprechende Funktion hinterlegt ist. Nämlich die, die du schon geändert hast.

    In der ganzen Datei wirst du vergeblich nach <p> suchen und erst Recht nach <p mod="ctrl,shift,p"> weil deine Fernbedienung in dem Fall keine Tastaturkommandos sendet sondern, so wie es aussieht, echte IR-Befehle. Ansonsten würde deine obige XML nicht funktionieren, da diese für <remote> erstellt wurde.

    Um noch ein wenig weiter auszuholen....ich benutze einen FLIRC-Dongle. Dieser dient als IR-Empfänger für meine Harmony Fernbedienung. An Kodi sendet dieser Dongle aber Tastaturbefehle. Kodi sieht in dem Dongle also nichts anderes als eine, per USB angeschlossene, Tastatur...nur mit dem Hintergrund, dass diese gefakte "Tastatur" IR-Befehle empfangen kann. Möchte ich also nun einen Befehl ändern oder anders mappen, dann muss ich in dem Fall eine "keyboard.xml" anlegen (wobei der Name egal ist...die könnte auch "mir_egal.xml" heißen) und innerhalb der XML muss der Code dann so aussehen;

    Code
    <[definition='3','0'][definition='3','0'][definition='3','0']keymap[/definition][/definition][/definition]>
        <global>
            <keyboard>
                <taste>Befehl</taste>
            </keyboard>
        </global>
    </[definition='3','0'][definition='3','0'][definition='3','0']keymap[/definition][/definition][/definition]>

    Auch hier wird wieder "keyboard" verwendet und das obwohl ich vom Sofa aus eine IR-Fernbedienung nutze. Es kommt also immer auf die Interpretation in Kodi an. Und dafür muss man hin und wieder ins Log schauen, was da passiert und wie Kodi gerade Dinge versteht. Gleiches gilt auch für Bluetooth-Fernbedienungen.

    Für echte IR-Fernbedienungen sieht das ein wenig anders aus. Hier mal eine Liste der Keys, die Kodi per Default "versteht" (und das sieht jetzt etwas wilder aus ;) ) :

    xbmc/xbmc/input/IRTranslator.cpp at master · xbmc/xbmc
    Kodi is an award-winning free and open source home theater/media center software and entertainment hub for digital media. With its beautiful interface and…
    github.com

    Wenn also Kodi nicht reagiert, wenn du eine Taste auf deiner FB drückst, dann kann es sein, dass Kodi für speziell den Namen der Taste keine "Action" definiert hat. Ob Kodi die Taste empfängt, siehst du im Log. Wenn da sauber eine Taste erkannt wurde, dann kann man potentiell diese Taste über die "remote.xml" einer Action zuweisen und hat seine Funktion. Versteht Kodi die Taste nicht, dann muss man tiefer gehen und auf anderer Ebene die Taste für Kodi "begreiflich" machen. Das würde hier aber den Rahmen sprengen. Nur so viel...für "echte" IR-Fernbedienungen nimmt man daher halt auch oftmals solche "MCE Remotes".

    Wenn du weiter in das Thema einsteigen möchtest: https://kodi.wiki/view/MCE_remote_controls

    Auch bei den MCE Remotes gibt es Unterschiede ob sie Tastendrücke oder echte IR-Kommandos senden. Daher ist das alles ein wenig kompliziert und hängt wirklich an der verwendeten Fernbedienung.

    Um wieder zurück auf dein Thema zu kommen (mit "Play" Dimm beenden und Video abspielen). Der Unterschied zwischen Yatse und deiner Fernbedienung ist das Interface über das kommuniziert wird.

    Deine Fernbedienung sendet über IR ein Kommando an Kodi. Kodi interpretiert es und führt es aus.

    Yatse spricht weder über Bluetooth noch über IR mit Kodi. Yatse verwendet die JSON-RPC API. Eine Schnittstelle, die über das Netzwerk erreichbar und ansprechbar ist. Kodi interpretiert diese Kommandos anders als solche, die über IR ins System kommen. Daher könnte das Verhalten auch ein anderes sein, selbst wenn das Kommando augenscheinlich das gleiche ist. Das käme tatsächlich auf den Versuch an.

    Schaue ich mir den Bereich an, an dem die "Kore" Android App das macht (wobei ich jetzt nicht sagen kann, ob Kore Dimm beendet und das Video abspielt):

    Kore/app/src/main/java/org/xbmc/kore/jsonrpc/method/Player.java at master · xbmc/Kore
    Kore is a simple and easy-to-use Kodi remote. Contribute to xbmc/Kore development by creating an account on GitHub.
    github.com

    Dann sieht es augenscheinlich so aus, als würde dort einfach nur Player.PlayPause ausgeführt werden. Für deine IR-Fernbedienung wäre das folgende das Equivalent:

    xbmc/system/keymaps/remote.xml at master · xbmc/xbmc
    Kodi is an award-winning free and open source home theater/media center software and entertainment hub for digital media. With its beautiful interface and…
    github.com

    Und wenn du da nichts dran geändert hast, dann ist das die Standard-Einstellung. Somit sind wir wieder beim Thema "es kommt auf die angesprochene Schnittstelle an und wie Kodi diese verarbeitet".

    Wenn man es ganz weit spinnen möchte könnte man das auch einen "Bug" nennen. Dafür würde ich aber wirklich gern noch etwas weiter analysieren und sicher gehen, was da wirklich von Yatse an Kodi gesendet wird bzw. was Kodi da im Log aufzeigt. Vielleicht kannst du uns ein [definition='1','1']debuglog[/definition] zukommen lassen, wo du diese Taste auf Yatse drückst. Dann können wir sehen, was bei dir los ist und müssen nicht selbst Testumgebungen aufsetzen ;)

    Gruß

    Einmal editiert, zuletzt von DaVu (12. Dezember 2023 um 22:02)

  • Hallo DaVu,
    die Unterschiede kannte ich grob. Mit Deiner ausführlichen Erklärung habe ich es komplett verstanden.
    Vielen Dank dafür.

    Hier der Link zum Log-File:

    hastebin

    Vorgehensweise:

    Debuglogging aktiviert

    HTPC neu gestartet

    Direkt einen Film gestartet

    Mittels Yatse pausiert

    Gewartet bis der Screensaver "DIM" das Bild dimmt
    Film mittels "Play-Taste" in Yatse fortgesetzt

    Dann wieder pausiert
    NICHT auf "DIM" gewartet

    Film mittels "Play-Taste" in Yatse erneut fortgesetzt

    Film gestoppt
    HTPC heruntergefahren

    Ist das in der Form hilfreich?

    Was mir noch aufgefallen ist:

    Um mittels IR Fernbedienung einen pausierten und gedimmten Film fortzusetzen, sind 2 Tastendrücke notwendig.

    Um mittels IR Fernbedienung einen pausierten und gedimmten Film zu beenden, ist nur 1 Tastendruck auf "Stopp" notwendig.

    Gruß
    Thomas

  • Das wäre in der Tat hilfreich gewesen, wenn ich Trottel dir gesagt hätte, dass du das "Komponenten Logging" noch für JSON Requests aktivieren musst. Aktuell sehe ich nur:

    "request received for /jsonrpc"

    Und mehr nicht. Du hast nichts falsch gemacht. Im Gegenteil. Du hast nur das gemacht, was ich dir gesagt habe. Wenn du für das Logging noch das Komponenten-Logging für JSON aktivierst, dann sehen wir bestimmt mehr.

    Sorry für die Umstände.

  • Wie vermutet...

    Zeile 1485 - 1487 zeigen den Request "Player.PlayPause", wie die Seekbar initiiert und wie dann der Audio-Stream pausiert wird.

    Zeile 1566 (wenn ich es richtig interpretiere) zeigt mit dem Window init, dass der Screensaver initiiert wird. (------ Window Init () ------) da steht kein Name drin

    Zeile 1583 und 1584 zeigen denn wieder den gleichen Request "Player.PlayPause" und wie dann der Audio-Stream wieder aufgenommen wird (resume)

    Zeile 1606 zeigt dann, wie die Seekbar ausgeblendet wird (------ Window Deinit (DialogSeekBar.xml) ------)

    Jetzt kommts...in Zeile 1621 steht "------ Window Deinit () ------" und das könnte das ausblenden des Screensavers sein.

    Dann pausierst du nochmal in Zeile 1644 und setzt die Wiedergabe in Zeile 1681 fort bis du dann in Zeile 1705 das Video beendest.

    Hier könnte es tatsächlich sein, dass genau das "Deinit ()" nicht passiert, wenn du es mit einer Fernbedienung machst. Denn die Taste auf deiner Fernbedienung macht nichts anderes als "PlayPause" und somit im Prinzip das gleiche wie der JSON Request. Aber anscheinend behandelt Kodi das anders. Man könnte das als Bug bezeichnen. Wäre fast interessiert was die Entwickler auf so einen Bug-Report antworten würden ;)

  • Das bedeutet im Umkehrschluss, wenn der JSON-Request zusätzlich den Dim bedient, kann man doch per remote.xml anstelle von "PlayPause" einen JSON-Request für PlayPause absetzen?

    AZi (DEV): Nexus auf LibreElec | Asrock J4205 | 4 GB RAM | 128 GB Sandisk| Rii mini
    DEV: PC Ubuntu 20.04 | Matrix
    AZi: Tanix TX3 | Android/CoreElec Dualboot (EMMC), Nexus
    WoZi: Nexus auf LibreElec | Asrock J4205 | 4GB RAM | 128 GB Sandisk SSD | Atric IR | URC7960

    NAS: unRaid, 3x6TB, 2x12TB | TV-Server: Futro S550 mit Hauppauge QuadHD DVB-C
    PayPal: paypal.me/pvdbj1

  • Das bedeutet im Umkehrschluss, wenn der JSON-Request zusätzlich den Dim bedient, kann man doch per remote.xml anstelle von "PlayPause" einen JSON-Request für PlayPause absetzen?

    Ich kann das nicht. Kannst Du die Modifikation beisteuern?

    Man könnte das als Bug bezeichnen. Wäre fast interessiert was die Entwickler auf so einen Bug-Report antworten würden ;)

    Wer von Euch ist denn Teil des Entwicklerteams? Du, PvD oder beide?

    Ich kann mich auch noch an einem Ticket in Github versuchen, aber das ist erfahrungsgemäß für einen technisch nicht so versierten Anwender üblicherweise eine Sackgasse.

  • Das bedeutet im Umkehrschluss, wenn der JSON-Request zusätzlich den Dim bedient, kann man doch per remote.xml anstelle von "PlayPause" einen JSON-Request für PlayPause absetzen?

    Sehr nette Idee....das müsste man mal testen.


    Ich kann mich auch noch an einem Ticket in Github versuchen, aber das ist erfahrungsgemäß für einen technisch nicht so versierten Anwender üblicherweise eine Sackgasse.

    Jetzt sei aber mal nicht so hart zum Team ;)

    Gründe warum ich es nicht mache:

    • Ich bin weder (mehr als Spaß zu verstehen aber dennoch wahr)
      • deine Eule
      • dein Sekretär
      • dein Sprachrohr
    • Wenn es zu Rückfragen kommt, würden wir stille Post spielen
    • Es ist DEIN Problem, daher sollte es auch DEIN Issue sein

    Ich würde aber wirklich mal die Option von PvD aufgreifen und versuchen über den Tastendruck einen JSON-Request abzusetzen.

    Du kannst auf jeden Fall sogenannte "Build in Functions" in Kodi auf eine Taste mappen: https://kodi.wiki/view/List_of_b…System_built-in's

    Da gibt es die Funktion: "System.Exec()", welches Shell Kommandos ausführt. Da du LibreELEC verwendest, gibt es dort auf jeden Fall auch "curl" als Kommando. Somit sollte sowas hier:

    curl -X POST -H "content-type:application/json" http://127.0.0.1:8080/jsonrpc -u kodi:1234 -d '{"jsonrpc":"2.0","id":1,"method":"Player.PlayPause"}'

    in einem System.Exec() vielleicht funktionieren. Das sollte das so aussehen:

    System.Exec(curl -X POST -H "content-type:application/json" http://127.0.0.1:8080/jsonrpc -u kodi:1234 -d '{"jsonrpc":"2.0","id":1,"method":"Gui.ActivateScreenSaver"}')

    Für deine remote.xml:

    Code
    <[definition='3','0']keymap[/definition]>
        <global>
            <remote>
                <play>System.Exec(curl -X POST -H "content-type:application/json" http://127.0.0.1:8080/jsonrpc -u kodi:1234 -d '{"jsonrpc":"2.0","id":1,"method":"Gui.ActivateScreenSaver"}')</play>
            </remote>
        </global>
    </[definition='3','0']keymap[/definition]>

    Es kann natürlich sein, dass Kodi den Tastendruck deiner Fernbediennug nicht annimmt weil der Screensaver aktiv ist. Wir sprechen ja schließlich immer noch von einer IR-Kommunikation. Daher würde ich nicht sooo viel Hoffnung da rein stecken. Einen Versuch ist es aber auf jeden Fall wert.

  • Danke Dir!

    Die Keymap-Modifikation habe ich grade direkt ausprobiert.

    Lediglich bei kodi:1234 das 1234 gegen das aktuelle Passwort ausgetauscht.

    Das war soweit richtig ja?

    Ergebnis ist, dass der erste Tastendruck den Screensaver deaktiviert, ein weiterer Tastendruck ohne Funktion bleibt.

    Ist der Screensaver bei pausiertem Video noch nicht aktiv, bleibt die "Playtaste" ganz ohne Funktion.

    Mit einigem Zeitversatz ist Kodi dann abgestürzt/neu gestartet.

    Ich setzte morgen mal einen Eintrag in Github ab.

    Mal sehen, ob dabei irgendwas rauskommt.

    Danke Dir für Deine Bemühungen.

  • Ach....dann habe bestimmt ich nen Fehler gemacht.

    Lass mich das mal selbst aufsetzen. Ich spiele damit.morgen.mal rum. Irgendwas stimmt dann bestimmt am curl nicht oder der Syntax für die Build in Function ist nicht korrekt.

    Den Issue kannst du aber unabhängig davon eröffnen. Nur weil wir nen Workaround gefunden haben, ist das Problem ja nicht gelöst ;)

  • Also...

    Ich habe jetzt, weil es mich nicht losgelassen hat, ein wenig gespielt.

    Ich kann das Problem auf jeden Fall nachstellen. Dafür habe ich auf meinem Rechner hier (auch ein Linux) Kodi gestartet, den Screensaver aktiviert (ihn auf 1 Minute gestellt) und ihn auf "Dimm" gestellt.

    Die Leertaste "Space" toggled "play" und "pause".

    Ich habe dann einen Film abgespielt, auf die Leertaste gedrückt, der Film wurde pausiert und dann habe ich gewartet bis der Screensaver einsetzt. Dann habe ich wieder auf die Leertaste gedrückt. Das hat bewirkt, dass der Screensaver sich deaktiviert hat...mehr aber auch nicht. Ein weiteres Drücken auf die Leertaste und der Film wurde fortgesetzt.

    Somit...Problem nachgestellt ;)

    Was habe ich dann versucht?

    Da das mit dem System.Exec bei mir auch nicht gut funktioniert hat, habe ich noch ein wenig was anderes getestet:

    kodi-send:


    "kodi-send" ist ein Programm unter Linux welches Kommandos (so ziemlich alles, was unter den Build-In-Functions zu finden ist) an Kodi sendet. So kann man z. B. mit: kodi-send -a "PlayPause" entsprechendes Kommando an Kodi senden.

    Resultat:

    Damit geht es.

    runscript:

    "runsript" ist eine Build-In-Funcion, welches es ermöglicht ein Python-Script auszuführen. Mein Gedanke war, dass ich ein oder mehrere Kommandos hintereinander ausführen möchte.

    Dazu habe ich folgendes Script geschrieben:

    Code
    import xbmc
    import time
    
    xbmc.executebuiltin(Action("PlayPause"))
    time.sleep(1)
    xbmc.executebuiltin(Action("PlayPause"))

    Ich schätze, dass das für alle selbsterklärend ist.

    Das Script habe ich dann ausführbar gemacht und die Leertaste wie folgt gemappt:

    Code
    <[definition='3','0']keymap[/definition]>
        <global>
            <keyboard>
            <space>runscript(/home/davu/test.py)</space>
            </keyboard>
        </global>
    </[definition='3','0']keymap[/definition]>

    Dann habe ich wieder den Film abgespielt, pausiert, gewartet bis der Film pausierte und dann die Leertaste gedrückt.

    Resultat:

    Screensaver wird deaktiviert....mehr aber auch nicht.

    Aber:

    Ich habe nebenher das Log laufen lassen und folgendes gesehen:

    Code
    2023-12-16 00:06:20.199 T:21407   debug <general>: ------ Window Init () ------
    2023-12-16 00:06:30.897 T:21407   debug <general>: keepAlive: sending keep alive after 45s.
    2023-12-16 00:06:34.347 T:21407   debug <general>: Keyboard: scancode: 0x41, sym: 0x20, unicode: 0x20, modifier: 0x0
    2023-12-16 00:06:34.347 T:21407   debug <general>: HandleKey: space (0xf020) pressed, screen saver/dpms woken up
    2023-12-16 00:06:34.447 T:21407   debug <general>: Keyboard: scancode: 0x41, sym: 0x20, unicode: 0x00, modifier: 0x0
    2023-12-16 00:06:35.366 T:21407   debug <general>: ------ Window Deinit () ------

    Das Init kennen wir ja schon. Da wird der Screensaver aktiviert. Dann sieht mann, dass ich die Taste "space" gedrückt habe und was sie bewirkt: "screen saver/dpms woken up"

    Mehr ist dann aber, wie gesagt, nicht passiert. Das heißt, dass das Mapping gar nicht angenommen wird. Jegliche Eingabe über ein HID (Human Interface Device....zu dem ich jetzt eine FB auch mal zählen möchte) scheint nicht interpretiert zu werden, wenn der Screensaver aktiviert ist.

    Wenn PvD da jetzt keine weitere Idee hat, würde ich denken, dass man nicht mehr weiter in die Richtung überlegen muss.

    guenniguenzelsen Verlinke bitte den Issue hier. Ich werde entsprechend rein kommentieren, da ich das Problem auch nachstellen kann und auch froh über eine Verbesserung des Problems wäre. Ich muss das bei meiner Fernbedienung nämlich auch machen, weswegen ich meistens lieber eine Remote App verwende ;) .

  • Ich schätze, dass das für alle selbsterklärend ist.

    Ich schätze, dass das eine Fehleinschätzung ist ;)


    (...) und auch froh über eine Verbesserung des Problems wäre. Ich muss das bei meiner Fernbedienung nämlich auch machen, weswegen ich meistens lieber eine Remote App verwende ;) .

    Ich bin dann mal (mehr als Spaß zu verstehen)

    • deine Eule
    • dein Sekretär
    • dein Sprachrohr

    Link zum Github Issue:

    Video is not resumed on first IR-remote key-press when video is paused + screensaver DIM is active · Issue #24248 · xbmc/xbmc
    Bug report Describe the bug Here is a clear and concise description of what the problem is: If video is paused and the screensaver "DIM" gets activated, the…
    github.com

    Gruß
    Thomas

  • Ich mag deinen Humor ;) [ay]

    Ich schätze, dass das eine Fehleinschätzung ist

    Code
    import xbmc
    import time
    
    xbmc.executebuiltin(Action("PlayPause"))
    time.sleep(1)
    xbmc.executebuiltin(Action("PlayPause"))

    Zeile 1: Das Python-Modul "xbmc" wird zur Benutzung von "xbmc.executebuiltin" importiert

    Zeile 2: Das Python-Modul "time" wird zur Benutzung von "time.sleep" importiert

    Zeile 4: Über das Python-Modul "xbmc" wird die Aktion "Action(PlayPause)" gesendet

    Zeile 5: Ein sleep lässt ein Skript für die angegebene Anzahl der Sekunden in den Klammern warten bis es weiter verarbeitet wird

    Zeile 6: Siehe Zeile 4

Jetzt mitmachen!

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