shaupti Posted June 8 Posted June 8 Hatte meine Timer Suche die letzten Jahre hauptsächlich nach Genre suchen lassen so hatte ich fast immer alle Filme die "neu" waren gefunden. Hießen ja immer so Actionthriller, Actionkomödie... Und die Serien hatten meistens Serie mit in der Beschreibung und konnten so raus gefiltert werden. Seitdem sich das geändert hat und alles auf den "Standard" umstellt, damit in Kodi etc. Das epg schön farbig ist (siehe Link) https://github.com/sunsettrack4/config_files/blob/master/tvs_genres.json habe ich das Problem das jede Serie den flag Serie nicht mehr hat und jede Soap , Doku , Daily Soap das gleiche Genre haben z.b. Detective/Thriller/Movie/Drama Das eigentlich jede Sendung als Timer gesetzt wird. Hat da vielleicht jemand eine Idee wie man das mit der Genre Suche lösen kann und wieder hauptsächlich Filme gefunden werden. Bin für jede Hilfe dankbar. Quote
DetlefM Posted June 8 Posted June 8 Mit anderen Anbietern kenne ich mich nicht aus. Also habe ich mal kurz in der "Recording Service web API" nachgesehen was die so bietet. Der MediaServer bietet eigentlich eine gute EPG-Information - nicht strukturiert, aber doch ausführlich. Die API gibt das in strukturierter Form zurück Beispiel 1: MediaServer: 3sat HD Montag, 09.06.2025 | 02:28 - 03:56 Der Ölprinz Spielfilm, Deutschland/Jugoslawien 1965 (Spielfilm) Abenteuerfilm, Deutschland / Jugoslawien 1965 Dank Winnetou und Old Surehand erlauben Navajos und Utahs einer Gruppe Siedler, sich auf ihrem Land niederzulassen. Allerdings geraten sie dadurch in das Visier der Bande des Ölprinzen. Der skrupellose Gauner hat es auf genau dieses Areal abgesehen, um einen bereits eingefädelten Betrug abzuwickeln. Dabei schreckt er vor nichts zurück. Es gelingt ihm schließlich, einen der Stämme gegen die Auswanderer aufzuwiegeln. Darsteller: Winnetou - Pierre Brice Old Surehand - Stewart Granger Ölprinz - Harald Leipnitz Lizzy - Macha Méril Richard Forsythe - Mario Girotti Frau Ebersbach - Antje Weisgerber Regie: Harald Philipp HD-Produktion [16:9] [5.1] [SUB] [AD] [PDC 09.06. 02:25] API: {'eventid': '35840', 'pdc': '275427', 'content': '16', 'charset': '255', 'titles': {'title': 'Der Ölprinz'}, 'events': {'event': 'Spielfilm, Deutschland/Jugoslawien 1965'}, 'descriptions': {'description': 'Abenteuerfilm, Deutschland / Jugoslawien 1965\nDank Winnetou und Old Surehand erlauben Navajos und Utahs einer Gruppe Siedler, sich auf ihrem Land niederzulassen. Allerdings geraten sie dadurch in das Visier der Bande des Ölprinzen.\n\nDer skrupellose Gauner hat es auf genau dieses Areal abgesehen, um einen bereits eingefädelten Betrug abzuwickeln. Dabei schreckt er vor nichts zurück. Es gelingt ihm schließlich, einen der Stämme gegen die Auswanderer aufzuwiegeln.\nDarsteller:\nWinnetou - Pierre Brice\nOld Surehand - Stewart Granger\nÖlprinz - Harald Leipnitz\nLizzy - Macha Méril\nRichard Forsythe - Mario Girotti\nFrau Ebersbach - Antje Weisgerber\nRegie: Harald Philipp\n\nHD-Produktion\n\n[16:9] [5.1] [SUB] [AD] [PDC 08.06. 15:35]'}, 'start': '20250608153500', 'stop': '20250608170300', 'channel': '562954314591118'} Hier noch zwei weitere Beispiele des API Outputs: {'eventid': '61579', 'pdc': '275821', 'charset': '255', 'titles': {'title': 'Kommissar Wisting - Der See des Vergessens (1/4)'}, 'events': {'event': 'Norwegen 2024 (Wisting)'}, 'descriptions': {'description': 'Kommissar Wisting erholt sich von seinen schweren Verletzungen. Während sein Stellvertreter Hammer und das Kripoteam sich mit einem vermeintlichen Leichenfund blamieren, erhält der krankgeschriebene Chefermittler eine anonyme Nachricht. Jemand lenkt seine Aufmerksamkeit auf einen aufgeklärten Fall: Sitzt Daniel Momrak unschuldig für den Mord an seiner Ex-Freundin Tone Vaterland im Gefängnis? Als die Leiche von Tones Freundin Agnete Kronborg gefunden wird, beginnt ein neuer Fall.\n\n[16:9] [5.1] [SUB] [AD] [12+] [PDC 08.06. 21:45]'}, 'start': '20250608214500', 'stop': '20250608223000', 'channel': '562954315180093'} {'eventid': '46855', 'pdc': '307245', 'content': '16', 'charset': '255', 'titles': {'title': 'Agatha Christies Poirot'}, 'events': {'event': 'Himmel und Hölle'}, 'descriptions': {'description': 'Ausstrahlung auch im englischen Originalton\n\nNiemand geht gerne zum Zahnarzt, aber ihn deshalb gleich umbringen? Oder war es doch ein Selbstmord, weil der Arzt seinem letzten Patienten eine Überdosis Procain in Kombination mit Adrenalin gespritzt hat? Und dann gibt es da ja noch Mr. Alastair Blunt, einen mächtigen Bankier, nach dessen Leben linke und rechte Extremisten trachten. Chief Inspector Japp tappt im Dunkeln, und auch Hercule Poirot muss seine kleinen grauen Zellen mächtig anstrengen, um auf die Lösung zu kommen.\n\n[16:9] [SUB] [12+] [PDC 09.06. 00:45]'}, 'start': '20250609004500', 'stop': '20250609023000', 'channel': '562954316490888'} Es wäre also relativ einfach (Vibecoding Gott sei Dank) "event" und "description" nach Stickworten und Jahresangaben zu durchsuchen. Ob das für Deine Zwecke ausreicht? Keine Ahnung. Die Hauptarbeit liegt in dem API-Aufruf weil man sicherlich nicht Global alle Sender, sondern nur bestimmte und sicherlich auch nur einen begrenzten Zeitraum durchsuchen will. Die Sender (channel) sind irgendwie in Zahlen verschlüsselt - habe mich mal damit beschäftigt und wieder vergessen. Wie man aber an diesen Beispielen sieht, ist es nicht leicht festzustellen was eine Serie und was ein Film ist. Und wenn die Jahreszahl fehlt, dann ist auch nicht feststellbar ob der Film "neu" ist oder nicht. Natürlich kann man noch mit Logik (oder der Hilfe von einer KI) weitere Informationen aus den Daten holen. Wenn, wie bei "Agatha Chrirsties Poirot" zu dem gleichen Titel noch weitere "event" kommen die andere Inhalte haben ist es wahrscheinlich eine Serie. Oder halt von (1/X) auf eine Serie schließen. Den Source Code für meinen Test (python) habe ich beigefügt (als txt Datei - python mag das System nicht. main.txt Quote
shaupti Posted June 9 Author Posted June 9 Das sind die normalen Daten die über das Signal mitgeliefert werden, richtig? Diese sind aber leider von Sender zu Sender unterschiedlich und teilweise steht nur der Titel ohne Zusatz Infos da. Die Serien suche ich ja direkt nach Name so wie Navy CIS und so weiter, das ist ja nicht das Problem. Neue Filme ist vielleicht falsch ausgedrückt, sind eher Filme die in der Datenbank noch nicht sind. Und neu ins TV gekommen sind auch wenn aus dem Jahr 2005. Deswegen leider die Externe Quellen damit wenigsten alles gleichmäßig Beschreibungen und Erscheinungsjahr haben. Quote
DetlefM Posted June 9 Posted June 9 Ok, dann erkläre das mal genauer. "eher Filme die in der Datenbank noch nicht sind" Was für eine Datenbank? Deine eigene Datenbank? Falls ja - wie ist sie aufgebaut, welche Informationen sind darin enthalten? Oder ist das Deine Videosammlung mit zusätzlichen Daten - dann wäre wieder die Frage was das für Zusatzdaten sind. Ohne Dein Problem zu kennen, sage ich mal, was ich mache: Ich zeichne per MediaServer diverse Serien auf. Was bedeutet, dass ich Sendungen identifizieren muss, um die Episoden auszusortieren, die ich schon habe (um Doppelaufnahmen zu vermeiden). Und nach der Aufnahme natürlich auch um die aufgenommenen Videos an die richtige Stelle zu verschieben. Ich habe also eine Datenbank (eigentlich eine Sammlung von json Dateien) für alle Serien, die ich aufgenommen habe bzw. noch aufnehmen will. Diese Datenbank wird bei laufenden Serien ab und zu upgedatet (von tmdb) um neu hinzugekommene Episoden einer Serie in die Datenbank einzupflegen. Alle paar Tage scanne ich die vom MediaServer aufgrund der Suchoptionen ausgewählten Aufnahmen und vergleiche die Daten mit meiner Datenbank und meinen Aufnahmen und disable die Timer die ich nicht mehr brauche, weil ich die Episode schon aufgenommen habe. Also - nochmal - ohne Deine Anforderungen zu kennen: Wenn ich eine Filmsammlung hätte, würde ich mir über tmdb die tmdb-id für jeden Film, den ich habe, besorgen (Query bei tmdb). Vielleicht muss ich Problemfälle manuell nachpflegen, aber das ist ja für die bestehenden Videos nur einmal notwendig. Und dann würde ich bei den Sendern, die für mich relevant sind, mir die EPG-Informationen holen und versuchen über eine entsprechende Query bei tmdb die Sendung zu identifizieren. Und dann gibt es mehrere Möglichkeiten: a) ich kann die Sendung eindeutig identifizieren - prima entweder habe ich den Film oder nicht. b) es gibt mehrere Suchergebnisse - ok dann muss ich manuell nachhelfen oder c) die Sendung kann nicht identifiziert werden und steht nicht in der Blacklist (also sowas wie Kochsendungen, Politiktalks, Nachrichten usw.) - dann wird sie einfach aufgenommen und schlimmstenfalls später gelöscht und vielleicht die Blacklist upgedatet. Quote
shaupti Posted June 9 Author Posted June 9 Hey, Also das was du machst ist so in etwa das was ich auch mache, nur halt mit den Mitteln die der MediaServer bietet. Erstmal zu dem wie es vor ein paar Tagen funktioniert hat: Da sahen die Daten ca. so aus Filme 2 Freunde (2023) D Drama_Das Erste HD (AC3,deu) 2001 Odyssee im Weltraum (1968) GB Sci-Fi-Klassiker_TELE 5 2067 - Kampf um die Zukunft (2020) AUS Sci-Fi_RTLZWEI Ambulance (2022) USA Action-Thriller_ProSieben (AC3) Die EPG-Suche im Mediaserver sieht so aus Drama(?!.*serie)(?!.*soap)(?!.*Doku) Abenteuer(?!.*serie)(?!.*magazin)(?!.*doku)(?!.*reihe)(?!.*show)(?!.*reportage) Serien 9-1-1 Lone Star 1 12_Wettstreit (2024) USA Dramaserie_ProSieben (AC3) Undercover (1)_Zehnteilige belgisch-deutsche Krimiserie_zdf_neo HD (AC3,deu) Die EPG-Suche im Mediaserver sieht so aus 9-1-1 Lone Star(?!.*2020) Ich hoffe man versteht es. Für die Serien und Filme gibt es jeweils eine Excel Liste mit den vorhandenen Sachen. Bei den Serien wird teilweise doppelt aufgenommen bis die Staffel fertig ist und der Rest dann gelöscht. Habe jetzt mal nur das Interne EPG geladen. Bei Tele 5 fehlt so einiges Bei SuperRTL sind zwar irgendwie Genres da, die aber nicht gefunden werden Kabel eins hat sehr gute Angaben Jeder Sender macht irgendwie was eigenes. Auch mal ein kleiner Auszug mit dem Beispiel der Avengers: Da wurde nach action gesucht und es wurde gefunden Superhelden-Action Comicaction Fantasyaction Also wunderbar, auch wenn da jeder Sender was anderes hat. Wenn jetzt jede Serie und jeder Film solche Genres hat wie in dem Link weiter oben, also Zum Beispiel Wild Bill _S01-E04__(2019) GB Movie Drama Detective Thriller Game show Quiz Contest_ zdf_neo HD (AC3,deu) Bones - Die Knochenjägerin _S05-E13_ - (2010) US Detective / Thriller/Science fiction Die unglaubliche Reise in einem verrückten Raumschiff - (1982) US Comedy/Science fiction / Fantasy / Horror Da kannst irgendwie nicht richtig nach etwas Suche da alles gefunden wird. Ich hoffe es ist relativ verständlich. Die Abfrage mit den Serien ist ja genial, da weiß man ja meistens was man sehen will und kann danach suchen. Bei Filmen ist das dann doch schon schwieriger Quote
pünktchen Posted June 9 Posted June 9 Nimm doch als Kriterium zusätzlich eine Mindestdauer von 80 Minuten. Damit bist du zumindest alle "normalen" Serien los. Sowas wie "Agatha Christies Marple" musst dann eben über Regex ausklammern. Quote
shaupti Posted June 11 Author Posted June 11 Hey die Idee ist gar nicht so schlecht 🙂 Wie würde der regex aussehen? Sowie ich das oben schon habe? Quote
DetlefM Posted June 15 Posted June 15 Ich hab mal etwas herumgespielt. Hier ein paar Daten, wenn ich meine Favoritensender hernehme. 49874 total epg - auch alte 44663 Ab 2025-06-15 22:39 10696 Nur von Favorites 1207 Filter duration > 70 min 557 Unterschiedliche Titel 314 Total : marked as movies 243 Total : not marked as movies Die API spuckt auch alte EPGs aus, wenn man die entfernt, nur die Favoritensender nimmt, mindestens 70 Minuten Dauer fordert kommt man auf hier auf 1200 verschiedene Titel - das sind natürlich mehr EPGs - aber Tagesschau ist immer Tagesschau (Beispiel). Es gibt bei EPGs ein content flag das ist in der ISO für DVB beschrieben muss aber nicht von den TV-Sendern eingehalten werden. Wie man sieht, sind etliche markiert als Film - wobei das auch eine Serie sein kann. Eine Blackliste habe ich derzeit noch nicht eingebaut - die ergibt sich dann nach und nach. Der nächste Schritt wäre dann der Abgleich mit den vorhandenen Aufnahmen - das lasse ich mal aus. Jedenfalls habe ich dann die EPGs mit den Titeln zusammen mit von der tmdb geholten Filmen (suche nach Titel) Kis vorgeworfen. Die können das sehr gut analysieren und eine Wahrscheinlichkeit angeben welcher von den gefunden tmdb Filmen zum EPG passt. Eine Ki Anfrage bei ChatGPT (billigstes Modell) dauert etwa 3 Sekunden. Bei einer lokalen Ki (RTX 3070) etwa 20 Sekunden. Ohne Grafikkarte habe ich es noch nicht probiert. Hier der komplette Output als Anlage (ohne KI Anfragen) output.txt Quote
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.