NEWS

[gelöst] Kodi: Enduhrzeit berechnen


  • Hallo zusammen,

    der Kodi Adapter zeigt mit die Dauer und die Spielzeit eines Films an:

    kodi.0.info.playing_time_total; 01:31:42
    kodi.0.info.playing_time: 31:36

    Ist es möglich daraus die Differenz, also den Rest zu berechnen und damit eine Enduhrzeit auszurechnen, wann der Film zu ende ist?


  • @Kuddel sagte:

    den Rest zu berechnen und damit eine Enduhrzeit auszurechnen, wann der Film zu ende ist?

    Vorschlag:

    Blockly_temp.JPG


  • @paul53 iwo habe ich noch einen Fehler:

    c1d07f00-1101-4f73-ad12-b14844a3bd3b-grafik.png

    Ist: 12:26:35
    Soll: 14:00:00 Uhr


  • @Kuddel sagte:

    wo habe ich noch einen Fehler:

    diff = 1000 * (sekunden_total - sekunden)
    Haben beide Datenpunkte den gleichen Namen ?


  • @paul53 ah danke das minus hatte ich falsch. ich werde testen.

    ja die DPs haben den gleichen Namen

    cb38d51d-dcec-4718-ae17-b6f7ba0bde08-grafik.png

    EDIT: Funktioniert, Vielen Dank


  • hier das Endergenis als Blockly-Export

  • Most Active

    @Kuddel

    Danke Dir für das Bereitstellen des fertigen Blockeis
    ich habe bei mir den DP

    kodi.0.seek
    

    ergänzt

    Bildschirmfoto 2020-11-03 um 15.46.21.png
    das hat den Vorteil dass ich vorspulen kann und die Enduhrzeit aktualisiert sich aus gleich.

    Was mir etwas Kopfzerbrechen macht ist die Häufigkeit der Aktualisierung da der DP "Seek" aufgrund der 3 "Komma Nachstellen" sehr viele Aktualisierungen erfährt, das geht sozusagen im Sekunden Takt.

    @paul53
    wie schätzt du das ein, kann ich das ignorieren oder sollte so etwas vermieden werden.


  • @dos1973 sagte:

    das geht sozusagen im Sekunden Takt.

    Mit Sekundentakt sollte eine moderne Hardware zurecht kommen.


  • @dos1973 ja das mit seek macht sinn. habe ich direkt mit eingebaut

  • Most Active

    @Kuddel

    am liebsten wäre es mir, wenn eine Zeit Aktualisierung bei ganzen Zahlen des "Seek" erfolg. Aktuell zeigt der DP den Wert "27.0689" in % aber ich wüsste nicht wie und wo ich das anpasse/ anheften müsste.
    Ich stelle mich schwer mit Blockly 😞


  • @dos1973 wird glaube nicht funktionieren.

    wenn man seek als Trigger nimmt, löst das Skript bei jeder noch so kleinen Änderung vom seek wert aus.

    man könnte evtl. versuchen mit einmal falls Block zu prüfen ob es ein *.0 wert ist und nur dann die Berechnung ausführen

  • Most Active

    @Kuddel
    Ich habe den Ansatz Verfolgt bei Änderung von Seek ein Timeout zu setzen (2-5sekunden) und dann zu aktualisieren.
    aber hat bisher nicht gefruchtet

    E


  • @Kuddel sagte:

    prüfen ob es ein *.0 wert

    Die Prüfung wird nur selten erfolgreich sein. Besser runden und auf Änderung zum vorherigen gerundeten Wert prüfen.


  • @dos1973 macht auch keinen sinn. das skript startet ja trotzdem bei jeder änderung. die berechnung folgt dann nur ein paar sekunden später

  • Most Active

    @Kuddel
    Soll ja auch, ich will ja die ende Uhrzeit haben.

    Oder haben wir ein Missverständnis ?

  • Most Active

    @paul53
    Es ist nicht im Sekundenbereich,
    Eher im ms Sekunden Bereich wo das Script dann immer ausgeführt wird. Ich denke dass kann dann schon zu Engpässen führen


  • @dos1973 das finde ich auch.

    also den trigger selber mit kodi.0.state und kodi.0.seek wird man nicht verbessern können.

    somit startet das skirpt quasi permanent.

    Entweder prüft man jetzt auf den % Wert, sodass die weitere Berechnung nicht ausgeführt wird.

    Oder man baut das Skript komplett um:

    Trigger = kodi.0.state

    wenn state = play -> alle 1000ms Schleife, die die Berechnung durchführt.

    wenn state = stop -> beende Schleife


  • @dos1973 habe mein Skript nochmal umgebaut.

    Als Trigger nehme ich nach wie vor kodi.0.state.

    Wenn state = play oder pause -> Skript läuft in einer Schleife, alle 30 Sekunden

    Somit wird auch während einer Pause sowie wenn man Spult die Endzeit korrekt berechnet.

    Export:


  • @dos1973 habe die Restzeit auch noch eingebaut:

    92dfb3e3-3d6e-4b3f-9a31-73a05bd0a464-grafik.png

    Das Skript läuft jetzt sekündlich, so lange kodi.0.state nicht gleich stop

  • Most Active

    @Kuddel
    Wow, ich bin begeistert.
    Beide Werte sind vorhanden. ich habe bei mir den wert auf 5 Sekunden angepasst.
    aber was ist den "calc"

    rein optisch gesehen bei Restzeit 76:22, würde ich folgende Formatierung "01:16:22" ansprechender finden.

    Klasse Ding. Vielen Dank für deine Mühe!

Suggested Topics

1.2k
Online

38.4k
Users

43.8k
Topics

612.8k
Posts