Help - Search - Members - Calendar
Full Version: Ordnerstruktur
Mp3tag Forums > Mp3tag - Deutsch > Allgemein
DiPT
Hallo erstmal smile.gif

hab gestern zum ersten mal MP3Tag installiert, um endlich mal Ordnung in meine Musiksammlung zu bekommen.

Und bin gleich auf ein Problem gestoßen, und zwar beim scripten. Hab mir alles auf der Homepage durchgelesen, aber werd nicht ganz schlau daraus...

und zwar gehts darum:

ist eh quasi eine Standardaufgabe glaub ich, aber hab doch ein bisschen Probleme damit. Ich möchte alle ORDNERNAMEN meiner Library gleich benannt haben, also immer nach dem selben Schema:

Artist \ [Jahr] Albumname (Disknr.) \ Track01, 02....


jedoch möchte ich dass die disknr. nur dasteht wenn das album wirklich mehr als 2 cds hat.

jetzt hätt ich eine _DIRECTORY-Aktion erstellt, mit folgendem Inhalt:

%albumartist%\ '['%year%']' %album% $if(eql(%discnumber%,1), , $left('(CD' %discnumber%')'))


bei Alben mit nur 1er CD (also wo in den Tags bei CD-Nummer "1/1" steht) scheints zu funktionieren, aber sobald bei einem Album die eine Hälfte "1/2" und die andere "2/2" in den Tags stehen hat erzeugt er mir nur einen Ordner mit "CD 1" im Namen, anstatt 2, einen mit "CD1" und einen mit "CD 2"...


hoffe ich konnte mich einigermaßen verständlich machen, und dass ihr mir helfen könnt w00t.gif
ohrenkino
ZITAT(DiPT @ May 6 2011, 21:17) *
%albumartist%\ '['%year%']' %album% $if(eql(%discnumber%,1), , $left('(CD' %discnumber%')'))

ist das nicht zu kompliziert?
Die eckige Klammer (ohne Hochkommas) kann doch optionale Werte umschließen:

%albumartist%\ '['%year%']' %album%[ CD $left(%discnumber%,1)]
DiPT
hm, hab jetzt deins ausprobiert, aber das funktioniert nicht? huh.gif

jetzt hängts mir einfach 2mal "CD1" hintendran an den ordner, einmal in klammer und einmal so...

ich werd noch wahnsinnig! laugh.gif

aber danke fürs prompte antworten!
ohrenkino
ZITAT(DiPT @ May 6 2011, 21:39) *
hm, hab jetzt deins ausprobiert, aber das funktioniert nicht? huh.gif

Mist.
Ich habe eine erfolgreiche Maske
für _directory
%album% - [$num(%discnumber%,2) - ]%year%

Dabei fällt mir auf:
Eine Aktion, die auf %_directory% losgeht, benennt nur bestehende Strukturen um. D.h. die Menge der Verzeichnisse muss vorher und hinterher gleich sein.
Wenn erst noch Verzeichnisse angelegt werden müssen, weil jetzt die Daten z.B. nach CD1 und CD2 aufgeteilt werden können, zuvor aber alle in einem gemeinsamen Verzeichnis waren, dann musst du den Konverter Tag - Dateiname verwenden.
Sonst wird ein Verzeichnis umbenannt je nach den angegebenen Kriterien der Dateien darin und dann gewinnt die letzte behandelte (meine ich - oder ist es die erste?).
DiPT
Ach sooo....aber Tag->Dateiname benennt mir dann doch nur die Datein um, und nicht die Ordner, oder?

Kann ich den Text aus meiner Aktion auch bei Tag->Dateiname verwenden?

Schon eher kompliziert das ganze Scriptingsystem! laugh.gif
ohrenkino
ZITAT(DiPT @ May 6 2011, 21:50) *
Kann ich den Text aus meiner Aktion auch bei Tag->Dateiname verwenden?

Schon eher kompliziert das ganze Scriptingsystem! laugh.gif

Vielleicht geht es in mehreren Schritten:
zuerst alle Ordner so UMBENENNEN, dass sie wenigstens 1 CD im Namen haben. Das verhindert, dass es leere Ordner gibt.
Dann mit dem Filter
NOT %discnumber% IS "" AND NOT %discnumber% IS 1
alle Dateien rausfiltern, die eine andere Disknummer haben als nix oder 1 und die dann mit dem Konverter
Tag - Dateiname in eine neue Struktur kopieren:

%albumartist%\ '['%year%']' %album%[ CD $num(%discnumber%,1)]\.....

(die Punkte müsstest du jetzt durch die Maske ersetzen, wie die Dateinamen aussehen sollen)
DiPT
hätte gedacht ich hab eine lösung, aber jetzt gehts wieder doch nicht....verdammt! rolleyes.gif
DiPT
mittlerweile bin ich so weit:

VERZEICHNIS\%albumartist%\'['%year%']' '-' %album%\$if($grtr($left(%discnumber%,3),1),'(CD' $left(%discnumber%,1)')',)\%artist% - '['%year%']' %album% - $left(%discnumber%,1)-$num(%track%,2) - %title%

ok, es is jetzt so dass das programm die lieder brav auf 2 ordner aufteilt wie es soll, aber im ordner mit den liedern von CD2 noch einen unterordner namens "CD2" anlegt, und da dann die lieder reinhaut.

ich wette das hat mit der if/grtr funktion zu tun, da is der hund drin...

was mach ich denn falsch? kann doch ned sooo schwierig sein ohmy.gif

QUOTE (ohrenkino @ May 6 2011, 22:01) *
Vielleicht geht es in mehreren Schritten:
zuerst alle Ordner so UMBENENNEN, dass sie wenigstens 1 CD im Namen haben. Das verhindert, dass es leere Ordner gibt.
Dann mit dem Filter
NOT %discnumber% IS "" AND NOT %discnumber% IS 1
alle Dateien rausfiltern, die eine andere Disknummer haben als nix oder 1 und die dann mit dem Konverter
Tag - Dateiname in eine neue Struktur kopieren:

%albumartist%\ '['%year%']' %album%[ CD $num(%discnumber%,1)]\.....

(die Punkte müsstest du jetzt durch die Maske ersetzen, wie die Dateinamen aussehen sollen)



jetzt erst gesehen. werd ich gleich ausprobieren. aber dass da keinen leichteren weg gibt... smile.gif
mbaa3
Zur Verzeichnisstruktur gibt es zahlreiche Anregungen unter "MP3 Kollektion Struktur". In ca. der Mitte des Threats habe ich am "Dec 23 2007, 23:22" einen längeren Beitrag geschrieben. Vieles davon habe ich inzwischen weiter optimiert. Grundsätzlich hat sich das Schema bewährt. Grundlage der Struktur: Ich ordne konsequent albenweise und ohne Redundanzen! Dabei unterscheide ich zwischen

-- Interpreten-Alben
...\%FELD%\%artist%\%year% - %album%\$num(%track%,2). %title%
und
-- Sampler-Alben
...\%FELD%\%year%\%album%\$num(%track%,2). %title% - %artist%

Dieses ist für Anwender, die nur einzelne Tracks sammeln, nicht geignet.
foo_peter
dazu gibt es bereits eine Möglichkeit!!!

wichtig erst einlesen und an ein paar Beispiel Dateien ausprobieren

wirklich wichtig ist das die Taggs auch stimmend sind aber dann klappt das auf Anhieb dry.gif


klick

mbaa3
ZITAT(mbaa3 @ May 7 2011, 12:56) *
"MP3 Kollektion Struktur"

... dazu gibt es einen neuen Link
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2014 Invision Power Services, Inc.