MKV Buddy - Kleiner Helfer fürs tägliche Video basteln... (3 Viewers)

Status
Not open for further replies.

kruemelchen1970

Portal Pro
February 21, 2012
182
33
Kiel
Home Country
Germany Germany
Zeile 6069 im Source-Code

$nfoFolder = StringTrimRight($File1, $iLength)
$nfoList = _RecursiveFileListToArray($nfoFolder, 'nfo', 1)

ist das hier der Teil der dafür verantwortlich ist? wenn ja, wäre es denn dann micht möglich
$nfoList = _RecursiveFileListToArray($nfoFolder, 'nfo', 1)
durch
$nfoList = _RecursiveFileListToArray($nfoFolder, '.nfo', 1)
abzuändern, wenn der Punkt entsprechend entwertet oder maskiert ist?
 

Lehmden

Retired Team Member
  • Premium Supporter
  • December 17, 2010
    12,565
    3,946
    Lehmden
    Home Country
    Germany Germany
    $nfoList = _RecursiveFileListToArray($nfoFolder, '.nfo', 1)
    abzuändern, wenn der Punkt entsprechend entwertet oder maskiert ist?
    Genau das war mein erster Gedanke. Doch ich zitiere mich mal selbst:
    In der (fertigen, nicht von mir geschriebenen) Funktion wird nicht zwischen .nfo und nfo unterschieden.
    Ob mit oder ohne Punkt, ist das Ergebnis leider absolut gleich. Mit *.nfo (steht normalerweise für "irgendwas.nfo") geht nichts. mit .nfo oder nfo wird jede Datei gefunden, die die Zeichenfolge nfo im Dateinamen hat. Da der Name der .nfo leider nicht genormt ist, kann ich auch nicht einfach nach der Datei direkt suchen. Es wäre alles viiiiel leichter, wenn ich nur die nfo von MKV Buddy verarbeiten müsste. Doch tMM; Ember, MovingPictures, XBMC, MyVideos,... jeder muddelt da was anderes zusammen.

    Ich sag ja, normalerweise ist das nicht tragisch, da immer zuerst im Root Ordner gesucht wird. Und dann ist die .nfo die erste Datei, die gefunden wird. Nur durch den . vor dem Ordnernamen bei .actors kommt das durcheinander. Mal sehen, vielleicht fällt mir dazu noch was Gescheites ein...
     

    Helios61

    Retired Team Member
  • Premium Supporter
  • January 30, 2008
    4,587
    873
    62
    NRW
    Home Country
    Germany Germany
    Sobald du aus ".actors" einfach, wie sich das für Windows gehört, "actors" gemacht hast, läuft das alles durch.

    Das verzeichnis wird von tMM erstellt. Evtl. kann ja @mlaggner das Verzeichnis wählbar machen in einer der nächsten Versionen von tMM.
     

    Lehmden

    Retired Team Member
  • Premium Supporter
  • December 17, 2010
    12,565
    3,946
    Lehmden
    Home Country
    Germany Germany
    Das verzeichnis wird von tMM erstellt.
    Ja, ich weiß. Ich hab da auch nen Haufen von. Dieser Fehler ist mir bisher nur noch nicht unter gekommen. Mir wird schon irgendwas einfallen...
     

    flon

    Portal Pro
    October 6, 2011
    274
    8
    Home Country
    Germany Germany
    Hi,

    in vielen Scriptsprachen wird der Punkt als Verbinder benutzt. So heist suche .nfo soviel wie suche irgendwas gefolgt von nfo. Und das findet das selbe wie nur suche nfo.
    Ich habe mir den Code mal angeschaut. Gehe ich recht in der Annahme, dass in $File1 die Pfade der einzelnen Dateien im Verzeichnis stehen. Also z.B. D:\movie\Serienname\serie.nfo?
    Den kürzt Du jetzt von Recht um die Länge des Dateinamens und suchst darin nach nfo.
    $nfoFolder = StringTrimRight($File1, $iLength)
    $nfoList = _RecursiveFileListToArray($nfoFolder, 'nfo', 1)
    Dann sollte es doch möglich sein die Dateiendung zu extrahieren.
    $nfoFoldercheck = StringTrimRight($File1, 3) oder so.
    Dann per if checken ob $nfoFoldercheck == nfo

    Ohne den Inhalt der Variblen zu kennen ist das abe pure Raterei. Aber irgendwo solltes Du die Dateifpade ja in einer Varible(oder Array) haben und da sollte die Endung doch ganz rechts stehen. Da kann man evtl. ansetzen.

    bye flon
     

    Lehmden

    Retired Team Member
  • Premium Supporter
  • December 17, 2010
    12,565
    3,946
    Lehmden
    Home Country
    Germany Germany
    $File1 die Pfade der einzelnen Dateien im Verzeichnis stehen
    Nein, nicht wirklich. $file1 ist der Pfad zum (ersten) Video in dem jeweiligen (Unter-)Verzeichnis. Und in $iLenght ist der Abstand des letzten \ vom String- Ende hinterlegt. Das Ganze dient dazu, den Ordner zu erkennen, in dem die Video-Datei letztendlich steckt. Ich muss dem Grabber- Programm einen Ordner "zum Fraß vorwerfen", was damit erreicht wird... Aus deinem Beispiel wäre das eben "D:\movie\Serienname\serie.mkv" aus dem "D:\movie\Serienname" gemacht wird. Wenn ich mich darauf verlassen könnte, dass die nfo dann auch serie.nfo heißt und im gleichen Pfad liegt, dann wäre es einfach. Das kann ich aber leider nicht.
    Aber ich habe mir schon einen anderen Ansatz überlegt. In dem Moment, wenn ich die potentiellen nfo auslese werde ich eine Schleife einfügen, die testet, ob ein bestimmter Tag in der Datei zu finden ist. Falls ja, alles prima, loslegen. Falls nein, die nächste Datei probieren. Sehr viele Dateien mit nfo im Namen wird es in so einem Filme- Ordner vermutlich nicht geben. Sollte die Performance nicht sonderlich beeinflussen. Und ein jpg mit "<?xml" in der Datei selbst dürfte mehr als unwahrscheinlich sein. Das eigentliche Grabben dauert sowieso deutlich länger, da fällt das bisschen Schleife nicht weiter ins Gewicht. Ist bloß wieder extra Arbeit, wo ich doch noch so elend an der englischen Anleitung schufte. Aber die muss erst fertig. Und dann ist da ja noch die Website, da wartet auch noch reichlich Arbeit auf mich.
     

    flon

    Portal Pro
    October 6, 2011
    274
    8
    Home Country
    Germany Germany
    Hi,

    einfach einen Tag in der Datei prüfen geht natürlich auch.
    Leider kann ich kein englisch, sonst hätte man ja bei der Anleitung eas helfen können.

    bye flon
     

    Lehmden

    Retired Team Member
  • Premium Supporter
  • December 17, 2010
    12,565
    3,946
    Lehmden
    Home Country
    Germany Germany
    Hi.
    Bei mir ist der .nfo Fehler behoben, zumindest erst mal bei Filmen. Ich überprüfe, ob die "nfo" Datei diesen String beinhaltet:
    "<?xml version". Damit sollten alle Binär- Dateien doch mit ziemlich hoher Sicherheit ausgeschlossen sein.

    Baue ich sicherheitshalber auch noch bei Serien ein. Aber die nächste Version gibt es erst, wenn ich die verd...te englische Anleitung fertig habe.
     

    mlaggner

    Portal Pro
    September 23, 2013
    166
    273
    Home Country
    Austria Austria
    naja, das Problem ist ja, dass wir tmm ziemlich an/für XBMC gebaut haben, und dort ist das dir für Darsteller = .actors..
    denke mal nicht, dass wir das auf die Schnelle konfigurierbar machen können (wollen). Ohne jetzt viel nachzulesen - wo liegts Problem genau? :)
     

    Lehmden

    Retired Team Member
  • Premium Supporter
  • December 17, 2010
    12,565
    3,946
    Lehmden
    Home Country
    Germany Germany
    Hi.
    Danke, aber das hat sich schon erledigt.
    Problem war, der Punkt bringt die Reihenfolge durcheinander, Ist aber in der nächsten Version behoben.
     
    Status
    Not open for further replies.

    Users who are viewing this thread

    Top Bottom