Tag-Felder importieren if-Bedingung im Formatstring


#1

Hallo,

habe aktuell zwei Aktionen um bei „Alben mit einer CD“ und „Alben mit mehreren CDs“ die alten Tags zu löschen, neu zu taggen anhand des Dateinamens und anschließend das Cover aus dem Ordner „Cover“ zu importieren.

Ordnerstruktur „Alben mit einer CD“
Alben\%artist%\%album%\Cover
Die .mp3s liegen im Ordner %album%

Aktion „Alben mit einer CD“
Name der Aktionengruppe: Alben mit einer CD

Aktion #1:
Aktionstyp: Tag-Felder entfernen außer
Folgende Tag-Felder nicht entfernen (getrennt durch Semikolon ; ):

Aktion #2:
Aktionstyp: Tag-Felder importieren
Quellformat: %_filename%
Formatstring: %artist% - %album% - %genre% - %track% - %title%

Aktion #3:
Aktionstyp: Album-Cover aus Datei importieren
Formatstring für Cover-Dateiname: $if($eql(%_directory%,%album%),'.','..')\Cover\%artist% - %album% - Cover front.jpg

[x] Existierende Cover löschen

Ordnerstruktur „Alben mit mehreren CDs“
Alben\%artist%\%album%\CD 01\Cover
Alben\%artist%\%album%\CD 02\Cover
...
Die .mp3s liegen im Ordner CD 01, CD 02, ...

Aktion „Alben mit mehreren CDs“
Name der Aktionengruppe: Alben mit mehreren CDs

Aktion #1:
Aktionstyp: Tag-Felder entfernen außer
Folgende Tag-Felder nicht entfernen (getrennt durch Semikolon ; ):

Aktion #2:
Aktionstyp: Tag-Felder importieren
Quellformat: %_filename%
Formatstring: %artist% - %album% - %genre% - %discnumber% - %track% - %title%

Aktion #3:
Aktionstyp: Album-Cover aus Datei importieren
Formatstring für Cover-Dateiname: $if($eql(%_directory%,%album%),'.','..')\Cover\%artist% - %album% - Cover front.jpg

[x] Existierende Cover löschen

Diese funktionieren auch einwandfrei.

Allerdings ist das sehr umständlich, da ich die Alben immer erst suchen muss welche eine oder welche mehrer CDs haben.

Hab mir dann überlegt dies in einer Aktion abzuhandeln:

Aktion "Alben mit einer oder mehreren CDs"
Name der Aktionengruppe: Alben

Aktion #1:
Aktionstyp: Tag-Felder entfernen außer
Folgende Tag-Felder nicht entfernen (getrennt durch Semikolon ; ):

Aktion #2:
Aktionstyp: Tag-Felder importieren
Quellformat: %_filename%
Formatstring: $if($eql($left($upper(%_directory%),2),CD),%artist% - %album% - %genre% - %discnumber% - %track% - %title%,%artist% - %album% - %genre% - %track% - %title%)

Aktion #3:
Aktionstyp: Album-Cover aus Datei importieren
Formatstring für Cover-Dateiname: $if($eql(%_directory%,%album%),'.','..')\Cover\%artist% - %album% - Cover front.jpg

[x] Existierende Cover löschen

Allerdings funktioniert es nicht und ich weiss nicht warum.

Könnt ihr mir helfen?

Vielen Dank
TagLikeMe


#2

Bei Tag-Felder importieren unterstützt nur "Quellformat" die Skriptbefehle.


#3

Schade...

Hat jemand ne Idee wie ich mein Problem auf eine andere Weise lösen könnte?


#4

Du könntest die beiden zweiten Aktionen einfach in eine Aktionsgruppe nehmen:

Aktionstyp: Tag-Felder importieren
Quellformat: %_filename%
Formatstring: %artist% - %album% - %genre% - %track% - %title%

Aktionstyp: Tag-Felder importieren
Quellformat: %_filename%
Formatstring: %artist% - %album% - %genre% - %discnumber% - %track% - %title%

Wenn du sie in dieser Reihenfolge ausführst, werden bei einem normalen Album mit der ersten Aktion die Tags richtig gefüllt und die zweite sollte keinen Effekt haben.

Bei einem mit mehreren CDs füllt die erste Aktion die Tags zwar falsch, aber die zweite korrigiert sie.


#5

Vielen Dank für die schnelle ANtwort.

Scheint zu funktionieren :rolleyes:

Aber ich verstehe nicht ganz warum:

Alben mit mehreren CDs:

  1. Aktion füllt Tags falsch
    -> verstehe ich
  2. Aktion korrigiert die Tags
    -> verstehe ich

Alben mit einer CD:

  1. Aktion füllt Tags richtig
    -> verstehe ich
  2. Aktion sollte keinen Effekt haben
    -> verstehe ich nicht???

Kannst du mir kurz erklären warum?!?

Vielen Dank.


#6

Bei Alben mit einer CD hat der Dateinamen 4 Bindestriche.
Wenn darauf ein Formatstring mit 5 Bindestrichen angewandt wird gibt es keine Übereinstimmung und es wird nichts getaggt.
Also wenn das Muster nicht passt, geschieht nichts.

Du kannst das bei "Konverter > Dateiname - Tag" ausprobieren.


#7

Vielen Dank für die schnelle und kompetetnte Antwort.

Somit sind meine Fragen hierzu beantwortet.