Ember Media Manager 1.4.8.0 Alpha - Diskussionsthread

  • DAS kann leider nun gar nicht stimmen :thumbdown: Denn sonst würde Ember ja mitkriegen, dass man Kodi gekillt hat, da dann die Verbindung zusammenbricht und "weitere Anfragen" nicht übermittelt werden können...

    Nee, nee, das Teil hängt eindeutig woanders.

    Vielleicht krieg ich es gleich raus, wenn dieser Durchgang wieder in die Hose geht, versuch ich mal den Debugger einzuklinken...

    Dann aktiviere bitte in Kodi ebenfalls das erweiterte Debugging inkl. "Ausführliche Protokollierung der JSON-RPC Anfragen".

  • Ich verstehe ehrlich gesagt deine Ansicht zu dem Thema immer noch nicht.

    die ist eigentlich recht simpel: "mich interessiert nur die Auflösung, die mir mein Abspielgerät auch anzeigt".

    Es ist mir also egal, ob da 544 Zeilen, 640 oder 720 Zeilen drin sind. Wenn die horizontale Auflösung X bei ( 720 < X <= 1280) liegt, dann kommt da eben HD 720p raus, basta!

    Die jetzige Funktion ist viel zu detailliert und vor allen Dingen beachtet sie nur GLEICHHEIT. Die Filme (sofern man die schwarzen Balken weglässt) haben aber in den seltensten Fällen diese ideale Auflösung, sonder liegen irgendwo dazwischen. Das ergibt nach dezeitigen Stand sehr oft "Res?" (aka: "keine Ahnung, denk Dir was aus"), eine Auflösung, die dem Anwender nun wirklich überhaupt nicht weiterhilft.

    Also, besser grob angenähert, als im Detail verloren gegangen.

  • So recht?
    (hast Glück gehabt, die Tasks fangen gerade an hochzuzählen)

    Ja genau. und dazu müssen diese zwei noch aktiviert sein:

    Externer Inhalt sc-cdn.scaleengine.net
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.

    Ich muss jetzt futtern gehn. Mahlzeit!

  • MAM wünscht "Gut MAMpf!" :thumbup:

    Tscha, hier hat das Grauen dann wieder zugschlagen, wobei es diesmal "nur" 1501 Tasks in der Queue sind.

    Im Emberlog sind ALLE Filme bis hin zum letzten aufgeführt, hier z.B. der letzte Eintrag (Ember geht ja immer rückwärts von "Z" bis zu "(" bei mir)

    2017-06-06 12:16:38.3869;Ember_Media_Manager.frmMain;Ember_Media_Manager.frmMain.bwMovieScraper_DoWork;9;TRACE;[Movie Scraper] [Start] Scraping (500) Days of Summer (2009);2017-06-06 12:16:38.6804;EmberAPI.ModulesManager;EmberAPI.ModulesManager.RunGeneric;1;TRACE;[ModulesManager] [RunGeneric] [Start] <Notification>;2017-06-06 12:16:38.6804;EmberAPI.ModulesManager;EmberAPI.ModulesManager.RunGeneric;1;WARN;[ModulesManager] [RunGeneric] No generic modules defined <Notification>;2017-06-06 12:16:38.7941;EmberAPI.ModulesManager;EmberAPI.ModulesManager.RunGeneric;9;TRACE;[ModulesManager] [RunGeneric] [Start] <ScraperMulti_Movie>;2017-06-06 12:16:38.7941;EmberAPI.ModulesManager;EmberAPI.ModulesManager.RunGeneric;9;TRACE;[ModulesManager] [RunGeneric] Run generic module <Renamer>;2017-06-06 12:16:38.7941;EmberAPI.ModulesManager;EmberAPI.ModulesManager.RunGeneric;9;TRACE;[ModulesManager] [RunGeneric] Run generic module <Kodi>;2017-06-06 12:16:38.7941;generic.Interface.Kodi.Kodi.APIKodi;generic.Interface.Kodi.Kodi.APIKodi+VB$StateMachine_24_GetPlaycount_Movie.MoveNext;21;TRACE;"[APIKodi] [KRAKE] GetPlaycount_Movie: ""(500) Days of Summer"" | Start process...";2017-06-06 12:16:38.8136;generic.Interface.Kodi.Kodi.APIKodi;generic.Interface.Kodi.Kodi.APIKodi+VB$StateMachine_32_SearchMovie.MoveNext;14;TRACE;"[APIKodi] [KRAKE] [SearchMovie] ""\\Hexalotte\Filme2\Komödie\(500) Days of Summer (2009)\(500) Days of Summer (2009).mkv"" | OK, found in host database! [ID:3437]";2017-06-06 12:16:38.8326;generic.Interface.Kodi.Kodi.APIKodi;generic.Interface.Kodi.Kodi.APIKodi+VB$StateMachine_24_GetPlaycount_Movie.MoveNext;14;TRACE;"[APIKodi] [KRAKE] GetPlaycount_Movie: ""(500) Days of Summer"" | Nothing to sync";2017-06-06 12:16:38.8326;EmberAPI.ModulesManager;EmberAPI.ModulesManager.RunGeneric;14;TRACE;[ModulesManager] [RunGeneric] [Start] <Notification>;2017-06-06 12:16:38.8326;EmberAPI.ModulesManager;EmberAPI.ModulesManager.RunGeneric;14;WARN;[ModulesManager] [RunGeneric] No generic modules defined <Notification>;2017-06-06 12:16:38.8449;EmberAPI.ModulesManager;EmberAPI.ModulesManager.RunGeneric;9;TRACE;[ModulesManager] [RunGeneric] [Start] <OnNFOSave_Movie>;2017-06-06 12:16:38.8449;EmberAPI.ModulesManager;EmberAPI.ModulesManager.RunGeneric;9;WARN;[ModulesManager] [RunGeneric] No generic modules defined <OnNFOSave_Movie>;2017-06-06 12:16:40.3783;EmberAPI.HTTP;EmberAPI.HTTP.DownloadFile;9;ERROR;DownloadFile <>;"EXCEPTION OCCURRED:System.UriFormatException: Ungültiger URI: Der URI ist leer. bei System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind) bei System.Net.WebRequest.Create(String requestUriString) bei EmberAPI.HTTP.DownloadFile(String URL, String LocalFile, Boolean ReportUpdate, String Type, String WebURL) in C:\Users\mam\Source\Repos\Ember-MM-Newscraper\EmberAPI\clsAPIHTTP.vb:Zeile 291.* bei System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind) bei System.Net.WebRequest.Create(String requestUriString) bei EmberAPI.HTTP.DownloadFile(String URL, String LocalFile, Boolean ReportUpdate, String Type, String WebURL) in C:\Users\mam\Source\Repos\Ember-MM-Newscraper\EmberAPI\clsAPIHTTP.vb:Zeile 291."2017-06-06 12:16:40.3783;EmberAPI.Themes;EmberAPI.Themes.LoadFromWeb;9;WARN;Theme NOT downloaded: ;2017-06-06 12:16:40.3783;EmberAPI.HTTP;EmberAPI.HTTP.DownloadFile;9;ERROR;DownloadFile <>;"EXCEPTION OCCURRED:System.UriFormatException: Ungültiger URI: Der URI ist leer. bei System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind) bei System.Net.WebRequest.Create(String requestUriString) bei EmberAPI.HTTP.DownloadFile(String URL, String LocalFile, Boolean ReportUpdate, String Type, String WebURL) in C:\Users\mam\Source\Repos\Ember-MM-Newscraper\EmberAPI\clsAPIHTTP.vb:Zeile 291.* bei System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind) bei System.Net.WebRequest.Create(String requestUriString) bei EmberAPI.HTTP.DownloadFile(String URL, String LocalFile, Boolean ReportUpdate, String Type, String WebURL) in C:\Users\mam\Source\Repos\Ember-MM-Newscraper\EmberAPI\clsAPIHTTP.vb:Zeile 291."2017-06-06 12:16:40.3783;EmberAPI.Trailers;EmberAPI.Trailers.LoadFromWeb;9;WARN;Trailer NOT downloaded: ;2017-06-06 12:16:40.4750;EmberAPI.ModulesManager;EmberAPI.ModulesManager.RunGeneric;9;TRACE;[ModulesManager] [RunGeneric] [Start] <Sync_Movie>;2017-06-06 12:16:40.4750;EmberAPI.ModulesManager;EmberAPI.ModulesManager.RunGeneric;9;TRACE;[ModulesManager] [RunGeneric] Run generic module <Kodi>;2017-06-06 12:16:40.4750;Ember_Media_Manager.frmMain;Ember_Media_Manager.frmMain.bwMovieScraper_DoWork;9;TRACE;[Movie Scraper] [Done] Scraping (500) Days of Summer (2009);2017-06-06 12:16:40.4750;Ember_Media_Manager.frmMain;Ember_Media_Manager.frmMain.bwMovieScraper_DoWork;9;TRACE;[Movie Scraper] [Done] Scraping;

    Diese Zeilen wiederholen sich für jeden Film (mehr oder weniger).
    Wobei mir dabei irgendwie mies aufstösst, dass ich doch NUR METADATEN neu einlesen wollte, laut Logfile wird aber wild rumgescraped ?!?!?!?

    bei Kodi siehts etwas anders aus, aber offensichtlich ist Kodi ebenfalls bis zum letzten Film gekommen:
    12:16:37.903 T:11112 DEBUG: ------ Window Init (Pointer.xml) ------12:16:38.794 T:1240 DEBUG: CWebServer[8080]: request received for /jsonrpc12:16:38.795 T:6056 DEBUG: Previous line repeats 1 times.12:16:38.795 T:6056 DEBUG: JSONRPC: Incoming request: {

      "jsonrpc": "2.0",

      "method": "JSONRPC.Ping",

      "params": {},

      "id": 0

    }12:16:38.795 T:6056 DEBUG: CWebServer[8080]: request received for /jsonrpc12:16:38.796 T:3040 DEBUG: Previous line repeats 1 times.12:16:38.796 T:3040 DEBUG: JSONRPC: Incoming request: {

      "jsonrpc": "2.0",

      "method": "JSONRPC.Version",

      "params": {},

      "id": 1

    }12:16:38.797 T:3040 DEBUG: CWebServer[8080]: request received for /jsonrpc12:16:38.798 T:1340 DEBUG: Previous line repeats 1 times.12:16:38.798 T:1340 DEBUG: JSONRPC: Incoming request: {

      "jsonrpc": "2.0",

      "method": "VideoLibrary.GetMovies",

      "params": {

      "filter": {

      "and": [

      {

      "field": "path",

      "operator": "is",

      "value": "smb://hexalotte/Filme2/Komödie/(500) Days of Summer (2009)/"

      },

      {

      "field": "filename",

      "operator": "is",

      "value": "(500) Days of Summer (2009).mkv"

      }

      ]

      }

      },

      "id": 2

    }12:16:38.806 T:1340 DEBUG: This query part contains a like, we will double backslash in the next field: LIKE '12:16:38.808 T:1340 DEBUG: Previous line repeats 3 times.12:16:38.808 T:1340 DEBUG: CVideoDatabase::RunQuery took 2 ms for 1 items query: select * from movie_view WHERE ((movie_view.strPath LIKE 'smb://hexalotte/Filme2/Komödie/(500) Days of Summer (2009)/')) AND ((movie_view.strFilename LIKE '(500) Days of Summer (2009).mkv'))12:16:38.814 T:1340 DEBUG: CWebServer[8080]: request received for /jsonrpc12:16:38.814 T:240 DEBUG: Previous line repeats 1 times.12:16:38.814 T:240 DEBUG: JSONRPC: Incoming request: {

      "jsonrpc": "2.0",

      "method": "VideoLibrary.GetMovieDetails",

      "params": {

      "movieid": 3437,

      "properties": [

      "title",

      "genre",

      "year",

      "rating",

      "director",

      "trailer",

      "tagline",

      "plot",

      "plotoutline",

      "originaltitle",

      "lastplayed",

      "playcount",

      "writer",

      "studio",

      "mpaa",

      "cast",

      "country",

      "imdbnumber",

      "runtime",

      "set",

      "showlink",

      "streamdetails",

      "top250",

      "votes",

      "fanart",

      "thumbnail",

      "file",

      "sorttitle",

      "resume",

      "setid",

      "dateadded",

      "tag",

      "art"

      ]

      },

      "id": 3

    }12:16:42.908 T:11112 DEBUG: ------ Window Deinit (Pointer.xml) ------12:16:43.325 T:11112 DEBUG: CWinEventsWin32::WndProcWindow is active12:16:43.375 T:11112 DEBUG: ------ Window Init (Pointer.xml) ------12:16:49.197 T:11112 DEBUG: ------ Window Deinit (Pointer.xml) ------12:17:22.843 T:11112 DEBUG: ------ Window Init (Pointer.xml) ------12:17:24.394 T:11112 DEBUG: CWinEventsWin32::WndProc: window move event12:17:27.681 T:11112 DEBUG: Previous line repeats 46 times.12:17:27.681 T:11112 DEBUG: CWinEventsWin32::WndProcWindow is active12:17:30.919 T:11112 DEBUG: ------ Window Deinit (Pointer.xml) ------12:24:24.948 T:8568 DEBUG: Thread JobWorker start, auto delete: true12:24:54.949 T:8568 DEBUG: Thread JobWorker 8568 terminating (autodelete)12:26:00.015 T:11112 DEBUG: Updating RSS12:26:00.016 T:11036 DEBUG: Thread RSSReader start, auto delete: false

    Eigentlich werden die Ember Anfragen so schnell abgearbeitet, dass die gar nicht in die Queue gehen. Erst, wenn irgendwas in die Hose geht, fängt der Taskzähler an zu laufen. Also schon die "nummer 1" ist in diesem Falle ein untrügliches Zeichen für den Abflug :-(((

    Aber Kodi bekommt ja weiter immer die neuen Tasks zugestellt, kann es nicht doch sein, dass Ember einfach eine Antwort "verpennt" hat und danach nur noch auf Godot wartet? Offensichlich werden ja auch keine Quittungen für die neuen Tasks mehr akzeptiert :(

  • Wobei mir dabei irgendwie mies aufstösst, dass ich doch NUR METADATEN neu einlesen wollte, laut Logfile wird aber wild rumgescraped ?!?!?!?

    Naja, Metadaten holen ist halt auch ein Scrapevorgang. Wenn du "nur Metadaten" ausgewählt ist ist auch nur dieser Trigger aktiv. Anonsten würdest du noch pro Film die Einträge für "[Start] TMDB" und "[Done] TMDB" usw. sehen.

    Eigentlich werden die Ember Anfragen so schnell abgearbeitet, dass die gar nicht in die Queue gehen. Erst, wenn irgendwas in die Hose geht, fängt der Taskzähler an zu laufen. Also schon die "nummer 1" ist in diesem Falle ein untrügliches Zeichen für den Abflug :-(((

    Nein, kann an nicht so sagen. Wenn die Filme/Episoden bereits in der Kodi-DB sind bzw. Kodi anhand der ersten ID Anfrage bereits eine ID liefert, dann geht es in der Tat extrem schnell. Wenn aber kein Eintrag mit Pfad/Dateiname gefunden wird, dann startet das DB-Update in Kodi, was halt länger dauert.

    Aber Kodi bekommt ja weiter immer die neuen Tasks zugestellt, kann es nicht doch sein, dass Ember einfach eine Antwort "verpennt" hat und danach nur noch auf Godot wartet? Offensichlich werden ja auch keine Quittungen für die neuen Tasks mehr akzeptiert

    Verstehe ich nicht ganz...
    - Godot?
    - akzeptiert keine neuen Tasks/Quittungen?

    EDIT: Falls du damit die Infos oben rechts in Kodi meinst, die trotz Abschluss in Ember immer noch angezeigt werden, dann liegt das daran, dass diese Meldungen einfach noch im "Meldung-Speicher" sind. Kodi zeigt ja jede Meldung eine gewisse Zeit an, da dauert es dann schon ziemlich lange, bis alle 1501 Meldungen vom KI durch sind ;)

    Hat's denn jetzt ein Problem gegeben oder nicht? Falls ja, dann brauche ich die vollständigen Logs zur Analyse. Einfach an support@embermediamanager.org senden.

  • Wie gesagt, ich will und werde für den aktuellen Stand von Ember keine neuen Features mehr einbauen, höchstens noch ein Abbrechen Button für das KI, wenn es irgendwie umsetzbar ist. Sobald ich das Thema "Ermittlung der Auflösung" mit @mam geklärt habe wird's ein Beta Release geben. Danach werden nur noch grobe Fehler gefixt und es gibt nach Jahren mal endlich ne hoffentlich stabile Version.

    Von welchem aktuellen Stand redest du jetzt? v1.4.7.2 oder v1.4.8.0 alpha23.3??
    Von welcher Version soll es dann ein Beta Release geben?

    Oder hast du inzwischen eine komplett neue Version programmiert und an mir ist das komplett vorbei gegangen (was ja nicht schlimm wäre)?

    Zitat

    Für die Version 2.0 habe ich eine Möglichkeit geschaffen, solche Reports anzulegen.

    Wie gesagt, das KI hängt sich nicht an der Menge der Tasks auf sondern ausschliesslich an einem Task, der aus welchem Grund auch immer nicht weitermacht. Aufhängen ist eigentlich auch falsch gesagt, denn das Problem ist meistens Kodi, das immer sagt "ich scanne noch die Bibliothek". Ember wartet dann halt einfach ewig. Wenn das KI einen richtigen Fehler hat, dann wird der Task "sauber" verworfen und der nächste startet. Ebenfalls dann, wenn Kodi nicht erreicht werden kann.

    Jaja, ist schon klar, dass es überhaupt nicht auf die Menge so ankommt. Ich hab mich für das kleinteilige entschieden, um schlicht und einfach Zeit, bei der Wiederholung, zu sparen.

    Kodi-Hardware anzeigen

    HTPC: Kodi 19.x auf Nvidia Shield 2017
    TV: LG 65SK9500, AVR: Pioneer SC-LX57, Boxen: Nubert NuLine 284 Set 7.1
    Server: OmniOSce r151024 mit Napp-it pro, SM-Board X8SI6-F, Intel Xeon L3426, 16GB ECC RAM, LSI 9211-8i & 9201-16i, nur Hitachi/HGST 7k4000, XCase-Gehäuse RM424

  • EDIT: Falls du damit die Infos oben rechts in Kodi meinst, die trotz Abschluss in Ember immer noch angezeigt werden, dann liegt das daran,

    Nein nein, DIE Meldungen in Kodi habe ich schon seit Urzeiten deaktiviert (erkennt man auch im Log, "Notifications" werden nicht ausgeführt). Sonst bräucte der Kram ja noch ein paar Tage pro Durchlauf. Ich mein schon die Tasks oben rechts in Ember.

    PS: juh häff Mehl...
    PPS: auch MAMis sind mal wech zur Nahrungsaufnahme (Und da heute Dienstach ist, wird vorher noch das "weekly fridge-filling" praktiziert, sprich, den Kofferraum voller Lebensmittel packen um die nächste Woche auch eingeschneit überleben zu können)

  • Von welchem aktuellen Stand redest du jetzt? v1.4.7.2 oder v1.4.8.0 alpha23.3??
    Von welcher Version soll es dann ein Beta Release geben?

    Oder hast du inzwischen eine komplett neue Version programmiert und an mir ist das komplett vorbei gegangen (was ja nicht schlimm wäre)?

    Aus 1.4.8.x Alpha wird 1.5 Beta, dann 1.5 Stable.
    Ja, ich arbeite schon länger an einer neuen Version bzw. neuem Unterbau für Version 2.0. Deshalb möchte ich bei der aktuellen 1.4/1.5 nicht mehr allzuviel verändern, ist ja nur doppelte Arbeit.

  • Nein nein, DIE Meldungen in Kodi habe ich schon seit Urzeiten deaktiviert (erkennt man auch im Log, "Notifications" werden nicht ausgeführt).

    Das ist nur das Modul "Meldungen", welches die hässlichen Ember Meldungen rechts unten generiert (die, die bei der Menge auch nie mehr richtig verschwinden). Die Meldungen in Kodi lassen sich nur über die KI Einstellungen deaktivieren. Aber das hast du ja wohl schon gemacht.

    Ich mein schon die Tasks oben rechts in Ember.

    Und da stehen noch offene Tasks obwohl du der Meinung bist, dass alles durch ist?

    auch MAMis sind mal wech zur Nahrungsaufnahme

    Na dann Mahlzeit oder gut einkauf!

  • Und da stehen noch offene Tasks obwohl du der Meinung bist, dass alles durch ist?

    Also nochmal von vorne...

    * Ich starte die große Schleife "sammle alle Metadaten neu ein"
    * Ember legt los, beginnt bei "ZZZZZ...." und zählt rückwärts (unten rechts in der Ecke) die offenen Tasks sind und bleiben bei NULL
    * IRGENDWANN (mal nach 2000, mal nach 3000, keine Ahnung wann, rein zufällig) beginnt die Zahl der offenen Tasks oben rechts hochzuzählen. Die Filmtitel unten rechts werden weiter abwärts gezählt, eigentlich sogar im gleichen Takt, wie zuvor
    * Wenn einmal begonnen wurde, die Tasks hochzuzählen, wird nie wieder irgendeiner dieser Task auch mal beendet und subtrahiert. Es wird solange aufaddiert, bis die Filmschleife unten rechts abgearbeitet und beendet ist
    * Danach passiert nix mehr. Oben rechts bleibt die Zahl stehen, das wars.

    Na dann Mahlzeit oder gut einkauf!

    Bin ja schon wieder da, wollte nur die lange Mittagspause erklären :thumbup:

  • Also nochmal von vorne...
    * Ich starte die große Schleife "sammle alle Metadaten neu ein"
    * Ember legt los, beginnt bei "ZZZZZ...." und zählt rückwärts (unten rechts in der Ecke) die offenen Tasks sind und bleiben bei NULL
    * IRGENDWANN (mal nach 2000, mal nach 3000, keine Ahnung wann, rein zufällig) beginnt die Zahl der offenen Tasks oben rechts hochzuzählen. Die Filmtitel unten rechts werden weiter abwärts gezählt, eigentlich sogar im gleichen Takt, wie zuvor
    * Wenn einmal begonnen wurde, die Tasks hochzuzählen, wird nie wieder irgendeiner dieser Task auch mal beendet und subtrahiert. Es wird solange aufaddiert, bis die Filmschleife unten rechts abgearbeitet und beendet ist
    * Danach passiert nix mehr. Oben rechts bleibt die Zahl stehen, das wars.

    Bin ja schon wieder da, wollte nur die lange Mittagspause erklären :thumbup:

    Ok, dann werde ich heute bei meiner Lib auch mal alle Metadaten erneuern lassen und gucken, was da passiert. Kann das jetzt gerade nicht verstehen. Die Tasks für das KI werden ja immer beim Speichern der Infos/Bilder in die DB erstellt, nicht erst am Schluss des gesammten Scrapevorgangs.

  • Ich vermute, dass auf dieser Kiste die einzelnen Tasks so flott abgearbeitet werden, dass er gar nicht zum Queuen kommt.
    (I7-6700@4,4Ghz, 32Gb Ram, Kodi lokal, MySQL Datenbank aber auf ner Schnarchtüte im LAN)

    Erst, wenn dann mal ein Task in die Hose geht, fängt er an sie in die Queue zu packen und die Anzahl hochzuzählen.

  • Ich vermute, dass auf dieser Kiste die einzelnen Tasks so flott abgearbeitet werden, dass er gar nicht zum Queuen kommt.
    (I7-6700@4,4Ghz, 32Gb Ram, Kodi lokal, MySQL Datenbank aber auf ner Schnarchtüte im LAN)

    Erst, wenn dann mal ein Task in die Hose geht, fängt er an sie in die Queue zu packen und die Anzahl hochzuzählen.

    Ich check heut Abend mal deine Logs und lass es bei mir durchlaufen. Mal gucken was rauskommt.

  • Ich vermute, dass auf dieser Kiste die einzelnen Tasks so flott abgearbeitet werden, dass er gar nicht zum Queuen kommt.
    (I7-6700@4,4Ghz, 32Gb Ram, Kodi lokal, MySQL Datenbank aber auf ner Schnarchtüte im LAN)

    Erst, wenn dann mal ein Task in die Hose geht, fängt er an sie in die Queue zu packen und die Anzahl hochzuzählen.

    Hab bei mir gerade bei 1354 Filmen die Metadaten aktualisert mit aktiviertem RealTimeSync im KI. Ist ohne Probleme durchgelaufen. Zwischendurch musste mal der eine oder andere Film erst in Kodi gesucht werden, ging aber auch ohne Probleme.


    Hier mal ein Auszug aus meinem Log (unnützes dazwischen habe ich entfernt:

    Wie man sehen wird während dem Scrapen synchron der Playcount abgeglichen (Zeile 8), nach dem Scrapen dann asynchron der Snyc ausgeführt (Zeile 18).
    Wie du bereits erwähnt hast das dauert das Scrapen der Metadaten länger als der Sync, somit ist eigentlich immer nur ein Task in der KI-Task-Liste.

    Wenn ich mir dein Log ansehe fallen zwei Sachen auf:

    Der komplette Scrapevorgang wurde abgeschlossen (Zeile 13), ebenfalls konnte beim letzten Film der Playcount noch abgeglichen werden (Zeile 7). Kodi war also zu dem Zeitpunkt noch erreichbar. Der Film selbst wurde aber nicht mehr gesynct.

    Ich hab also mal nach dem letzten UpdateInfo_Movie Eintrag gesucht...
    Der letzte Eintrag oben ist von 12:16, der letzte Vorgang UpdateInfo_Movie wurde um 11:43 (sauber) beendet und geloggt... danach herrschte Ruhe im Taskmanager. Der letzte gesynct Film war "Die Geschichte des Richard O." Das war warscheinlich der Zeitpunkt, in dem sich die Tasks im Manager angefangen haben zu stapeln. Es scheint, als hätte der Manager einfach aufgehört zu arbeiten...


    Grundsätzlich habe ich gerade keine Idee, warum die Tasks nicht weiter abgearbeitet wurden. Beim Hinzufügen neuer Tasks wird eigentlich immer geprüft, ob der Manager noch läuft oder gestartet werden muss. Ich werde da nun mal ein paar Logpunkte mehr einbauen und nochmals genau nachsehen, ob ich was finde.

  • Es scheint, als hätte der Manager einfach aufgehört zu arbeiten...

    Pöhser Männnätscher! 8o

    ansonsten bin ich mal wieder reingefallen und hatte vergessen, dass ja bei solchen Schleifen immer die Actorsbilder neu erstellt werden :(
    Dementsprechend war die tägliche Sicherung gestern Abend mehr ne nächtliche :-(((

    Der Käfer gehört vordringlich beseitigt, eigentlich kann man sich an keine Änderung mehr trauen, solange immer diese Damoklesschwert über einem schwebt...

  • Also ich hab das Problem auch mit dem KI, dass irgendwer einfach nicht weiter macht. Allerdings langen da bei mir meistens schon nur 50 Filme und nach dem 4. ist dann Schluss oder so...
    Das schwankt halt sehr und hat irgendwie keine Symptomatik. Mal kommt er ein paar Filme weiter, mal ist früher Schluss

  • Grundsätzlich habe ich gerade keine Idee, warum die Tasks nicht weiter abgearbeitet wurden.

    Na ich hätte da eine diffuse anzubieten, die Dir nicht wirklich gefallen wird :)

    Ember übertreibt es ja manchmal ein wenig mit den vielen Threads und dazu auch noch mit reichlich vielen (erwarteten) Exceptions.
    Beides zusammen ergibt einen recht explosiven Cocktail, denn sowohl beim Threadswitch, als auch bei einer Exception wird ein bestimmter Speicherbereich für eine kurze Zeitspanne exklusiv gesperrt. Während dieser Zeitspanne erfolgt die Abarbeitung "atomar", kann also nicht mehr unterbrochen werden.
    Dabei wird es still in Kauf genommen, dass ein anderes, in dieser Zeit eintreffendes, Event stillschweigend ignoriert wird.
    Die Zeit ist sehr kurz, das Zusammentreffen sehr selten, aber trotzdem gibt es noch ein statistische Wahrscheinlichkeit (die deutlich besser ist, als ein 6er im Lotto), dass beides zusammenkommt und damit eines den Bach runtergeht.

    Ich könnte nun auch noch versuchen, eine mathematische Formel für die Fehlerwahrscheinlichkeit aufzustellen :whistling: , aber grundsätzlich gehören dazu die Komponenten "Geschwindigeit der CPU", "Anzahl Cores" "Threads pro Core", "Anzahl Objekte", "Vollständigkeit der Daten"

    Wobei letzter Punkt bei mir wohl sehr stark ins Gewicht fallen könnte, denn ohne Trailer und noch andere Felder, die mich hier nicht interessieren, schrammt Ember jedesmal auf eine Exception. Man könnte diese Teile auch wie früher "sauber" programmieren und die Bedinungen ganz normal abfangen und ein Return machen. "Exception" soll, wie der Name eigentlich ja schon sagt, die AUSNAHME sein, nicht die Regel.

    Wohlgemerkt! Exceptions für sich sind Ok, Threads für sich auch, aber beides zusammen ist wirklich mutig...

  • Aber mal zurück zum dringlicheren Problem (auf dass endlich mal wieder ein neues Release das Lichte der Öffentlichkeit erblicken möge)...

    Derzeit gibt es noch Abstimmungsbedarf bei folgender Sache:

    Es geht also um die Metadatenanzeige rechts oben in dem rot umrandeten (keine Panik, der Finger und der Rand sind von mir, nicht von Ember) Bereich.

    Dan hat versucht, die einzelnen Felder "aufzuhübschen" und selbsterklärender zu machen.

    Mir persönlich sind zwar alle Icons viel zu groß, aber das ist ja reine Geschmackssache, das lassen wir mal aussen vor.

    Viel störender empfinde ich die Felder "VSrc?" und "Res?". VSrc soll die Videoquelle angeben, also "bluray", "HD TV", "DVD" oder so. Das klappt natürlich nur, wenn irgendwo im Dateinamen ein Hinweis darauf zu finden ist. Bei mir schon mal prinzipiell nicht, da ich sowas gar nicht erfasse, und es auch so ziemlich egal ist, weil ich alle Videos in ein einheitliches Format umwandle. Also für mich ist das Feld völlig sinnlos und frißt nur Platz auf dem Bildschirm (ein anderer mag es unbedingt haben wollen, ist ok, aber zumindest sollte es ABSCHALTBAR sein, meine ich)

    Das Hauptproblem liegt bei "Res?", hier soll die Auflösung des Videos stehen, das tut sie aber nur in den seltensten Fällen, da die Auswertung in Ember recht... hmmm... wie sag ichs freundlich?... PINGELIG ( :) ) ist.
    Ember kennt zwar z.B. 720p, aber auch nur, wenn wirklich 1280x720 Pixel im Video drin sind! Wenn man, wie ich überall, Plattenplatz sparen will, und die schwarzen Balken beim Encodieren weglässt, so erkennt Ember die Auflösung nicht mehr!
    Also 1280x720->720p/i, aber 1280x544->SCHMOLL!
    Die Auswertung ist so PINGELIG, etwa 87% meiner Filme und Serien (House of Card z.B. hat auch eine "merkwürdige" Auflösung) kann Ember nicht korrekt analysieren!

    Und bei Euch sollte das nicht anders aussehen.

    Mein Vorschlag geht nun da hin, diese PINGELIGE Routine komplett wegzuschmeissen und durch etwas ganz Einfaches, was dafür aber IMMER ein sinnvolles Ergebnis liefert, zu ersetzen.
    Also interessiert mich nur noch die horizontale Auflösung und auch die nicht pixelgenau, sondern in Bereichen wie z.B.
    * Film hat 960x704 (alter 4:3 Dick & Doof Film in HD restauriert)
    * Horizontal 720 <= X <= 1280 -> 1280 -> "720p"
    Also immer aufrunden auf die nächst verfügbare TV Auflösung (Ember kennt auch Computerformate wie 320x240, aber die interessieren doch niemanden, denn der kleinste Fernseher zum Angucken hat 720x576 in PAL (oder 640x480 bei NTSC)

    Im Prinzip kommen bei mir dann nur (SD)PAL, (SD) NTSC, 720(p oder i) aka "HD", 1080(p oder i) aka "full HD", UHD raus, wobei ich für die Zukunft am Ende noch "TOO BIG" schreiben würde, damit man zukünftige Auflösungen, deren Namen man heute noch gar nicht kennt, darstellen kann und so die Leute wissen, hier ist mal wieder ein Update nötig.

    Diese kurze Liste könnte Dan sogar in irgendeine neue Tabelle der Datenbank packen, so dass sie extern wartbar wäre. Da sich am prinzipiellen Aufbau nix ändert, braucht man dann nur die Tabelle anpassen und das Programm kann so bleiben.

    Also, zusammengefasst:

    Wollt ihr lieber eine Anzeige, die alle Spezialformate der Welt kennt, dafür bei simplen Variationen davon kläglich scheitert und gar nix liefert, oder reicht ein eine einfache Anzeige, deren Näherung dafür immer vorhanden ist? (wers dann wirklich genau wissen will, kann ja in die Details der Metadaten gucken)

  • Also, zusammengefasst:

    Wollt ihr lieber eine Anzeige, die alle Spezialformate der Welt kennt, dafür bei simplen Variationen davon kläglich scheitert und gar nix liefert, oder reicht ein eine einfache Anzeige, deren Näherung dafür immer vorhanden ist? (wers dann wirklich genau wissen will, kann ja in die Details der Metadaten gucken)


    Aber bin heute auf ner Messe in Zürich, kann mich also erst am Abend dazu äussern. Bin aber gespannt, was ihr dazu meint.


    Gesendet von meinem Nexus 5 mit Tapatalk

Jetzt mitmachen!

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