Ember Media Manager 1.4.8.0 Alpha - Diskussionsthread

  • wenn ich den ordner Mike & Molly versuche zu scrapen aber KEINE nfo datei vorhanden ist, dann würde er ja demzufolge wieder die falsche Serie automatisch nehmen ohne nachzufragen.
    wenn die nfo im ordner ist mit der passenden ID dann scraped er die serie richtig, ist ja auch logisch weil dann die id schon vorhanden ist. liegt aber auch an meinem workflow ich scrape neue Staffeln und verschiebe sie nach dem scrapen in einen extra ordner wo schon alle fertig gescrapten serien lagern.

    Ich frage mich bei solchen "Workflows" halt immer, wieso man das so umständlich macht. Im Klartext heisst das ja bei dir, dass du (Fall 1) jedes mal einen Serienordner erstellen musst, in den du dann die neuen Episoden reinkopierst oder (Fall 2) du lässt jeweils den Serienordner im "Temp" Bereich stehen und kopierst danach manuell nur die neu gescrapten Episoden auf dein Serienlaufwerk.

    Im Fall 1 würde das ja bedeuten, dass du jedes Mal die Serie komplett neu scrapen musst, da ja keine tvshow.nfo vorhanden ist und somit auch keine ID bekannt ist (in Annahme, dass du die Serie vorher ebenfalls aus Ember entfernt hast). Damit würdest du immer wieder in das selbe Problem laufen mit der Serie "Mike & Molly". Das wäre ansich ziemlich sinnlos und auch eine sinnlose Belastung der ganzen API Server.

    Im Fall zwei wäre ja nach dem ersten, bei Problemserien evtl. manuell ausgeführten Scrapen das Problem ja behoben, da die Serie bekannt ist und neue Episoden automatisch der richtigen Serie zugeordnet werden.

    Was gibt's für einen Grund, wieso du nicht direkt auf der endgültigen Quelle arbeitest? Ich meine so funktioniert ja z.B. auch das Kodi Interface nicht...
    Ganz ehrlich, ich würde nicht mehr auf das KI verzichten. Die Aufwand ist damit mittlerweile so gering, dass man fast nichts mehr machen muss:
    - neue Episoden direkt in den Serienordner schmeissen (ob in Staffelordner oder nicht ist ja bei aktiviertem Renamer egal)
    - im Windows Explorer rechte Maustaste auf den Ordner und im Kontextmenü Scan folder for new content... anklicken (kannste in Ember in der Einstellungen => Diverses => Contextmenu aktivieren)
    - Ember durchsucht dann nur dieses Verzeichnis nach neuen Episoden, neue Episoden werden automatisch gescrapt und umbenannt/verschoben, das KI lässt Kodi ebenfalls nur dieses Verzeichnis nach neuen Dateien durchsuchen und synct danach alle Daten
    - FERTIG!

  • Noch mal zum Verständnis für mich... emm schreibt alle Daten in die nfo , die wird dann vom KODi scrappen als Quelle genutzt und damit wird die DB bestückt. So was ist mit den ganzen Grafiken ? Holt die sich der Kodi Scrappen auch, so das ich den artwork Downloader deaktivieren kann ?

    Ember schreibt alle Daten in die NFO und legt die Bilder, Trailer und Themes gemäss den Einstellungen ab. Kodi nutzt diese beim Aufnehmen in die DB, jedoch nur die, welche Kodi von Haus aus kennt und unterstützt. Für alle anderen Bilder wie CharacterArt, ClearArt, ClearLogo, Discart und Landscape wird zusätzliche Software benötigt. Am besten nutzt du dafür das Kodi Interface in Ember, das synct alles sauber nach Kodi. Alternativ kannst du dafür auch das Addon ArtworkDownloader in Kodi nutzten, musst aber dafür in Ember die Dateinamenseinstellungen für den AD nutzen und den AD so konfigurieren, dass er lokale Dateien bevorzugt. Das Problem beim AD ist aber, dass er sich bei den Dateinamen nicht an die Exporteinstellungen von Kodi hält (sieh Link für Vergleich der verschiedenen Dateinamen). Ausserdem könnte es sein, dass der AD selbstständig neue Bilder runterlädt, die Ember ohne erneutes Laden mit F5 nicht auf dem Radar hat und sie beim Cleanup wärend des Speicherns gegebenenfalls wieder löscht.

    Für mich ist klar: eine Software soll das ganze Datenbank- und Archiv-Handling übernehmen. Im meinem Fall ist das natürlich Ember. Keine andere Software oder Addon sollte dabei noch dazwischenfunken, so wie es sich halt bei datenbankbasierten Lösung gehört.

    Und irgendwie komm ich nicht mit dem ändern einer bestehenden Serie klar. Doctor Who wurde die uralte genommen so ist es nun auch in der KODi DB. So also gestern mit emm die aktuelle Serie gescrapt durch Serie wechseln. Danach DB säubern und aktualisieren über Kodi Interface, aber in Kodi ist immer noch die alte drin. Aber auch keine doppelte.

    Du must ein Sync über das Kontextmenü machen, nur so wird gesynct. Über Tools => Kodi Interface => Datenbank updaten wird nur ein normales DB-Update in Kodi gestartet, welches ja bekannterweise bereits in die DB aufgenommene Medie komplett ignoriert. Und so lange sich die Dateinamen nicht verändert haben bringt auch ein Datenbank säubern nichts, denn die Dateien sind ja immer noch vorhanden.

  • jedoch nur die, welche Kodi von Haus aus kennt und unterstützt.

    Kodi kann die Bilder die EMM herunterlädt nutzen, da EMM dies passend benennt.

    Für alle anderen Bilder wie CharacterArt, ClearArt, ClearLogo, Discart und Landscape wird zusätzliche Software benötigt

    Damit meinst du EMM ,oder in Kodi selber noch ein Addon ? Wenn ich das richtig verstanden habe, ist dein Tool ein voll umfassendes. In Kodi, kann ich sämtliche Addon's die was mit Artwork DL und Info Scraper zu tun haben deaktivieren, da diese dadurch überflüssig werden und EMM alle Infos und Grafiken liefert, auch CharacterArt, ClearArt, ClearLogo, Discart und Landscape. Durch den Sync kann dann auch Kodi mit CharacterArt, ClearArt, ClearLogo, Discart und Landscape was anfangen ?

    Wenn das alles so richtig ist, werde ich die ganzen Addons deinstallieren, den local info scraper bräuchte ich dann auch nicht mehr, da das EMM übernimmt ? Also brauch ich auch kein Auto DB Update Addon und die automatischen Aktualisierungen bei den Quellen, kann man auch deaktivieren ?

    Du must ein Sync über das Kontextmenü machen, nur so wird gesynct. Über Tools => Kodi Interface => Datenbank updaten

    Genau so hab ich das gemacht, erst über diesen Eintrag bereinigen lassen, dann genau wie oben geschrieben. Aber dennoch war die alte Serie drin. Ich versuch das gleich noch mal, kann es ja im Webinterface testen.

    Arg :whistling: Noch mal zu meiner Automationsgeschichte ? Wenn hier EMM was macht und der Client ist nicht On, könnte man nicht eine Überwachung einbauen und sobald Kodi da ist, ein Kodi Interface => Datenbank updaten starten lassen ? Einen Command dafür gibt es bestimmt für Kodi Interface => Datenbank updaten ? Dann könnte man vllt die Windows Aufgabenplanung dafür verwenden, das die vllt sowas prüfen kann und dann ein Update startet ?

    Und noch mal zur Löschthematik, könnte man nicht als Option was einbauen, das bei Kodi Interface => Datenbank updaten gecheckt, wird ob alles vorhanden ist und wenn dann dort etwas fehlt, löscht EMM den Rest, eine Option mit vermerk, wenns weg ist ist es weg auf eigene Gefahr.

    Wird beim syncen nur in eine Richtung gesycnt ?

    Erkennt EMM eigentlich durch das Videosource ob es sich um einen 3D Film handelt ? Oder nur wenn der Filmordner so heißt :: Avatar (3D) (2014) ? Könnte man 3D Filme im Genre Bereich automatisch taggen lassen ?

    System Specs ::
    Kodi 20 Nexus, FireTV Cube // Linux Server + Emby // Samsung QN95B

    3 Mal editiert, zuletzt von Kodi_Newcomer (7. Februar 2017 um 16:49)

  • Kodi kann die Bilder die EMM herunterlädt nutzen, da EMM dies passend benennt.

    Ist das jetzt 'ne Frage oder ein Erkentnis?

    Damit meinst du EMM ,oder in Kodi selber noch ein Addon ? Wenn ich das richtig verstanden habe, ist dein Tool ein voll umfassendes. In Kodi, kann ich sämtliche Addon's die was mit Artwork DL und Info Scraper zu tun haben deaktivieren, da diese dadurch überflüssig werden und EMM alle Infos und Grafiken liefert, auch CharacterArt, ClearArt, ClearLogo, Discart und Landscape. Durch den Sync kann dann auch Kodi mit CharacterArt, ClearArt, ClearLogo, Discart und Landscape was anfangen ?
    Wenn das alles so richtig ist, werde ich die ganzen Addons deinstallieren, den local info scraper bräuchte ich dann auch nicht mehr, da das EMM übernimmt ? Also brauch ich auch kein Auto DB Update Addon und die automatischen Aktualisierungen bei den Quellen, kann man auch deaktivieren ?

    Mit Software meinte ich Ember, genau gesagt das Kodi Interface von Ember oder ein Addon wie ArtworkDownloader und MovieSet Artwort Automator in Kodi. Den AD wie auch MSAA brauchst du mit dem Kodi Interface nicht mehr, da das KI in der Lage ist, Kodi die entsprechenden Pfade der Bilder mitzuteilen, damit sie in die Kodi-DB geschrieben werden.

    Den "local Info only" Scraper brauchst du aber noch, denn du must einerseits IMMER in Kodi der Quelle den Inhalt (Film, Serie oder Musikvideo) mitteilen und einen Scraper festlegen. Ansonsten findet Kodi nicht's in der Quellen. Der "local Info only" Scraper nutzt im Gegensatz zu den anderen Scraper NUR die lokal vorhandenen Infos und Bilder, während dem alle anderen Scraper auch gerne noch zusätzliche Sachen aus dem Internet nachladen.

    Das DB Update Addon kannst du eigentlich auch deinstallieren.

    Nochmals:

    • Der "local Info only" Scraper nimmt nur dann etwas in der DB auf, wenn eine NFO vorhanden ist. So wird verhindert, dass etwas aufgenommen wird, bevor du es mit Ember gescrapt hast und die Dateien umbenannt worden sind.
    • Ember hat keinen direkten Zugriff auf die Kodi-DB. Ember bzw. das KI übermittelt die Daten immer an das Kodi JSON-RPC Interface, welches die Daten dann selber in die Kodi-DB schreibt.
    • Ember kann somit neue Filme und Episoden nicht selber der Kodi-DB hinzufügen. Beim Sync fragt das KI in Kodi nach der Datenbank-ID einer Datei. Wenn Kodi diese Datei nicht kennt, dann startet das KI automatisch einen Suchlauf in dem entsprechenden Pfad, in der die Datei liegt (und genau dafür wird irgendein Scraper in Kodi benötigt).
      Kodi macht dann ein DB-Update nur für diesen Pfad und sollte die neue Datei finden. Dabei werden aber nur die Bilder erfasst die Kodi kennt (KEINE ClearArt usw.). Wenn der Suchlauf fertig ist fragt das KI nochmals nach der Datenbank-ID für die Datei, welche nun Kodi kennen sollte.
      Mit Hilfe dieser ID übermittelt das KI nun alle Daten inkl. der Bilderpfade für die ClearArt usw. dem Kodi JSON-RPC-Interface, welches die Daten in die Kodi-DB einträgt.

    Genau so hab ich das gemacht, erst über diesen Eintrag bereinigen lassen, dann genau wie oben geschrieben. Aber dennoch war die alte Serie drin. Ich versuch das gleich noch mal, kann es ja im Webinterface testen.

    Du hast das nicht richtig gelesen und sogar so zitiert, dass meine Aussage nicht stimmt...
    Tools => Kodi Interface => Datenbank updaten startet ein normales Kodi-DB Update, das die zusätzlichen Bilder NICHT erkennt und auch nichts aktualisiert, was bereits in der Kodi-DB ist! Du musst den Sync über Kontextmenü => Sync ausführen, ausser du hast RealTimeSync aktiv und Kodi lief beim Scrapen auch wirklich.


    Die Funktion Tools => Kodi Interface => Datenbank updaten ist eigentlich nur für etwas gut: manchmal findet Kodi beim Sync trotz richtiger Pfadangabe vom KI die neuen Dateien nicht. Dies ist aber eigentlich ausschliesslich bei ganz neuen Serien der Fall (irgendein Bug in Kodi, mal tritt er auf, mal nicht). In diesem Fall müssen die Quellen komplett und sauber von Kodi gescannt werden. Dabei sollte dann wirklich alle Dateien gefunden werden und können danach sauber gesynct werden. Der Sync muss dann aber manuell gestartet werden.

    Arg Noch mal zu meiner Automationsgeschichte ? Wenn hier EMM was macht und der Client ist nicht On, könnte man nicht eine Überwachung einbauen und sobald Kodi da ist, ein Kodi Interface => Datenbank updaten starten lassen ? Einen Command dafür gibt es bestimmt für Kodi Interface => Datenbank updaten ? Dann könnte man vllt die Windows Aufgabenplanung dafür verwenden, das die vllt sowas prüfen kann und dann ein Update startet ?
    Und noch mal zur Löschthematik, könnte man nicht als Option was einbauen, das bei Kodi Interface => Datenbank updaten gecheckt, wird ob alles vorhanden ist und wenn dann dort etwas fehlt, löscht EMM den Rest, eine Option mit vermerk, wenns weg ist ist es weg auf eigene Gefahr.
    Wird beim syncen nur in eine Richtung gesycnt ?

    Man könnte eine Überwachung einbauen, aber das wird sehr kompliziert. Bitte bedenke dass es auch möglich ist, mehr als einen Host einzurichten. Es müsste dann getrennt für jeden einzelnen Host ein Log erstellt werden. Zur Zeit habe ich einfach keine Kapazität für sowas.

    Nein, das Kodi Interface ist noch nicht direkt per CommandLine ansprechbar. Das wird in der nächsten Alpha aber irgendwie kommen. Ich gehe davon aus, dass man dann einfach einen kompletten Sync machen kann, was ja aber für den täglichen Gebrauch auch unnütz ist. Wer muss schon täglich oder regelmässig die komplette DB syncen? Geprüft wird da nichts. Der Aufwand, erst alles zu überprüfen, ist viel grösser als einfach alles nochmals syncen.

    Deine Lösung mit dem Löschen finde ich schlecht. Es kommt ja durchaus vor, dass mal ein Fehler in der Ember-DB besteht und z.B. der Pfad nach dem Umbenennen nicht gespeichert worden ist (Thematik Task beenden bevor die DB commited wurde). Ich sehe es für die Zukunft eher so, dass man für Kodi ein Addon bastelt, dass das Kodi Kontextmenü um einen Eintrag erweitert, dass einen Löschauftrag an Ember sendet. Ember löscht das dann sauber und lässt den Eintrag per KI in Kodi entfernen. Dazu muss Ember aber erstmal über einen Webserver und ein JSON-RPC Interface verfügen. Auch das wird kommen, steht aber auch erstmal weit hinten.

    Beim Sync wird nur von Ember nach Kodi gesynct. Es gibt aber noch den Playcount/LastPlayed bzw. Watched Abgleich. Dabei holt Ember den aktuellen Wert von Kodi, bevor gesynct wird. Dies kann im KI entsprechend eingestellt werden.

  • Du hast das nicht richtig gelesen und sogar so zitiert, dass meine Aussage nicht stimmt...
    Tools => Kodi Interface => Datenbank updaten startet ein normales Kodi-DB Update, das die zusätzlichen Bilder NICHT erkennt und auch nichts aktualisiert, was bereits in der Kodi-DB ist! Du musst den Sync über Kontextmenü => Sync ausführen, ausser du hast RealTimeSync aktiv und Kodi lief beim Scrapen auch wirklich.

    Ok, jetzt hab ich's. Auf den ersten Blick sieht es recht ähnlich aus aber du meinst, nach einer Änderung muss man das SO übermitteln wie auf dem Screen und auch das geht momentan nur manuell direkt über EMM, nun richtig verstanden ?

    Wie funktioniert das dann bei einem neuen Film einer neuen Serie oder einer neuen Staffel ? Muss hier wieder über Kontextmenü das ganze übertragen werden oder hier diesmal wirklich Tools => Kodi Interface => Datenbank updaten ?

    Somit ist das Kontextmenü nur dafür gedacht geänderte Filme /Serien der DB mit zu teilen, da ja sonst eigentlich nichts passiert und die Änderung nicht übernommen wird.

    Ich sehe es für die Zukunft eher so, dass man für Kodi ein Addon bastelt, dass das Kodi Kontextmenü um einen Eintrag erweitert, dass einen Löschauftrag an Ember sendet. Ember löscht das dann sauber und lässt den Eintrag per KI in Kodi entfernen. Dazu muss Ember aber erstmal über einen Webserver und ein JSON-RPC Interface verfügen. Auch das wird kommen, steht aber auch erstmal weit hinten.

    Das ist genau das was ich wollte, genial. Klingt schon mal gut das du so was im Kopf hast und dir das so vorstellen kannst.

    So wenn ich nun eine Serie in EMM lösche, wie bringe ich das Kodi bei, wieder über Tools -> KI -> DB update ? Und dann löscht Kodi, das aus der DB ?

    Sorry für die vielen Fragen, aber das ist das erste mal das ich mich überhaupt so um diese Medienverwaltung kümmere, sonst haben das immer die Scraper von Mepo getan und es war dann halt irgendwie drin, nicht sauber aber drin. Dein Tool ist sehr mächtig, hatte auch schon mal mit TMM probiert, daher verliere und verwechsle ich auch immer wieder mal noch die ganzen Möglichkeiten die es bei dir gibt. Gerade das syncen, aktualisieren, updaten usw zwischen EMM und Kodi verwirrt mich immer wieder. Aber werd's wohl langsam hinbekommen.

    Tool -> KI -> DB Update für neue Sachen, in Verbindung mit dem local Info only.

    Kontext Menü -> KI -> sync wenn ich irgendwas an bestehenden Daten die schon in der Kodi DB sind verändert habe und diese Kodi mitteilen möchte.

  • Ok, jetzt hab ich's. Auf den ersten Blick sieht es recht ähnlich aus aber du meinst, nach einer Änderung muss man das SO übermitteln wie auf dem Screen und auch das geht momentan nur manuell direkt über EMM, nun richtig verstanden ?

    Ich weiss jetzt leider wieder nicht, welchen Screen du meinst... Auch weiss ich nicht, was du mit "geht momentan nur manuell direkt über Ember" meinst...
    Aber vielleicht klärt sich das weiter unten.

    Wie funktioniert das dann bei einem neuen Film einer neuen Serie oder einer neuen Staffel ? Muss hier wieder über Kontextmenü das ganze übertragen werden oder hier diesmal wirklich Tools => Kodi Interface => Datenbank updaten ?

    Ok, am besten streichst du Tools => Kodi Interface => Datenbank aktualisieren komplett aus deinem Gedächnis :rolleyes:
    Das wird wirklich nur gaaaaanz selten benötig. Und wenn dann am häufigsten bei ganz neuen Serien, die Kodi noch nie zu Gesicht bekommen hat.

    Somit ist das Kontextmenü nur dafür gedacht geänderte Filme /Serien der DB mit zu teilen, da ja sonst eigentlich nichts passiert und die Änderung nicht übernommen wird.

    Nein. Das Kontextmenü MUSS benutzt werden, wenn die Option RealTimeSync für den Host (KI Einstellungen => Host) deaktiviert ist. Ist die Option deaktiviert, dann wird nicht automatisch synchronisiert. Dann ist der einzige Weg, dass alle Daten in Kodi ankommen, der manuelle Sync über das Kontextmenü.

    Wenn RealTimeSync aktiviert ist, dann wird jedes mal ein Sync gemacht, wenn Ember etwas in die eigene DB speichert. Dies ist nach jedem Scrapen oder Edit der Fall. Somit wird bei jeder Veränderung ein Sync nach Kodi gestartet.

    Sorry für die vielen Fragen, aber das ist das erste mal das ich mich überhaupt so um diese Medienverwaltung kümmere, sonst haben das immer die Scraper von Mepo getan und es war dann halt irgendwie drin, nicht sauber aber drin. Dein Tool ist sehr mächtig, hatte auch schon mal mit TMM probiert, daher verliere und verwechsle ich auch immer wieder mal noch die ganzen Möglichkeiten die es bei dir gibt. Gerade das syncen, aktualisieren, updaten usw zwischen EMM und Kodi verwirrt mich immer wieder. Aber werd's wohl langsam hinbekommen.

    Ich kann's verstehen, die Sache ist mit all den Möglichkeiten komplex. Es ist mir bewusst, dass ich wohl mehr Vorwissen als die meisten hier habe, was das Datenbankverhalten von Kodi betrifft. Ich versuche aber eigentlich immer, die Antworten auch für Laien verständlich zu formulieren. Ein gewisses Basiswissen von Kodi muss ich aber annehmen, ich kann hier ja nicht ständig Basics erklären.

    Tool -> KI -> DB Update für neue Sachen, in Verbindung mit dem local Info only.

    Wie oben gesagt, vergiss Tools erstmal.

    Kontext Menü -> KI -> sync wenn ich irgendwas an bestehenden Daten die schon in der Kodi DB sind verändert habe und diese Kodi mitteilen möchte.

    Nein, aber das sollte nach dem Text oben nun auch klar sein.

  • Mein Problem ist eben genau das "würde warscheinlich". Ich brauch 'ne Lösung, die zu 100% funktioniert, ansonsten wird eine allfällige Fehlersuche zu Desaster. Ich sehe die hunderten Ausnahmeregelungen schon vor mir.

    Je genauer, desto mehr Zeit geht bei druff. Wenn der Größenvergleich schon mal so 99,5% bringt, könnte man zusätzlich noch die ersten (+letzten) 512 Byte einlesen und vergleichen. Dann biste bei 99,8%. Das muss dann aber auch schon reichen.

    Ist lästig, aber Kodi räumt da meiner Meinung nach auch sauber auf.

    Dein Vertrauen ehrt Dich, nach meinen Beobachtungen bin ich da aber nicht so sicher. Dieser Teil von Kodi kommt mir seeehr merkwürdig vor, wenn man mal den Cache von Kodi durchsucht, findet man jedes Bild ein paarmal wieder, offensichtlich ändert sich der Hash manchmal auch ohne ersichtlichen externen Anlass.
    Ich bin überhaupt erst auf dieses Wespennest gestossen, weil mir der Kodi Cache immer nur anwuchs, obwohl am Datenbestand keine grossen Änderungen erfolgten.
    Da es ja auch gar keine (legale) Kodifunktion gibt, diesen Cache mal aufzuräumen, hilft ab- und zu nur mal die Komplettlöschung.


    Ich denke, das ist einfach zu rechenintensiv bei der Anzahl Bilder und würde den Vorgang sehr verlangsamen. Wenn in Ember das Caching aktiviert ist muss er ja zumindest nicht mehr downloaden.

    Probieren geht über Studieren. Ich mach Dir gerne ne Funktion, die zwei Dateinamen akzeptiert, versucht rauszufinden, ob die beiden identisch sind und wenn ja die 2te einfach löscht, ansonsten die 1te löscht und die 2te auf den Namen der 1ten umbenennt. Kannst Du dann ja an der richtigen Stelle aufrufen, meinetwegen optional durch irgendein Setting aktivierbar.
    Dann haben wir den direkten Vergleich und können gucken, ob es zu lahm wird oder ob man es gar nicht merkt.

  • Je genauer, desto mehr Zeit geht bei druff. Wenn der Größenvergleich schon mal so 99,5% bringt, könnte man zusätzlich noch die ersten (+letzten) 512 Byte einlesen und vergleichen. Dann biste bei 99,8%. Das muss dann aber auch schon reichen.

    Mit Grössenvergleich meinst du nicht die Auflösung des Bilder, oder? Denn die ist ja bei gewissen Bildtypen standardisiert.

    Dein Vertrauen ehrt Dich, nach meinen Beobachtungen bin ich da aber nicht so sicher. Dieser Teil von Kodi kommt mir seeehr merkwürdig vor, wenn man mal den Cache von Kodi durchsucht, findet man jedes Bild ein paarmal wieder, offensichtlich ändert sich der Hash manchmal auch ohne ersichtlichen externen Anlass.
    Ich bin überhaupt erst auf dieses Wespennest gestossen, weil mir der Kodi Cache immer nur anwuchs, obwohl am Datenbestand keine grossen Änderungen erfolgten.
    Da es ja auch gar keine (legale) Kodifunktion gibt, diesen Cache mal aufzuräumen, hilft ab- und zu nur mal die Komplettlöschung.

    Beim Sync mit Kodi werden geziehlt alle "Texturen" im Cache gelöscht. Leider gibt's im Kodi JSON Wiki genau für diesen Teil keine Info. Ob da das File mitgelöscht wird oder nicht, hab das natürlich auch nie überprüft, werde ich aber mal machen. Im Wiki steht aber, dass der Cache alle 24 Stunden überprüft und aufgeräumt wird (was die unter aufräumen verstehen ist halt so ne Sache). Dazu gibt's auch eine ziemlich ausführliche Info: Link

    Probieren geht über Studieren. Ich mach Dir gerne ne Funktion, die zwei Dateinamen akzeptiert, versucht rauszufinden, ob die beiden identisch sind und wenn ja die 2te einfach löscht, ansonsten die 1te löscht und die 2te auf den Namen der 1ten umbenennt. Kannst Du dann ja an der richtigen Stelle aufrufen, meinetwegen optional durch irgendein Setting aktivierbar.
    Dann haben wir den direkten Vergleich und können gucken, ob es zu lahm wird oder ob man es gar nicht merkt.

    Gerne! Mir gefällt die Idee mit temporärem speichern und umbenennen aber nicht. Wir haben vor langer Zeit alles entfernt, was mit Zwischenspeichern zu tun hatte. Die ganzen Bilder werden als MemoryStream geladen und nur dann in Bitmap umgerechnet, wenn es nötig ist. Bitmap hat jetzt zwar nur bedingt mit temporärem Speichern zu tun, deine Lösung soll aber auf keinen Fall darauf hinauslaufen, das die Bilder umgerechnet werden müssen (z.B. zum Vergleich der Auflösung). Ich denke aber, dass man auch einfach den Bitstream/MemoryStream vergleichen könnte.

    Ich könnte mir da so vorstellen (wir sind nun an der Stelle, an der das vermeidlich neue Bild bereits gecached worden ist, sprich vom neuen Bild ist ein Bitstream geladen):

    • Datei existiert nicht => Bild wird gespeichert
    • Datei existiert schon => lokale Datei wird in ein temp. Objekt geladen (am besten clsAPIImages.Images, dann kann ich direkt ein Comparer einbauen, der die Bitstreams vergleicht).
      Wenn selber Bitstream, dann nicht überschreiben, ansonsten schon.
      Nach jedem Bild wird das temp. Objekt sauber disposed.

    Hmm, ich glaube das ist bereits die beste Lösung und könnte durchaus funktionieren 8o

  • Mit Grössenvergleich meinst du nicht die Auflösung des Bilder, oder? Denn die ist ja bei gewissen Bildtypen standardisiert.

    LOL, nein, natürlich nicht :)
    Ich leide ja wohl am meisten darunter. dass Episodenscreenshots unbedingt 400x225px groß sein müssen :rolleyes:

    Ich meine natürlich die Byteanzahl der Grafikdatei (lässt sich auch einfach aus dem Dateiinfo auslesen, braucht man gar keine extrafunktion für quälen, ist immer im Cache)

  • LOL, nein, natürlich nicht
    Ich leide ja wohl am meisten darunter. dass Episodenscreenshots unbedingt 400x225px groß sein müssen

    Hätte ich jetzt von dir ehrlich gesagt auch nicht erwartet, aber man weiss ja niiiie :rolleyes:

    Ich meine natürlich die Byteanzahl der Grafikdatei (lässt sich auch einfach aus dem Dateiinfo auslesen, braucht man gar keine extrafunktion für quälen, ist immer im Cache)

    Ja, aber dann müsste man eben wieder sinnlos Bilder speichern, und das kommt nicht in Frage. Aber wie siehts denn mit dem MemoryStream aus? Ist es damit möglich, Dateien zu vergleichen, auch wenn sie unterschiedliche ModificationDate und CreatedAtDate haben?
    Welchen Cache meinst du?

  • a, aber dann müsste man eben wieder sinnlos Bilder speichern, und das kommt nicht in Frage.

    typischer Fall von Denkfehler 8)
    Das machst Du doch jetzt sowieso, letztendlich speicherst Du den Memorystream auf die Platte. Vielleicht direkt unter dem Originalnamen (zwecks Überschreiben der alten Datei), dann müsste man hier eben einen TEMPNamen generieren und damit eine neue Datei erzeugen.

    Aber wie siehts denn mit dem MemoryStream aus? Ist es damit möglich, Dateien zu vergleichen, auch wenn sie unterschiedliche ModificationDate und CreatedAtDate haben?

    Die Dates sind völlig belanglos, aber man kann natürlich nicht Äpfel mit Birnen vergleichen. Also müsste man zwecks Vergleich die alte Datei ebenfalls als Memorystream öffnen. DAS ist dann aber wirklich eine Performancebremse, und auch total unnötig.

    Du denkst (wie so oft) zu kompliziert 8)

    Geh gaaanz ans Ende Deiner "wir laden ein Bild" Verarbeitungskette. Da speicherst Du den Memorystream irgendwann in eine "richtige" Datei und schließt diese. DANACH sollte der Vergleich erfolgen, indem die zwei Verzeichniseinträge (alt und neu) verglichen werden, und entweder einfach "gelöscht", oder "gelöscht und umbenannt" wird.
    Das sind alles atomare Dateifunktionen, den Performanceunterschied zu vorher merkst Du gar nicht und kannst ihn auch nicht messen.


    Welchen Cache meinst du?

    Den Dateisystemcache vom Betriebssystem. Verzeichnisse mit geöffneten oder kurz vorher geschriebenen Dateien sind immer im RAM gecached, Funktionen, die hier was auslesen, vergleichen, ändern (löschen/umbenennen) arbeiten immer nur im RAM und werden irgendwann ins Journal geschrieben und noch viel später wirklich auf die Platte geschrieben.

    NTFS ist gut (ReFS ist noch besser, aber das haben ja wohl noch nicht so viele aktiviert...) darin Plattenaktionen zu vermeiden. Wenn man nicht so dumm ist, auf einer externen USB Platte mit aktiviertem Hot Swap zu arbeiten (bei der alles Caching deaktiviert ist), so flutscht das echt ganz unbemerkt von Statten.

  • Indem Fall wäre das beste einfach RealTimeSync und ich würde da nicht mehr durcheinander kommen, aber ich müsste halt Kodi laufen lassen nebenher.

    OK, nun hab ich es glaub kapiert, TOOL's ... nur wenn RealTimeSync aus ist und ich habe in EMM z.b. eine völlig neue Serie hinzugefügt.

    Kommt eine neue Staffel zu einer vorhandenen Serie dazu Kontexmenü -> KI -> Sync

    Gilt das TOOL's auch für Filme die frisch hinzugefügt werden, die es in noch keiner DB gab, normal ja schon ?


    Schau mal bitte den Screenshot an, müsste das dann alles Deaktiviert werden, da der AD ja dann in Kodi deaktiviert wird.. Oder wie darf ich die Optionen verstehen ?

    Zu dem Problem was ich ein paar Post's weiter vorne angesprochen habe in Bezug auf BulkRenamer und dann fehlende Einträge in der DB, die bekomme ich nur raus, wenn ich die Komplette Serie aus der EMM DB lösche, den Ordner komplett bereinige bis auf die Mediafiles und dann über Datenbank aktualisieren -> Serien 4 z.B. in meinem Fall die Serie wieder neu einlesen lassen und scrapen ? Weil bei allen Serien wo dann beim Scrapen die Meldung kam, solle die Quelle anschließen wo File xy liegt, sind mehrere Folgen gleich mit den falschen Pfaden oder Dateinamen. Kann schon sein das ich beim ersten mal das ganze beendet hatte, weil es meeega lang dauert. Denke daher werde ich die Falscheinträge haben. Kontextmenü -> Neu Laden / oder Serie aktualisieren

    Ich habe dazu mal noch einen Screenshot. Die grünen sind nun die richtigen, die die schwarzen sind die alten mit einer falschen Ordnerstruktur. Muss ich hier nun manuell alle falschen Einträge rauslöschen, oder kann ich das irgendwie aktualisieren, das EMM die falschen Daten rausschmeißt ? Oder Muss hier die ganze Serie aus der DB, alle Infos aus den Ordnern und das ganze von vorne neu einlesen und scrapen ?

    Hm und noch was ist mir gerade aufgefallen, was passiert da gerade ?

    Ich habe eine weiter Quelle unter Serien hinzugefügt. Einstellungen übernommen und geschlossen. Nun habe ich massig Task's und unten Links steht "Episode hinzugefügt :......" Dort fügt er einen haufen zu den ich eigentlich schon in der DB hatte. Er zeigt auch Serien grün an, die schon vor dem hinzufügen der Quellen da waren und auch schon fertig gescrapt und in Kodi. Oder wird hier automatisch ein komplettes Update in EMM durchgeführt, wenn man eine Quelle hinzufügt ?

    Und wie lang bleiben die jetzt grün markiert ? Ich muss mir morgen genauer anschauen, was da los ist, aber dann sollten die Serien noch markiert sein damit ich weiß welche das waren...

  • Indem Fall wäre das beste einfach RealTimeSync und ich würde da nicht mehr durcheinander kommen, aber ich müsste halt Kodi laufen lassen nebenher.

    OK, nun hab ich es glaub kapiert, TOOL's ... nur wenn RealTimeSync aus ist und ich habe in EMM z.b. eine völlig neue Serie hinzugefügt.

    Kommt eine neue Staffel zu einer vorhandenen Serie dazu Kontexmenü -> KI -> Sync

    Gilt das TOOL's auch für Filme die frisch hinzugefügt werden, die es in noch keiner DB gab, normal ja schon ?

    Ganz hast du's leider immer noch nicht. Ich denke, ich werde die Tage mal ein Tutorial zum KI schreiben :rolleyes:
    Ich versuchs aber trotzdem noch ein letztes Mal (nicht böse gemeint, aber ich verliere so einfach sehr viel Zeit, die ich in frischen Code investieren könnte):

    • RealTimeSync eingeschaltet macht nur dann Sinn, wenn Kodi nebenher läuft. Ansonsten laufen alle Anfragen an Kodi ins leere und ausser Log-Einträgen wird nichts produziert.
    • Tools => Kodi Interface brauchst du auch dann nicht, wenn RealTimeSync deaktiviert ist. Du kannst gant normal über das Kontextmenü manuell Syncen. Wenn Kodi die Datei nicht kennt, dann wird automatisch gesucht.
    • Eine neue Staffel, Episode oder ein neuer Film ist kein Problem für das KI. Wenn RealTimeSync aktiviert ist, dann sucht Kodi im Notfall automatisch nach den neuen Dateien. Wenn RealTimeSync deaktiviert ist, dann muss du manuell über das Kontextmenü syncen.
    • Tools => Kodi Interface wird nur dann benötigt, wenn die Sachen trotz Sync nicht in Kodi auftauchen. Passiert aber eigentlich höchstens bei Serien und auch nur dann, wenn die Serie komplett neu ist. Scheint irgendein Problem bei komplett neuen Serienpfaden zu sein. Was hierbei noch wichtig ist: Wenn irgendwas nicht in Kodi auftaucht, dann immer erstmal in Kodi zurück zum Hauptmenü und dann nochmals in die Film bzw. Serienliste, damit auch wirklich der aktuellste Datenbankstand abgerufen wird (manchmal funktioniert die on-the-fly Aktualisierung der Ansicht nicht).

    Schau mal bitte den Screenshot an, müsste das dann alles Deaktiviert werden, da der AD ja dann in Kodi deaktiviert wird.. Oder wie darf ich die Optionen verstehen ?

    Genau. Wenn du mit dem Kodi Interface arbeitest, dann solltest du im Reiter Kodi die Erweiterte Bilder => Kodi Interface aktivieren. Der AD verwendet wie bereits erwähnt komische Dateinamen für die Bilder, deshalb gibt's dafür separate Einstellungen.
    Was du nach Änderungen an den Dateinamens-Einstellungen noch machen solltest ist alle Film neu zu laden, damit in der Ember-DB nur noch die KI Dateinamen drin sind. Kannst du über Tools => Alle Filme neu laden machen. Das selbe gilt für Serien.
    Falls RealTimeSync aktiviert ist, wird nochmals alles neu gesynct.

    Die alten AD Dateien werden dabei zur Zeit leider noch nicht gelöscht. In der nächsten Alpha gibt's dafür dann 'ne "Bereinigungsfunktion".

    Zu dem Problem was ich ein paar Post's weiter vorne angesprochen habe in Bezug auf BulkRenamer und dann fehlende Einträge in der DB, die bekomme ich nur raus, wenn ich die Komplette Serie aus der EMM DB lösche, den Ordner komplett bereinige bis auf die Mediafiles und dann über Datenbank aktualisieren -> Serien 4 z.B. in meinem Fall die Serie wieder neu einlesen lassen und scrapen ? Weil bei allen Serien wo dann beim Scrapen die Meldung kam, solle die Quelle anschließen wo File xy liegt, sind mehrere Folgen gleich mit den falschen Pfaden oder Dateinamen. Kann schon sein das ich beim ersten mal das ganze beendet hatte, weil es meeega lang dauert. Denke daher werde ich die Falscheinträge haben. Kontextmenü -> Neu Laden / oder Serie aktualisieren

    Ja, betroffene Serien solltest du komplett bereinigen. Das Problem ist, dass es ansonsten beim umbennen zum Problem werden kann, wenn zwar die Mediendatei an den richtigen Ort verschoben werden kann, dort aber bereits eine verweiste NFO oder ein Bild liegt, was nicht einfach so überschrieben wird. Ich muss das zugegebenermassen ein wenig besser bzw. sauberer lösen.

    In Zukunft wird der Renamer fester Bestandteil der EmberAPI sein und nicht mehr ein eigenes Modul. So kann ich dann die Fehler auch sauber Abfangen und zukünfig ein solchen Puff so gut wie möglich verhindern.

    Ich habe eine weiter Quelle unter Serien hinzugefügt. Einstellungen übernommen und geschlossen. Nun habe ich massig Task's und unten Links steht "Episode hinzugefügt :......" Dort fügt er einen haufen zu den ich eigentlich schon in der DB hatte. Er zeigt auch Serien grün an, die schon vor dem hinzufügen der Quellen da waren und auch schon fertig gescrapt und in Kodi. Oder wird hier automatisch ein komplettes Update in EMM durchgeführt, wenn man eine Quelle hinzufügt ?

    Es gibt Einstellungen, bei den Ember die Quellen neu einlesen muss (Änderungen an den Filter oder zulässigen Dateinamen z.B.). Wenn du nur eine neue Quelle hinzugefügt hast, dann sollte er eigentlich nur diese Quelle automatisch durchsuchen.

    Ach diesbezüglich wird's in der nächsten Alpha noch einiges an Verbesserungen geben.

    Und wie lang bleiben die jetzt grün markiert ? Ich muss mir morgen genauer anschauen, was da los ist, aber dann sollten die Serien noch markiert sein damit ich weiß welche das waren...

    Der Status New (grün) wird vor jedem Datenbank-Update zurückgesetzt.

  • klar du hast vollkommend recht, unter dem "normalen" anwendungsgebiet ist es so wie du beschrieben hast auf jeden fall besser. bei mir läuft das aber alles anders da ich meine ganzen filme und serien in die cloud ausgelagert habe und dort war dann das problem das bei schon wenig serien und filme eine datenbankaktualisierung STUNDEN gedauert hat. da für jede datei die kodi angepackt hat ein api-call ausgeführt wurde und die verschlüsselung hat nochmal alles verlangsamt. daher musste ich umstellen auf strm dateien. ich scrape immer die videodateien ganz normal(zwecks auflösung, sprache, soundinfos etc.) und erstelle dann per script für jede videodatei eine einzelne strm datei die den link enthalt zur video datei in der cloud. und ich habe jetzt quasie meinen Videoordner lokal in dem nur die strm files mit den nfo und fanarts lagern. kodi scannt dann nur den loakeln ordner und braucht so nur wenige minuten.

    wie ich jetzt die filmdateien einer neuen staffel einfach so zu einer vorhanden staffel kopieren, dann würde das scrapen zwar ohne probleme klappen da die nfo ja schon vorhanden aber das ist mega aufwändig diese videofiles dann wieder zu identifizieren und die strm files zu erstellen. ?(

  • da ich meine ganzen filme und serien in die cloud ausgelagert habe

    ?( Schauder :!:

    :?: :?: :?: bist Du Masochist oder so was :?: :?: :?:

    LOL, Dan will ein paar Taktzyklen sparen und die User verschieben ihre Dateien ins Nirwana und machen den Zugriff extra langsam. Vergebene Liebesmüh nennt man das dann wohl... :wacko:

  • ?( Schauder :!:
    :?: :?: :?: bist Du Masochist oder so was :?: :?: :?:

    LOL, Dan will ein paar Taktzyklen sparen und die User verschieben ihre Dateien ins Nirwana und machen den Zugriff extra langsam. Vergebene Liebesmüh nennt man das dann wohl... :wacko:

    nee bin ich nicht :thumbup:
    wieso zugriff extra langsam? durch meine lösung funktionierts ja ganz normal schnell wie bei dir auch. Dort Lagern die Daten einfach sicherer vor Ausfall. Zuhause habe ich zwar ein RAID6 aber selbst dort können wärend eines Rebuilds zuviele platten austeigen und dann sind die ganzen Daten hin :thumbdown: von dem ganzen festplatten tauschen ganz zu schweigen

  • durch meine lösung funktionierts ja ganz normal schnell wie bei dir auch

    Na ja, wenn Deine Internetleitung mehr als 10Gb/s hergibt kann das stimmen, ansonsten hast Du Pech :thumbup:

    Gerade nach dem neuesten Urteil (wo das FBI Google gezwungen hat, Daten von Europaservern rauszurücken) wäre mir eine Cloud nun wirklich der letzte Ort, um wichtige Daten zu speichern.

  • Weil Du sagst, bei mir wäre es nicht schneller, als bei Dir. Und ich hab eben meinen Fileserver mit 10GbE an die Clients angebunden.
    Aber egal, bleiben wir lieber beim Problem 8o

  • Weil Du sagst, bei mir wäre es nicht schneller, als bei Dir. Und ich hab eben meinen Fileserver mit 10GbE an die Clients angebunden.
    Aber egal, bleiben wir lieber beim Problem 8o

    das klingt sehr gut :love: :thumbup: stromkosten sind bestimmt auch im Giga bereich oder? :thumbup: :thumbup: :thumbup:
    aber zum filme streamen ist es doch wurscht. eine Bluray hat in der Regel 35-45Mbit/s an bitrate und da langt mein 100.000 Anschluss. aber bald wird ja ausgebaut bei uns :evil:

Jetzt mitmachen!

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