EPG Datena aus Stream auslesen und doppelte EPG Events

  • Hallo


    Ich habe ein Programm das mir die EIT(EPG) aus dem Stream in eine DB ablegt.
    Ich benutze dazu die libdvbpsi.
    Das geht auch ganz gut.


    Ich gehe immer davon aus das die EIT ID eindeutig ist.
    Wenn ich neue Daten mit der selben ID bekomme, dann aktualisiere ich den Eintrag in meine DB.


    Leider bekomme ich bei ein paar Sendern hin und wieder doppelte EPG Daten.
    Da hat das Event dann eine neue ID und eine leicht verschobene Startzeit.


    Hier ein Beispiel von RTL2

    Code
    EIT ID    Starttime                         Endtime                     Receivetime                       Title
    63562	2014-10-27T09:50:00.000Z	2014-10-27T11:50:00.000Z	2014-10-24T17:58:13.352+02:00	Frauentausch
    44120	2014-10-27T09:51:00.000Z	2014-10-27T11:51:00.000Z	2014-10-27T08:14:48.359+01:00	Frauentausch
    35069	2014-10-27T11:50:00.000Z	2014-10-27T12:50:00.000Z	2014-10-24T17:58:13.353+02:00	Family Stories
    44157	2014-10-27T11:51:00.000Z	2014-10-27T12:50:00.000Z	2014-10-27T08:14:48.359+01:00	Family Stories


    Wie kann ich das erkennen ohne das ich mir Überschneidungen der Zeiten ansehen muss?
    Was mit auch sehr komisch vor kommt ist das die Zeit als ich das Event das erste mal gesehen habe in etwas den Arbeitszeiten bei uns entspricht.
    Kann es sein das bei RTL2 jemand sitzt und am Freitag um 17:58 mal EPG Daten freigeben hat und heute morgen um 8:14 noch mal EPG Daten freigegeben hat?


    Da ich die Daten ja immer wieder bekomme, überlege ich ob ich die dann einfach nach 24Std verwerfe und neu bekomme. Das wäre aber nur ein workaround.

  • Zumindest bei den Events könnte es sein, dass man die Sommer/Winterzeit korrigiert hat.


    Im epgd erkennt man sowas glaub ich durch Prüfung des Titels, der Startzeit (+/- ein paar Minuten) und der Länge oder ähnlich. Die EventID ist übrigens nicht zwingend eindeutig, da sind wir damals auch drüber gestolpert.

    - Client1: Thermaltake DH 102 mit 7" TouchTFT * Debian Stretch/vdr-2.4.0/graphtft/MainMenuHooks-Patch * Zotac H55-ITX WiFi * Core i3 540 * 4GB RAM ** Zotac GT630 * 1 TB System HDD * 4 GB RAM * Harmony 900 * satip-Plugin

    - Client2: Alfawise H96 Pro Plus * KODI
    - Server: Intel Pentium G3220 * DH87RL * 16GB RAM * 4x4TB 3.5" WD RED + 1x500GB 2.5" * satip-Plugin
    - SAT>IP: Inverto iLNB

  • Ich speichere mir ja wann ich das Event das erste mal bekommen habe.
    Jetzt überlege ich gerade ob ich mir auch noch speichere wenn ich das Event das letzte mal gesehen habe.
    Da die Events ja alle paar Min wieder neu kommen, könnte ich dann nicht Events die ich seit mehr als X Stunden nicht mehr gesehen habe einfach verwerfen?
    Oder ist es so das nicht immer alle Events neu übermittelt werden.
    Also z.B. alle Stunde werden die EPG Daten für 7 Tage übertragen und jede Minute werde die EPG Daten für die nächsten Stunden übertragen.
    Aber ich glaube das könnte auch jeder Sender selber entscheiden.

  • Da die Events ja alle paar Min wieder neu kommen, könnte ich dann nicht Events die ich seit mehr als X Stunden nicht mehr gesehen habe einfach verwerfen?


    du solltest auch die gelöschten Events als solche kennzeichnen ;)


    Code
    eventid     channelid            masterid     useid     source     fileref     inssp       updsp       updflg     delflg     tableid     version     title           
     ----------  -------------------  -----------  --------  ---------  ----------  ----------  ----------  ---------  ---------  ----------  ----------  --------------
     35069       S19.2E-1-1057-61205  1864460      1864460   vdr        (null)      1414058276  1414403619  D          Y          80          6           Family Stories
     44120       S19.2E-1-1057-61205  1878804      1743555   vdr        (null)      1414169024  1414396262  L          (null)     78          1           Frauentausch
     44157       S19.2E-1-1057-61205  1878805      1743556   vdr        (null)      1414169024  1414403616  L          (null)     78          3           Family Stories
     63562       S19.2E-1-1057-61205  1863759      1863759   vdr        (null)      1414050979  1414396262  D          Y          80          6           Frauentausch


    musst du dein Programm noch etwas nachbessern ;D


    Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



Jetzt mitmachen!

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