Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /www/htdocs/w00a4c97/ag/SMF2/Sources/Load.php(225) : runtime-created function on line 3
Warum können ID3v2-Tags Probleme verursachen?
Hauptseite

Deutsches
Forum
Willkommen Gast. Bitte einloggen oder registrieren.
25. April 2017, 13:29:51
Übersicht Hilfe Suche Einloggen Registrieren

+  Audiograbber.de Forum
|-+  Audiograbber
| |-+  Häufige Fragen rund um Audiograbber (Moderatoren: Stefan, start78)
| | |-+  Warum können ID3v2-Tags Probleme verursachen?
0 Mitglieder und 1 Gast betrachten dieses Thema. « vorheriges nächstes »
Seiten: [1] Drucken
Autor Thema: Warum können ID3v2-Tags Probleme verursachen?  (Gelesen 44753 mal)
Spunky
Experte
*****
Offline Offline

Beiträge: 1515



Warum können ID3v2-Tags Probleme verursachen?
« am: 2. September 2003, 15:16:48 »

Warum können ID3v2-Tags Probleme verursachen?


Im Gegensatz zu den ID3v1-Tags können die ID3v2-Tags in machen Fällen Probleme bereiten. Dies kann im Extremfall soweit gehen, dass das MP3-File zerstört wird.


Hintergrund:

Ein MP3-File ist in etwa so aufgebaut:

| ID3v2-Tag | Header | MP3-Daten | ID3v1-Tag |

Das Problem dabei ist, dass der ID3v2-Tag am Anfang des Files steht. Bei jeder Veränderung des v2-Tags ändert sich natürlich auch dessen Größe, was bedeutet, dass das MP3-File neu geschrieben werden müsste, damit die neue Größe des v2-Tags auch wieder am Anfang Platz hat. Dies wäre die sauberste Methode, jedoch auch die aufwendigste.

Um dies zu umgehen, wird bei der Erzeugung des MP3-Files ein bestimmter Platzbereich für den ID3v2-Tag reserviert (Padding). Damit kann man die meisten Veränderungen des ID3v2-Tags ohne Probleme durchführen (z.B. Korrektur eines Rechtschreibfehlers, etc.). Problematisch wird es aber dann, wenn nachträglich große Veränderungen durchgeführt werden (z.B. Bilder einfügen), wofür der reservierte Platz nicht mehr ausreicht.

Wird der ID3v2-Tag nachträglich erweitert und der vorgesehen Platz reicht nicht aus, dann wird der Header überschrieben, evtl. sogar die MP3-Daten. Ist der Header defekt, so treten Fehler bei der Anzeige der Liedlänge, Bitrate, etc. auf. Sind die mp3-Daten auch noch angekratzt, so ist das File unwiederbringlich zerstört!


Was ist zu beachten:

Dies kann nur verhindert werden, wenn die verwendete Software das File neu schreibt, sobald der ID3v2-Tag verändert wird. Die meisten Tagger machen das auch, jedoch gibt es gerade im MP3-Umfeld genug Pseudo-Software, so daß Ihr Euch darauf nicht immer verlassen solltet. Aber auch bekannte Programme machen dies nicht immer korrekt. Ich selbst habe mir einen Teil meiner MP3's mit Winamp ruiniert, als ich unwissender Weise, den nicht vorhandenen ID3v2-Tag nachträglich einfügte (wobei in den neueren Winamp-Versionen das Problem meines Wissens behoben ist).

Auf jeden Fall ist Vorsicht in Zusammenhang mit den ID3v2-Tags geboten. Ich rate Euch daher folgende Grundregeln zu beachten:

  • Der v2-Tag sollte beim ursprünglichen Erzeugen des MP3-Files generiert werden. Wenn Ihr ein File ohne v2-Tag besitzt, so macht Euch lieber eine Sicherheitskopie, bevor Ihr diesen nachträglich hinzufügt.
  • Wenn das File bereits einen ID3v2-Tag besitzt, so ist das geringfügige Verändern relativ unproblematisch (Korrektur von Rechtschreibfehlern, etc.). Solltet Ihr größeren Dateien einfügen wollen (z.B. Songtexte oder Bilder) so macht Euch unbedingt vorher eine Sicherheitskopie.
  • Testet jeden Tagger den Ihr verwenden wollt vorher aus, ob er beim Einfügen von größeren Dateien (Songtexte, Bilder) das File neu schreibt. Dies könnt Ihr an der Dateigröße erkennen. Ist die Datei nach dem Einfügen noch genauso groß wie vorher, dann kann der Tagger die ID3v2-Tags nicht richtig verarbeiten. Wichtig beim Test ist, dass Ihr auch eine richtig grosse Datei einfügt, die den reservierten Speicherplatz sicher sprengt.
  • Kontrolliert in Audiograbber wie groß der Speicherplatz ist, der für den ID3v2-Tag reserviert wird. Dieser sollte so dimensioniert sein, dass er für Eure Anwendungen ausreichend ist bzw. rechnet lieber einen guten Aufschlag mit ein. Wer nur die gängigen Informationen einträgt (Titel, Artist, Album, etc.), für den sollte ein Wert von ca. 1000 Bytes ausreichend sein
Was gibts noch für Probleme:

Manche Softwarepakete unterstützen die ID3v2-Tags nicht. Vor allem bei Hardwareplayern ist es sehr verbreitet, dass nur die ID3v1-Tags gelesen werden können. Ihr solltet also auf jeden Fall die ID3v1-Tags parallel benutzen und nicht nur die ID3v2-Tags.

In Bezug auf DVD- und mobile Hardwareplayer habe ich auch schon mitbekommen, daß manche Geräte mit dem ID3v2-Tag ein massives Problem haben und diese Files nicht mehr fehlerfrei spielen können. Wenn Ihr also die v2-Tags benutzen wollt, dann achtet unbedingt beim Hardwarekauf darauf, daß das Gerät die ID3v2-Tags unterstützt (sollte auf der Schachtel draufstehen).


Einstellen des reservierten Speicherplatzes für den ID3v2-Tag

Welchen Speicherplatz der Encoder für den ID3v2-Tag reservieren soll, kann man bei jedem Ripper einstellen. Beim Audiograbber klickt dazu auf "Optionen" (in der Menüleiste, nicht der Button) und dann auf "ID3v2-Tag". Es öffnet sich ein neues Fenster, wo Ihr in der Zeile "ID3v2-Tag mit XXX Bytes Spielraum abspeichern" die gewünschte Größe eintragen könnt.


Radikalmethode

Da es immer wieder Probleme mit den ID3v2-Tags gibt, haben sich einige User für die Radikalmethode entschieden und verwenden die ID3v2-Tags gar nicht mehr. Damit ist das Problem sehr effektiv gelöst  Grin, jedoch ist die Zeichenlänge des ID3v1-Tag sehr knapp gehalten und reicht teilweise nicht aus. Ihr könnt die ID3v2-Tags deaktivieren, indem Ihr in der Menüleiste auf "Optionen" klickt und den Haken bei "ID3v2-Tag" entfernt.


 

Wenn Ihr Fragen zu diesem Thema habt, so macht bitte einen Thread unter "MP3 & Co" auf, dort helfen wir Euch gerne weiter.

Spunky
« Letzte Änderung: 26. März 2005, 22:49:27 von Spunky » Gespeichert
Seiten: [1] Drucken 
« vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2011, Simple Machines Valid HTML 4.01! Valid CSS!
Seite erstellt in 0.024 Sekunden mit 29 Zugriffen.