Beiträge von PvD

    Hier nochmal die komplette EventLogger-Klasse mit der erweiterten Notification:

    Die Aufnahmeleuchte muss gesondert behandelt werden, da komme ich erst nächste Woche zu.

    Ok, zunächst definieren wir mal die GPIO + die Leds. Wenn die GPIOs Strom liefern sollen, dürfen die bis max 14 mA belastet werden. Also entweder Vorwiderstand oder Konstantstrom Leds, aber das weißt Du ja sicher.

    Dann brauchst Du eine Klasse, welche die Leds schaltet:

    Hier wird später die Funktion switch_led verwendet, um die Led(s) zu schalten, z.B an: LedSwitch.switch_led(['LED_PLAY'], LED_ACTIVE) oder aus: LedSwitch.switch_led(['LED_PLAY'], not LED_ACTIVE) . Da bei "Stop" mehrere Leds auf "aus" gesetzt werden müssen (unabhängig davon, ob die tatsächlich an sind), werden die passenden Leds als Liste übergeben: LedSwitch.switch_led(['LED_PLAY', 'LED_PAUSE'], not LED_ACTIVE)

    Das Schalten der Leds wird später im onNotification des EventLoggers untergebracht. Soweit zunächst die Theorie. Jetzt brauche ich erstmal ein paar LEDs, um das testen zu können [ag]

    Gefixt. Waren mal wieder subtile Feinheiten, wie z.B. mehrfache statt einfacher Leerzeichen in HTML-Tags, Leerzeichen vor Ende-Tags (wo vorher keine waren) sowie der Austausch doppelter Anführungszeichen durch einfache Anführungszeichen. Da greifen dann die RegEx nicht mehr und das Scrapen fällt auf die Schn**ze.

    Hier sieht man mal, welche Notifications angezeigt werden, wenn ein Video (oder TV usw.) gestartet, pausiert und gestoppt wird.

    Basis ist das Service Addon hier im Zip, das muss nur nur die Auswertung der relevanten Events (Player.Onplay/OnPause/OnResume/OnStop usw.) erweitert werden, damit GPIOs geschaltet werden können.

    RFT macht's möglich.

    Ansonsten: Wenn die Ansteuerung der LEDs per GPIO in Echtzeit erfolgen soll, würde ich den xbmc.Monitor verwenden. Der reagiert mit der onNotification() Methode in Echtzeit auf diverse Events, die denen der JSON Abfragen recht ähnlich sind. Diese Events lassen sich anhand der mitgelieferten Parameter (Sender, Methoden und der dazu gehörenden Daten im JSON-Format) recht komfortabel erfassen/filtern und damit Aktionen - wie das Schalten von GPIOs - auslösen.

    Basis wäre dann ein Service-Addon (aka ein Dienst).

    Hast Du zufällig einen Vergleich der Performance vor/nach BIOS Upgrade ? Oder Bauchgefühl das es gleich schnell oder langsamer ist ?

    Das Encoding dauert gefühlt ca. 15% länger. Damit kann ich aber leben. Gegenüber dem alten I7 aus 2018 (irgendwas um die 6. Generation) ist das eine Steigerung um 250% - 300%.

    Um mal wieder was zum Topic beizutragen:

    Die Temperaturen beim Software-Encoding per CPU liegen nach dem BIOS-Update deutlich unter den Temperaturen davor. Vorher haben einige Kerne abwechselnd gerne mal die 100°C Marke gestreichelt, jetzt liegen die im Bereich um 50-65°C. Damit ist das thermische Problem bei Dauerlast wohl behoben. Der Screenshot kommt etwas zu spät (zum Ende des Encodings), die Auslastung war dauerhaft 100%. Rechts unten im Tray sind die Temperaturen der 24 Kerne.

    Du kannst dich gegen Corona impfen lassen, oder auch nicht.

    Wo liegt das Problem ?

    Eben. Natürlich kann man seine Meinung haben, nur müssen andere sie nicht akzeptieren.

    Nur für mich: Ich habe im Sommer Geld für die neue Hardware in die Hand genommen (incl. der CPU) und habe es bis jetzt nicht bereut. Im Gegenteil: Bis jetzt kein einziger Absturz meiner Software oder gar ein BOD, nichts! Im Gegensatz zu den ewigen Schwarzmalern, die nichtmal praktische Erfahrungen in diesem speziellen Fall dazu beitragen können (weil sie eine derartige CPU überhaupt nicht besitzen). Man kann jetzt sagen "Hast Glück gehabt", mag sein. Mein Nutzerprofil ist allerdings auch nicht darauf ausgelegt, Hardware zu Tode zu quälen.

    Habe jetzt mal einen Stresstest gemacht, alle Kerne auf 100%. Die CPU-Temperatur der Kerne war nicht höher als 55°C. Ich kann kein Anzeichen für einen Defekt erkennen.

    Sicher kannst du nur mit einer neuen CPU sein die nur unter dem neuen BIOS betrieben wurde.

    Das mag stimmen, wenn man die CPUs unter Dauerlast und OC betreibt. Das gehört aber nicht zu meinem Einsatzprofil. Das hier ist im Grunde ein Bürorechner, der nur ab und an mal Power zum Umkodieren von Filmmaterial braucht. Ein Spiel hat der auch noch nie gesehen.