Webturtle Posted December 20, 2019 Share Posted December 20, 2019 Hallo, bei der aktuellen Version 6.1.5.2. des DVBViewer Pro gibt es beim Programmiern aus dem EPG eine Fehlprogrammierung, wenn der Anfang der Aufnahme unter Berücksichtigung des Vorlaufs auf 00:00 liegt. Beispiel: Start der Sendung laut EPG: 21.12. 00:10, voreingestellter Vorlauf 10 Minuten. Früher wurde 21.12. 00:00 programmiert, bei Version 6.1.5.2. ist jedoch 20.12. 00:00 also einen Tag zu früh!!! Dies ist leicht zu übersehen. Mir ist es erst später dadurch aufgefallen, daß eine von zwei aufeinanderfolgenden Sendungen im EPG nicht rot markiert war. Viele Grüße Webturtle Quote Link to comment
Griga Posted December 20, 2019 Share Posted December 20, 2019 (edited) Bestätigt. Es passiert jedoch nicht in jedem Fall. Mit 10 Minuten Vorlauf konnte ich es nicht reproduzieren, aber mit 5 Minuten. Ursache ist die unselige Kodierung von Datum/Zeitwerten in den Delphi Runtime-Bibliotheken als Fließkommazahlen: Der ganzzahlige Teil entspricht der Anzahl der Tage seit dem 30.12.1899. Der Nachkommateil gibt die Tageszeit an. 12:00 Uhr wäre z.B. 0,5. Eine Minute lässt sich in diesem System nicht präzise darstellen. Sowohl dezimal als auch binär ist der Bruch 1/(24x60) = 1/1440 eine periodische Zahl, d.h. es kommt zwangsläufig zu minimalen Fehlern. Diese können dazu führen, dass man nach Rechenoperationen statt 1 sowas wie 0,999999... erhält. Und wenn man dann den ganzzahligen Anteil abtrennt, ist das eins weniger als erwartet. Ungefähr so kommt das zustande. IMO ein eklatantes Fehldesign. Im DVBViewer GE habe ich das Problem durch eine eigene Datum/Zeit-Kodierung mit 64-Bit-Ganzzahlen (Anzahl der Millisekunden seit dem 30.12.1899) vermieden. Damit kann sowas nicht auftreten. Im DVBViewer Pro und Media Server wäre das jedoch eine riesige Umstellung, vor der ich bislang zurückgescheut bin. Wie auch immer: Ich habe im DVBViewer Pro jetzt Gegenmaßnahmen ergriffen, fürchte aber, dass es nicht der letzte Effekt dieser Art war... Edited December 20, 2019 by Griga Korrektur: Ein Tag hat nicht 3600, sondern 1440 Minuten Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.