APEv2 - Cover Art (Front) - [TODO: deal with binary]

Mit Mp3tag ... APE Tag komplett entfernen ...
Einstellungen im Dialog "Mp3tag/Extras/Optionen/Tags/Mpeg"

  • Lesen
    • [x] APE
    • [_] ID3v2
    • [_] ID3v1
  • Schreiben
    • [x] APEv2
    • [_] ID3v2
    • [_] ID3v1
  • Entfernen
    • [x] APE
    • [_] ID3v2
    • [_] ID3v1
Ansicht aktualisieren mit [F5] ... Dateien selektieren ... Tag entfernen mit [Strg+R] oder :mt_delete: (Rückgängig machen mit [Strg+Z] oder :mt_undo:)

Beim Entfernen wird auch das im APE Tag einbettete Coverbiild entfernt ...
"Cover Art (Front)<0>Cover Art (Front).jpg<0>"

Beim Rückgängigmachen bleibt das Coverbild verloren.

Vor dem Entfernen des APE Tags unbedingt "Gehirn einschalten" und sich darüber klar werden, was alles mit dem Entfernen des APE Tags verloren geht, insbesondere weil vorher Mp3Gain angewendet worden war!

DD.20140412.1033.CEST

Danke euch,
@Ohrenkino: Keine der Varianten zeigt Files ... %_cover_type% HAS Front geht ... umgekehrt funkt aber "MP3GAIN_UNDO" PRESENT schon ... was dafür spricht dass das mit den APE Tags prinzip. so geht ...
@Detlev: Ich werde da mal testen (hab aber über 1000 Files :wink: ... eigentlich möchte ich das mit dem "Cover Art (Front) Tag zum Laufen bekommen...

Filter ...
"%_cover_size%" GREATER 0
%_cover_size% GREATER 0
oder
"%_cover_size%" PRESENT
%_cover_size% PRESENT
oder
NOT "%_covers%" IS ""
NOT %_covers% IS ""

... funktioniert.

DD.20140412.1058.CEST

Da musst du nicht viel testen, sondern die Beschreibung von Mp3Gain lesen und nachvollziehen, was du mit Mp3Gain vielleicht an den Musikdaten verändert hast.
Wenn du einfach nur den APE Tag entfernst, dann beraubst du dich vielleicht der Möglichkeit, die mit Mp3Gain durchgeführten Änderungen rückgängig zu machen, Stichwort "MP3GAIN_UNDO".

DD.20140412.1104.CEST

Crosspost :wink: MP3GAIN macht ja nur bei wenigen files (nehme an bei jenen mit Cover) Probs > kein UNDO erwünscht :wink:

THX, Ja %_cover_type% HAS Front geht auch (das _ hatte gefehlt). Zum Verständnis "Cover Art (Front)" PRESENT:

Scannt mp3tag alle=auch unbekannte Tags ? Muss man Unbekannte zuerst im Tag Panel definieren, damit sie im Filter funken ?
Falls NEIN, gibs so was wie "APETAG HAS "Cover Art (Front)" oder kann man mit einer der Filterfunktionen ($meta(APETAG) ) den APETAG (beim Lesen nun nur APE angehakt) nach "Cover Art (Front)" durchsuchen

Für ein 'zeitgemäßes', dem 'Stand der Technik entsprechendes', 'zerstörungsfreies' Gaining empfehle ich "foobar 2000" zu benutzen.
Damit werden die ReplayGain Daten im ID3v2 Tag abgelegt und das "Hoppeln des Abspielers", was vermutlich verursacht ist durch den angehängten APE Tag müsste dann auch verschwinden.

Im Übrigen kann man Mp3Gain auch so benutzen, dass es keinen APE Tag erzeugt, sondern seine Daten in einen ID3v2 Tag schreibt.
einheitliche Lautstärke bei mp3s
https://www.google.de/search?q=site%3Aforum...gain+id3+%2Fs+i

DD.20140412.1141.CEST

CROSSPOST ... du warst anscheinend 2009 so weit wie ich heute :wink: ... da hast nat. recht, aber die meisten meiner Player können mit replay gain nix anfangen und mp3gain ist eben undoable ...
$meta(Cover Art (Front)) bei der Spaltenanzeige geht auch nicht ... sind die () ein Prob ??

der Unterschied ist eifnach, dass bei mp3gain_undo kein Blank enthalten ist. Lies mal zu Filter die Online-Hilfe, die dir sagt, wie mit Begriffen zum Prüfen umzugehen ist.

naja lesen tu ich ja schon seit gestern :wink: und da steht, dass fields mit Leerzeichen unter " zu setzen sind.
"Cover Art (Front)" PRESENT (egal ob groß/Kleinschreibung) bringt aber eine leere Liste...

Das funkt (mit und ohne '): "$len($meta('Compilation'))" GREATER 0 .... aber mir cover... no way

Ich hab auch beim Tag Panel oder der Spaltenanzeige keinen Erfolg mit "Cover Art (Front)" oder $meta(Cover Art (Front)) ...
Ich hab mir auch die APE Spec. angesehen, deshalb versteh ich in meinem Fall die Bytes nach dem Tracktag "041/100", die vor dem Cover... kommen nicht (Siehe mein angehängtes .png)

Gibt's ne Möglichkeit den APETAGX nach einem String wie Cover... zu parsen (* MATCHES Cover.* geht jedenfalls nicht) ?

was geht ist in den Einstellungen nur Manipulation der APE Tags erlauben und
Aktion: Tag Felder entfernen
Felder: PICTURE

PICTURE im TAG Panel und dann "entfernen" im Übersichtsbereich einstellen und speichern funkt auch nicht ...

Beim von @Detlev vorgeschlagenen Delete Cover/Undo wird zwar das Bild im APEv2 entfernt, aber obwohl ID3 disabled ist, z.B. MP3GAIN_UNDO auch in ID3 eingefügt ...

  1. Wo findet man denn PICTURE überhaupt erwähnt (bin per Suche im Forum zufällig drüber gestolpert) ?

  2. Wäre ich immer noch für einen Filter der im APEv2 nach einem Cover sucht bzw. "Cover Art (Front) dankbar !

  3. Gibt es ein Feld mit dem man explizit (ohne Einschränkung in den Einstellungen) nur das Cover des APEv2 löschen kann ?

  4. Wie erstellt man eine Spalte für "Covers APE" und "Covers ID3" um zu sehen ob (noch besser wie viele) im ID3 bzw. APEv2 enthalten sind

Dann wirst du vermutlich gleichzeitig das Schreiben für ID3v2.x aktiviert haben.
Oder es wurde durch einen anderen Test schon vorher eingeschleppt.

Das APE Tagfeld "Cover Art (Front)" ist in Mp3tag offensichtlich nicht mit einem besonderen Tagnamen versehen. Wenn mehrere Bilder im APE Tag sind, dann kommt der Tagname "Cover Art (Front)" ebenfalls mehrfach vor, selbst dann, wenn im "Extended Tags/Cover Dialog" für die Bildeigenschaft nicht "Front" ausgewählt wird, sondern irgend eine andere Eigenschaft.

APE zum Lesen und Schreiben einstellen und mit der Aktion "Tagfeld entfernen" das Tagfeld PICTURE entfernen, sollte funktionieren, aber das Rückgängigmachen funktioniert nicht, das Bild bleibt verloren.

DD.20140412.1800.CEST

Danke DetlevD

  • Wie erstellt man eine Spalte für "Covers APE" und "Covers ID3" um zu sehen ob (noch besser wie viele je TAGart,) im ID3 bzw. APEv2 enthalten sind
  • %_covers% ist obwohl das Bild im ID3 und APEv2 drin ist bei mir immer max. 1 (Lesen von ID3 und APE eingestellt)
  • Detlev hat ja schon festgestellt dass Cover Art (Front) kein Tag in mp3tag ist. Gibt es mittels Scripting eine Möglichkeit danach zu suchen ?

Du kannst in Mp3tag immer nur einen Tagtyp anzeigen lassen, auch wenn mehrere Tagtypen in der Datei vorhanden sind, weil Mp3tag nach der Prioritätenregel "APE>ID3v2>ID3v1" arbeitet.
Es wird jeweils exklusiv der Inhalt von nur einem Tagtyp angezeigt.
Das Schreiben in die unterschiedlichen Tagtypen ist gleichzeitig möglich.

DD.20140413.0956.CEST

ums zu präzisieren .. Voraussetzung ID3 und APE sind in den Lese-Eistellungen angehakt:
Wenn ein Feld-x im APE- und auch ID3-Tag vorhanden ist, nimmt mp3tag Feld-x aus dem APE-Tag. Ist ein Feld-y im ID3- aber nicht im Ape-Tag vorhanden zeigt mp3tag Feld-y aus dem ID3-Tag.

%_covers% = 1 solange in einem oder beiden Tags ein Bild vorhanden ist. 2 würde nur angezeigt wenn im Ape-Tag 2 vorhanden wären.

1 Gibt es eine Scripting Möglichkeit um eplizit aus dem Ape oder ID3 Tag einzelne Felder zu lesen.
2 Wie gehe ich (beim Filtern oder Sortieren von Spalten) vor wenn ich nur dann covers aus dem Ape-Tag löschen möchte, wenn auch im id3 das Bild vorhanden ist (ich also jedenfalls ein Cover habe)?
3 Ist der Source von mp3tag eigentlich vefügbar ? Um z.B. mal eine tats. implementiere Liste aller Felder zu sehen oder wie %Variablen berechnet werden ...

Vermutung oder Feststellung?

Ok, Konjunktiv, also Vermutung.

Ja, "exklusiv oder", also "entweder/oder".
Ich vermute, dass für jeden Tagtyp alle Mp3tag Funktionen zur Verfügung stehen, ausprobiert habe ich es noch nicht.

Für diesen Zweck kann man vielleicht für jeden Tagtyp jeweils ein Exportscript laufen lassen, sodass man beide Berichte visuell vergleichen kann.

Mp3tag ist immer noch "Closed Source", deshalb dauert es ja auch immer seine Zeit, bis Mängel behoben sind.

DD.20140413.1113.CEST

Habe seit gestern einiges versucht ... das ist meine Erfahrung = Feststellung (bei soviel try and error könnte ich aber auch was durcheinander gebracht haben ;-). Ich hoffe du kannst das so bestätigen ?!

Ich hoffte auf eine Funktion wie $meta(), die generisch einzelne Felder (die mp3tag nicht schon kennt, wie mein Liebling "Cover Art (Front)" ) eines Tags auslesen könnte ! mp3tag kann ja auch mit benutzerdefinierten Felder in Tags umgehen ... (ev. bring ich auch nach dem vielen Rumprobieren was durcheinander :wink:

Hmm, nein.

Die Funktion $meta zeigt eine Liste von Textwerten an, die jeweils mit demselben Tagnamen angelegt sind.
Das hat aber keinen Bezug zu diesem Zusammenhang hier.

Meines Wissens zeigt Mp3tag alles an, was es erkennen kann, und was es anzeigen möchte.

Siehe auch ...
Export or backup all tag fields

... und ...
http://forums.mp3tag.de/index.php?act=atta...ost&id=5497

Download/copy/move this MTE file ... into the folder ...

(Win XP) %APPDATA%\Mp3tag\Export
resp. (newer OS) %APPDATA%\Roaming\Mp3tag\Export<!--sizec-->

Mit diesem Export Skript kannst du eine komplette Inhaltsübersicht erzeugen.

DD.20140413.1207.CEST

THX, der 2. Link funkt nicht ?!
Könnte man aus dem was machen: Beschränke ich auf ID3 heist das cover = Other, Bei APE = Front Cover, Cover Art (Front).jpg Wie krieg ich diese Infos, die in der Übersicht neben beim Bild angezeigt werden, in eine Spalte ?

Könnte man einen TMP-Tag erzeugen der nicht in den Files geschrieben wird, den man zuerst mit der Einstellung "nur ID3 lesen" als Aktion1 mit %tmp% = %_covers% befüllt und dann bei Einstellung "nur APE lesen" Als Aktion2 %tmp%=%tmp%+%_covers% ergänzt

Probiere nochmal, es müsste eine Download Bestätigung angezeigt werden.

Ja, man kann die Inhalte aus dem einen Tagtyp lesen und in den anderen Tagtyp schreiben bzw. kopieren.
Dabei sollte man die Ziel-Tagnamen dann so wählen, dass im Ziel-Tagtyp bestehende Tagfelder nicht verändert werden.

Beispiel
ID3v1 lesen
ID3v2 schreiben
Aktion "Tag-Feld formatieren"
Feld: ID3V1_TITLE
Formatstring: %TITLE%
... usw. eine Aktion je Tagfeld ...

Beispiel für alle Felder auf einmal
ID3v1 lesen
ID3v2 schreiben
Aktion "Tag-Feld formatieren"
Feld: LIST_ID3V1
Formatstring: $list(,'="','"'$char(13)$char(10))

Beispiel für alle Felder auf einmal
... plus Anzahl Covers
APE lesen
ID3v2 schreiben
Aktion "Tag-Feld formatieren"
Feld: LIST_APE
Formatstring: $list(,'="','"'$char(13)$char(10))'_covers="'%_covers%'"'$char(13)$char(10)

DD.20140413.1950.CEST

!!!!!THX!!!!! Bin gerade am probieren ... so ganz raff ich es noch nicht :wink:

  • Wo ist den die $list funktion dokumentiert ? Gibts noch mehr "hidden secrets" z.B. $loop ?
  • Wo ist die scriptsprache der .mte files beschrieben ?