Anfangsbuchstabe %albumartistsort% zur Sortierung

Hallo,

im Moment verschiebe ich meine Dateien nach dem Taggen auf meine NAS in folgender Struktur:

\Alben<b>$left(%albumartistsort%,1)\%albumartistsort%\%year% - %albumartist% - %album%$num(%track%,2) - %artist% - %title%

Ein Problem hab ich wenn, das Feld "albumartistsort" mit Ä, Ö, Ü oder einer Zahl beginnt. Hier wird durch MP3Tag ein jeweiliger Überordner angelegt (logisch).

Gibt es eine Möglichkeit, alle Interpreten, die mit einer Zahl beginnen (Bsp. 2 Unlimited, 30 Seconds to Mars) automatisch in einen Ordner mit der Bezeichnung "#" zu verschieben. Und können die Interpreten, die mit Umlaut beginnen (Ärzte) ebenfalls automatisch in den jeweilig passenden Ordner verschoben werden (Ä zu A, Ö zu O und Ü zu U)?

Du kannst ein Hilfs-Tagfeld anlegen und dessen Wert berechnen.
Wenn das erste Zeichen in %albumartistsort% ...
... eine Zahl ist (Funktion $IsDigit), dann fülle das Hilfs-Tagfeld mit '#'.
... ein 'Ä' ist, dann fülle das Hilfs-Tagfeld mit 'A'.
... ein 'Ö' ist, dann fülle das Hilfs-Tagfeld mit 'O'.
... ein 'Ü' ist, dann fülle das Hilfs-Tagfeld mit 'U'
... sonst fülle das Hilfs-Tagfeld mit dem ersten Zeichen in %albumartistsort%.

Du kannst das auch direkt machen nur mit dem Tagfeld %albumartistsort%.

Formatstring etwa so ...

$if($isdigit($left(%ARTISTSORT%,1)),'#',$replace($left(%ARTISTSORT%,1),'Ä','A','Ö','O','Ü','U'))

... oder so ...

$ifgreater($strchr('0123456789ÄÖÜ',$left(%ARTISTSORT%,1)),0,$replace($left(%ARTISTSORT%,1),'0','#','1','#','2','#','3','#','4','#','5','#','6','#','7','#','8','#','9','#','Ä','A','Ö','O','Ü','U'),$left(%ARTISTSORT%,1))

... oder so ...

$ifgreater($strchr('0123456789ÄÖÜ',$left(%ARTISTSORT%,1)),0,$mid('##########AOU',$strchr('0123456789ÄÖÜ',$left(%ARTISTSORT%,1)),1),$left(%ARTISTSORT%,1))

DD.20120623.1111.CEST

Funktioniert perfekt. Vielen Dank!

hallo ihr beiden,

ein sehr interessanter thread.
da ich auch meine ganze musik auf meinem NAS abgelegt habe und gerade dabei bin, die struktur von rock, pop,.... umzustellen auf A,B,C,.... so wie es viele musikverwaltungsproggis machen (ich nenne mal mediamonkey), ist dieser ansatz super.

meine fragen:

  1. nach dem taggen eines albums; wie binde ich den o.g. string wo genau ein, dass mir mp3tag das getaggede album auf den NAS richtig einsortiert.
  2. wo erstelle ich das tagfeld das von detlev beschrieben ist im 2. thread hier.

vielen dank für eure hilfe. bin gespannt was ihr mitzuteilen habt.

greetz

apollo10

Das TAG-Feld brauchst du eigentlich gar nicht.

Wenn die Dateien ordentlich getaggt sind, verschiebe ich (korekt heißt es Konvertieren TAG-Dateiname) die MP3s mit folgenden String auf mein NAS:

y:\Alben$if($isdigit($left(%ARTISTSORT%,1)),'#',$replace($left(%ARTISTSORT%,1),'Ä','A','Ö','O','Ü','U'))\%albumartistsort%\%year% - %albumartist% - %album%$num(%track%,2) - %artist% - %title%

Y:\ ist mein NAS-Laufwerk, der Ordner Alben ist der erste Unterordner auf dem Laufwerk. Die folgende Verzeichnisstruktur legt MP3TAG dann nach dem Schema

Anfangsbuchstabe Albuminterpret (sortiert)\Albuminterpret (sortiert)\Jahr - Albuminterpret - Albumtitel\Tracknummer (zweistellig) - Interpret - Titel.mp3 an.

Beispiel:

Y:\Alben\B\Bendzko, Tim\2011 - Tim Bendzko - Wenn Worte meine Sprache wären\01 - Tim Bendzko - Auf den ersten Blick.mp3

Die Besonderheiten: Sampler werden immer unter V (Various Artists) abgelegt. Albuminterpreten, deren Anfangsbuchstaben mit einer Ziffer beginnen, dank DetlevDs Hilfe unter "#". Albuminterpreten mit Umlauten wandern ebenfalls dank DetlevDs Hilfe jetzt in die Ordner A, O und U. (sonst hast Du neben den 26 Unterverzeichnissen von A-Z noch zusätzlich weitere mit 0-9 und Ä, Ö und Ü).

hallo,

das klappt schon mal ganz gut.
gibt es eine möglichkeit dass mp3tag vor dem konvertieren auf den NAS noch abfragt, mit welchem anfangsbuchstaben der artist beginnt und dann in das entsprechende verzeichnis (verzeichnisse sind auf dem NAS vorhanden A B C ... Z) legt.

beispiel: Adele - Greatest Hits --> ablegen in verzeichnis A - Adele - Greatest Hits

y:\Alben<b>$if($isdigit($left(%ARTISTSORT%,1)),'#',$replace($left(%ARTISTSORT%,1),'Ä','A','Ö','O','Ü','U'))\%albumartistsort%\%year% - %albumartist% - %album%$num(%track%,2) - %artist% - %title%

Der fette Teil des Strings macht genau das. Entweder existiert schon ein Ordner A oder er wird angelegt.

Wichtig ist, dass Du das TAG-Feld Albuminterpret (sortiert) mit füllst beim Taggen. Nimmst Du nur Albuminterpret (also quasi unsortiert), wandert Tim Bendzko ins Verzeichnis T statt B.

danke für die antwort.

funktioniert wunderbar. nur leider bemerke ich gerade, dass ich in jedem album-ordner auch noch eine tracklist, ein cover und eine html habe, die dann im neu erstellten verzeichnis fehlen würden. somit ist dieses geniale script für mich leider nicht umsetzbar. :frowning:

lg

apollo10

Das stimmt, verschoben werden nur die MP3s. Hier im Forum hab ich irgendwo mal gelesen, dass Du anderen Dateien per Batch-Befehl ne MP3-Endung verpasst, die mit verschiebst und den Vorgang (wieder per Batch) im Zielverzeichnis wieder rückgängig machst. Müßtest mal danach suchen.

Mir persönlich wars zu umständlich. Mit Playlists arbeite ich nicht und das Cover hab ich direkt im TAG gespeichert.