Hallo,
ich möchte hier meinen Ansatz vorstellen, um die Lyrics, soweit sie im Tag UNSYNCEDLYRICS enthalten sind, in einzelne Dateien zu exportieren - und wieder "passgenau" importieren zu können.
In diesem und im englisch-sprachigen Forum ist dazu viel geschrieben worden:
Dabei wurde das Problem deutlich, dass die Lyrics mehrerer Dateien offenbar stets in eine gemeinsame Datei exportiert werden. Mehrere Beiträge zeigen Lösungen auf, diese Datei nachträglich aufzugliedern.
Mein Ansatz hat einige Vorteile und manche Nachteile. Ein Vorteil ist, dass er mit den Bordmitteln von MP3TAG die Einzeldateien erzeugt. Der Nachteil ist, dass die Dateien dazu temporär in Einzelverzeichnisse verschoben werden müssen - eine Berechtigung zum Schreiben ist also vonnöten... und die Dateien sollten nicht gleichzeitig im Netzwerk wiedergegeben werden.
Wie funktioniert's? Aufgrund der Beschränkungen des Lyrics-Exports muss (!) der Ablauf des Exportierens in drei Teilschritten umgesetzt werden:
Name der Aktionengruppe: Lyrics austauschen # 1 Start Aufgliederung
Aktion #1:
Aktionstyp: Tag-Felder formatieren
Feld: X-FILE
Formatstring: $if($eql($len(%X-FILE%),0),%_folderpath%,%X-FILE%)
Aktion #2:
Aktionstyp: Tag-Felder formatieren
Feld: _FILENAME
Formatstring: %X-FILE%\media$validate(%artist% - %title%,)\%_filename%
sodann folgt der eigentliche Export:
Name der Aktionengruppe: Lyrics austauschen # 2a Lyrics exportieren (artist - title.txt)
Aktionstyp: Export
Exportdatei auswählen: Lyricsdaten
Dateiname der Exportdatei: %_folderpath%$validate(%artist% - %title%,).txt
[x] Eine Datei pro Verzeichnis
Wichtig: Die verwiesene Exportanweisung "Lyricsdaten" enthält diese Anweisung:
$filename(%_folderpath%$validate(%artist% - %title%,).txt,utf-8)$loop(%_path%)%unsyncedlyrics%
$loopend()
Der dritte Schritt schiebt die Dateien wieder ins Ursprungsverzeichnis und löscht das Hilfstag X-FILE:
Name der Aktionengruppe: Lyrics austauschen # 3 Finish Originalstruktur
Aktion #1:
Aktionstyp: Tag-Felder formatieren
Feld: _FILENAME
Formatstring: %x-file%%_filename%
Aktion #2:
Aktionstyp: Tag-Felder entfernen
Folgende Tag-Felder entfernen (getrennt durch Semikolon ; ): X-FILE
Interessant ist die Beobachtung, dass Schritt 2 einzeln umgesetzt werden muss! Sowohl die Verschmelzung mit Schritt 1 als auch die Verschmelzung mit Schritt 3 haben bei mir das Schreiben der Einzeldatei verhindert. Eine einzelne Gesamtaktion hat ebenfalls nicht geklappt.
Mein EDV-Bauchgefühl sagt mir hierzu, dass offenbar ein Schleifenparameter nicht zurückgesetzt wird... aber das ist nur mein Bauchgefühl. Dreischrittig wie hier vorgestellt klappt es jedoch.
Der IMPORT aus gleicher Stelle klappt auf diese Weise:
Name der Aktionengruppe: Lyrics austauschen # 4a Lyrics importieren (artist - title.txt)
Aktionstyp: Text-Datei importieren
Feld: UNSYNCEDLYRICS
Dateiname: %_folderpath%media$validate(%artist% - %title%,)$validate(%artist% - %title%,).txt
Wurden die Lyrics-Dateien auf der Ebene des Betriebsystems mittels einfacher *.txt-Suche in das Media-Verzeichnis "hochgehoben", können sie auch so importiert werden:
Name der Aktionengruppe: Lyrics austauschen # 4c Lyrics importieren (MEDIA artist - title.txt)
Aktionstyp: Text-Datei importieren
Feld: UNSYNCEDLYRICS
Dateiname: %_folderpath%media$validate(%artist% - %title%,).txt
Ich habe bewusst die Künstler- und Title-Tags für die Lyrics-Datei verwendet, weil so ein "Recycling" zwischen dem Album und diversen Samplern möglich ist. Dabei entfaltet die zeichengenaue Schreibweise der beiden Tags auch eine Schutzfunktion, um Varianten (mit anderen Texten) nicht automatisch einzubinden...
Soweit - so gut. Ich freue mich auf Anregungen und Verbesserungen.
peilung