EPG Event ID

  • Hi zusammen,
    ich bin einer der Entwickler des SerienRecorder Plugins und optimiere im Moment die Aktualisierung von Timern.
    Der SerienRecorder hat zwei Aktualisierungsstrategien:


    • Das Event wird im EPG anhand der Startzeit gefunden (0 = event intersects given start_time)
    • Das Event wird im EPG anhand der Event ID gefunden (2 = event_id)


    Die Aktualisierung findet nur einmal am Tag statt, jetzt ist mir aufgefallen, dass die Event ID die für ein Event gestern ermittelt wurde, beim heutigen Suchlauf eine ganz andere ist. Bisher dachte ich immer, dass die Event ID das Event eindeutig identifiziert und sich während der Event "lebt" nicht mehr ändert, aber das scheint ja nicht korrekt zu sein - oder habe ich da einen Denkfehler? Dann macht die Suche nach der Event ID im EPG ja nur in unmittelbarer zeitlicher Nähe zur letzten Suche einen Sinn. Wie häufig wird die Event ID denn aktualisiert - kann man das sagen?
    Gibt es dazu irgendwelche weiterführende Dokumentation?


    Vielleicht kann ja hier jemand Licht ins Dunkel bringen?!


    MacDisein

    • Offizieller Beitrag

    Hi,


    in der Theorie hast Du mit der EventID schon recht. Leider sieht die Praxis anders aus... und die Sender halten sich einfach nicht dran. Sprich teilweise werden EventIDs willkürlich vom Sender geändert. Manchmal wenn Events verschoben werden.. manchmal aber auch einfach so. Das macht es auch innerhalb vom enigma2 epgache schwieriger.... da gibts auch genug hacks die wenn die Sender sich an den Standard halten würden nicht nötig wären.


    Laut Standard (EN300468 ... http://www.etsi.org/standards-…&keywords=1&ed=1&sortby=1) sollten die Event IDs eindeutig sein (innerhalb des selben Senders) und sich auch nicht mehr ändern.


    Aber wie gesagt... dem ist nicht so... ganz schlimm war es früher auf RTL und Co. Keine Ahnung ob es heute noch so ist.


    cu

  • Ich hatte da auch eine Menge spass als ich den code fürs DreamOS erstellt habe um die event ID für das laden in die epg.db zu generieren (wenn man EPG aus dem internet ladet ist die gar nicht dabei). Ursprünglich habe ich einfach pro sender eine id hochgezählt, aber wenn du dann einen Tag später das selbe EPG event ladest hast du andere event ID gekriegt mit allen den negativen Auswirkungen die du schon selbst heraus gefunden hast.


    Um das zu umgehen habe ich dann die Beginn Zeit in UTC (alsso sekunden seit dem 1.1.1970) verwendet und so hingetrimmt das nur werte < 64k rauskommen können - nicht schön aber dann kommt normal innerhalb der paar woche wo der EPG even aktuell ist wenigstens immer die selbe event id raus:


    Code
    # generate an unique dvb event id < 65536
    self.dvb_event_id=(self.begin_time-(self.begin_time/3932160)*3932160)/60


    Und die Sender werden da wohl ähnlich kreativ sein ...