Taggen aus einer TXT-Liste

:flushed: Habe da ein Problem und keine Lösung. Wer hilft mir weiter?

Folgendes möchte ich gerne machen:
habe eine directory mit ca. 2000 MP3-Songs
die folgend aufgebaut ist,

AAA01.mp3
AAA02.mp3
AAA03.mp3
...
BEA01.mp3
BEA02.mp3
...
usw.

Immer 5 Zeichen, wobei die letzten 2 die Track-Nummer ist.
Die Track-Nummer habe ich schon getaggt.

Zusätzlich habe ich ein Textfile, mit Information der Alben,

AAA - Abba Collection
BEA - Beatles White Album

jetzt würde ich gerne die Arbeit dem Computer überlassen, die
Alben-Namen in die richtigen MP3-Files zu taggen. Versuche schon
eine zeitlang dies über einen Loop-Befehl zu realisieren. Leider
ohne Erfolg. Beispiele im Forum, gibt es nur in Zusammenhang mit Export
von Daten. Vielleicht geht so eine Funktion über das mp3tag-Programm
gar nicht.
Wer kann mir helfen ? Würde mich sehr freuen, über jeden ernstgemeinten
Vorschlag
:rolleyes:
Herbert

Hier ein ernster Vorschlag:

Selektiere die zu bearbeitenden Dateien.

Im erweiterten Tageditor manuell ein neues Tagfeld anlegen 'ALBUM_LOOKUP'.
Öffne die Katalogdatei, die eine reine Textdatei ist (Zeilenende CRLF) ...

Format:
AAA - Abba Collection
BEA - Beatles White Album

... und kopiere den Inhalt in die Zwischenablage,
... und füge den Inhalt der Zwischenablage in das Tagfeld 'ALBUM_LOOKUP' ein,
... und alles in die selektierten Dateien speichern.

Aktionengruppe anlegen 'Album-Lookup'
Aktionen anlegen.
Aktion #1:
Aktionstyp: Tag-Felder formatieren
Feld: ALBUM_SHORT
Formatstring: $left(%_filename%,3)

Aktion #2:
Aktionstyp: Tag-Felder formatieren
Feld: ALBUM_LONG
Formatstring: $ifgreater($strstr(%ALBUM_LOOKUP%,%ALBUM_SHORT%' - '),0,$right(%ALBUM_LOOKUP%,$add($sub($len(%ALBUM_LOOKUP%),$strstr(%ALBUM_LOOKUP%,%ALBUM_SHORT%' - ')),1)),)

Aktion #3:
Aktionstyp: Tag-Felder formatieren
Feld: ALBUM_LONG
Formatstring: $left(%ALBUM_LONG%,$sub($strchr(%ALBUM_LONG%,$char(13)),1))

Aktion #4:
Aktionstyp: Tag-Felder formatieren
Feld: ALBUM_LONG
Formatstring: $right(%ALBUM_LONG%,$sub($len(%ALBUM_LONG%),6))

Aktion #5:
Aktionstyp: Tag-Felder formatieren
Feld: ALBUM
Formatstring: %ALBUM_LONG%

Wenn nach erfolgreichem Test alles in Ordnung ist, dann noch die Aktion #6 hinzufügen:
Aktion #6:
Aktionstyp: Tag-Felder entfernen
Folgende Tag-Felder entfernen (getrennt durch Semikolon ; ): ALBUM_LOOKUP;ALBUM_SHORT;ALBUM_LONG

  1. Eine Testdatei selektieren und die Aktion 'Album-Lookup' ausführen.

  2. Ergebnis kontrollieren.
    Wenn das Ergebnis in Ordnung ist, dann den Gesamtbestand bearbeiten.

Achtung: Ich habe mit einer Lookup-Tabelle getestet, die nur zwei Einträge hat, und ich weiß nicht, ob der Inhalt von Tags in der Größe begrenzt ist, ob also deine Katalogdatei komplett in einem Tagfeld Platz hat. Es wäre also ratsam, zuerst einmal in kleinen Portionen, vielleicht alphabetisch von A bis Z gruppiert, den Dateibestand zu bearbeiten.

Viel Erfolg!

DD.20070211.2210

:frowning:
Hallo Detlef,
Vielen Dank für deine Mühe, leider bekomme ich im Album-Feld folgende
Fehlermeldung: [ SYNTAX ERROR IN FORMATTING STRING ]

Habe erst dein Vorschlag abgetippt und nochmals mit copyandpaste es nochmals
versucht. Leider immer die selbe Meldung.

Gruß Herbert

Da wird wohl irgendwo ein Abschreibefehler drin sein; es kommt wirklich darauf an, dass die Ausdrücke fehlerfrei sind, sonst gibt es eben die besagte Fehlermeldung.

Vielleicht kommen wir so weiter:
Du kopierst die angehängte Datei 'Herbert.mta' in den Ordner
'%APPDATA%\Mp3tag\data\actions'
wobei %APPDATA% auf deinem Windowssystem aufgelöst etwa so aussehen könnte:
'C:\Dokumente und Einstellungen\Herbert\Anwendungsdaten'.
Damit hättest du dir schon das Abtippen oder Kopieren gespart, und du solltest Erfolg haben, denn mit 'Herbert.mta' hat es bei mir funktioniert.
'Herbert.mta' findest du, nachdem Mp3Tag gestartet wurde, dann in der Liste der Aktionsgruppen.

Herbert.mta (495 Bytes)

DD.20070215.0012

Herbert.mta (495 Bytes)

:slight_smile: :w00t: :sunglasses: Vielen Dank, funktioniert super,
bin voll begeistert, Versuche sind erfolgreich und werde jetzt mich
an die Gesamtdaten wagen. Vielleicht in 100 Schritte.

Ciao Herbert