Cover mit verschieben


#8

Ich kann schon eine beliebige Anzahl von Bilddateien in eine CoverContainer.mp3 einladen sowie ein Tag Feld erzeugen mit einer Liste der Dateinamen in der Reihenfolge der Speicherung.
(Gibt es eine Obergrenze für die Anzahl von Tags resp. Bildern in einer mp3 Datei?)

Aber das Entladen der Bilder macht erhebliche Schwierigkeiten, weil die Zuordnung des jeweiligen Dateinamens zum zugehörigen Bild beim Cover Export nicht möglich ist (die Beschränkung liegt in der Arbeitsweise der Exportfunktion und im Funktionsumfang der Mp3tag Skriptsprache generell).

Weil notfalls auch Bilder vom Quellordner zum Zielordner transportiert werden müssen, wenn der Quellordner gar keine ordentliche mp3 Datei enthält, z. B. könnte der Artistenordner Bilder des Artisten enthalten sowie Unterordner mit den Alben, aber eben keine mp3 Dateien.

DD.20080327.2229.CET


#9

Ein Vorschlag:
An alle Namen der vorhandenen Bilddateien (*.jpg, *.png, *.gif etc.) die Endung .mp3 anhängen.
Mp3tag kann diese Dateien dann sehen und zusammen mit den normalen mp3 Dateien verschieben.
Hinterher muss man dann alle diese besonderen Namen der Bilddateien wieder auf den Originalzustand zurückändern.
Das Umbenennen ließe sich durch Kommandozeilen Stapeldateien erledigen, die über Exportskripte von Mp3tag erzeugt werden.

Beispiel:
Umbenennen von "cover.jpg" nach "$.cover.jpg.mp3".
Schreibschutzattribut beachten (entfernen).
Mit Mp3tag verschieben.
Umbenennen von "$.cover.jpg.mp3" nach "cover.jpg".

DD.20080329.1530.CET


Am Grübeln, wie ich es am Besten sortiert bekomme
Albumcover im Ordner oder im Tag??
Verzeichnissname ändern...
#10

Der Vorschlag gefällt mir wegen seiner Einfachheit. Wird so von mir das nächste mal angewandt.


#11

Noch eine Anregung dazu:
Auch eine Datei "$.cover.jpg.mp3" lässt sich mit Mp3tag taggen (%artist%, %album% usw.) und dann mit einem passenden Formatstring via %_filename% verschieben.
Nach dem Verschieben kann der komplette ID3 Tag ausgeschnitten bzw. gelöscht werden und die jpg Datei kommt unversehrt wieder zum Vorschein.

DD.20080421.1934.CEST


#12

Ich habe das obige Beispiel mal durchprobiert:

  1. Die Datei "cover.jpg" wird von Mp3tag nicht "gesehen", aber kann mit Paint geöffnet werden.
  2. Umbenennen von "cover.jpg" nach "$.cover.jpg.mp3", aber wird von Paint nicht mehr geöffnet.
  3. Die Datei "$.cover.jpg.mp3" wird von Mp3tag nun "gesehen".
  4. Ich habe Tags der Datei "$.cover.jpg.mp3" mit Mp3tag geändert bzw. hinzu gefügt.
    Mit Mp3tag verschieben.
  5. Zurück umbenennen von "$.cover.jpg.mp3" nach "cover.jpg"
  6. Die Datei "cover.jpg" kann von Paint nicht mehr geöffnet werden.
    Das Schreibschutzattribut wurde beachtet.

Wo liegt mein Überlegungsfehler?


#13

Ich weiß nicht was du dir alles überlegt hast ... vielleicht hast du nur einen Arbeitsschritt übersehen.

Die Methode funktioniert so:

  1. Umbenennen einer beliebigen Datei zur Extension mp3
    (z. B. von "Bild.jpg" nach "_Bild.jpg.mp3")

  2. Tagfelder hinzufügen
    (getestet mit "TagRead(Tag Types) = ID3v2.4(ID3v1 ID3v2.4)")

  3. Datei verschieben

  4. ID3 Tags aus der Datei entfernen

  5. Umbenennen zum vorherigen Dateinamen
    (z. B. von "_Bild.jpg.mp3" nach "Bild.jpg")

Das geht nicht nur mit Bilddateien, sondern auch mit Textdateien, die das "ID3 Embedding" unverändert überstehen.

DD.20080507.2053.CEST


Zwei Aktionen miteinander verbinden oder richtig anordnen
Alle Dateien des Verzeichnisses mit verschieben
#14

Bei meiner oben dokumentierten Überlegung besteht der Fehler darin, dass vor Punkt 5 "ID3 Tags aus der Datei entfernen" fehlt. Vielen Dank für Deine Hilfestellung. Nach dieser Ergänzung funktioniert Dein Verfahren einwandfrei.

Beim Konverter habe ich aber leider nur die Funktion "Alle Tags entfernen, ausser". Das letzte Tag muss ich per Hand entfernen.

Wie ich das Ganze batch-mäßig hinbekommen soll, weiss ich noch nicht. Dies Thema muss ich erstmal auf einen späteren Zeitpunkt verschieben.


#15

Mit "ID3 Tag entfernen" ist nicht das Löschen von einzelnen Tagfeldern gemeint, sondern das Löschen des gesamten ID3 Tags und das geht leider noch nicht mit einer Aktion, sondern nur manuell durch "Datei/Tag Entfernen [Strg+R]".

DD.20080508.1304.CEST


#16

Danke für den Hinweis! Inzwischen habe ich noch folgendes ausprobiert: Zweimaliges Anwenden des Konverters.

  1. die Funktion "Alle Tags entfernen, ausser %artist%"
  2. die Funktion "Alle Tags entfernen, ausser %title%"

#17

Probiere doch 'mal: "Alle Tags entfernen, ausser %dummy%"
Was ergibt das?

DD.20080508.1356.CEST


#18

Die Eingaben dort ohne % Zeichen
Es sollte klappen wenn man ein Tagfeld eingibt, das man nicht in seinen Dateien hat, z.B. einfach a oder dummy, es ist beliebig.


#19

auch gut!


#20

Nahezu beliebig, siehe [F] Mp3tag Defekt nach "Tag-Felder entfernen außer ...", nur ein einziges Semikolon sollte es nicht sein.
Man kann aber einen Punkt oder ein Leerzeichen in das Dialogfeld eintragen und der Tag wird komplett entfernt.

DD.20080509.0939.CEST


#21

Es ist besser die Tracknummern NUMERISCH zu prüfen, da es ja auch 1/9 , 2/9 ... 9/9 geben kann. Hier der Link dazu. Vielleicht hat jemand noch Verbesserungen dazu?


#22

... das Gleiche wie mein obiger Vorschlag. Danke für den Hinweis!


#23

Du schreibst "... die Erzeugung eines leeren Transportcontainers, kann erreicht werden, indem man ein Export Skript erstellt mit der einzigen Anweisungszeile $filename(CoverContainer.mp3) Option: Eine Datei pro Verzeichnis."

Ja, und ich brauche eine Möglichkeit NUR in dem %artist%-Ordner eine Transportcontainer-Datei zu erzeugen. Meine Verzeichnisstruktur sieht folgerdemaßen aus:
...\%vorsortierung%\%artist%\%year% - %album%$num(%track%,2). %title%

Wie kann ich da sinnvoll filtern?


#24

Ich habe es mal versucht:

$loop(%artist%)
  ;COPY NUL: _artist.mp3
$loopend()

Es soll bewirken

beginne Wiederholschleife mit Feld %artist% erstem Eintrags

erzeuge mit COPY NUL: _artist.mp3 eine Leerdatei in diesem Verzeichnis

beende die Wiederholschleife mit Feld %artist% letztem Eintrags

warum kommt: Es wurden Informationen aus 12 Dateien verarbeitet und in die Datei "c:\temp\Verify.Album.genre.csv" exportiert?
Was mache ich falsch?


#25

Filter???

Vom Standpunkt der Musikdatei aus liegt der ARTIST Ordner zwei Etagen darüber:
.....

Hmm, irgendwie so etwas ...
$filename(%_folderpath%'....\CoverContainer.mp3',ANSI)$loop(%artist%,1)$loopend()
... oder einfach ...
$filename(%_folderpath%'....\CoverContainer.mp3',ANSI)
... wird eine Datei im Ordner anlegen zwei Etagen über dem Ordner der selektierten Datei.

DD.20120213.0153.CET


#26

Die nächste Variante sieh so aus:

$filename(New export file.txt,utf-8)

$loop(%artist%)
    COPY NUL: _artist.mp3
$loopend()

Ich erhalte "Es wurden Informationen aus 12 Dateien verarbeitet und in die Datei "Z:\m\A\ges\mbaa4\RPJ-Interpr\A\New export file.txt" exportiert." aber keine Leerdateien. Die Option "Eine Datei pro Verzeichnis" habe ich aktiviert.

Irgendwas habe ich da noch nicht verstanden!


#27

Danke für die schnelle Antwort!

Ich bin im Arbeitsverzeichnis Z:\m\A\ges\mbaa4\RPJ-Interpr\A
die Unterverzeichnisse lauten Z:\m\A\ges\mbaa4\RPJ-Interpr\A\%artist%\%album%

Mit

$filename(%_folderpath%'\..\_artist.ipg.mp3',ANSI)$loop(%artist%,1)$loopend()

bekomme ich als Fehlermeldung
Es wurden Informationen aus 12 Dateien verarbeitet und in die Datei "Z:\m\A\ges\mbaa4\RPJ-Interpr\A\New export file.txt" exportiert.
Und als Text-Datei
$filename(Z:\m\A\ges\mbaa4\RPJ-Interpr\A\Andersen, Arild & Ralph Towner, Nana Vascocelos\1993 - If you Look Far Enough\\.._artist.ipg.mp3,ANSI)
aber nicht die gewünschten Null-Byte-Dateien pro Verzeichnis.