?
Die Spezifikation der ID3 Tags findest du unter http://www.id3.org
Ein paar Worte zu deinen Fragen:
Der ID3 Version 1 Tag steht am Ende der MP3-Datei. Ein ID3 Version 2 Tag hingegen steht unmittelbar am Beginn einer MP3-Datei. Eine MP3-Datei kann entweder keinen, einen, oder beide Versionen eines ID3-Tags beinhalten.
Der Version 1 Tag ist sehr viel leichter zu lesen und zu schreiben, hat allerdings nur sehr limitierten Funktionsumfang (fixe maximale Länge der Strings, kein Support für Coverbilder, Songtexte, Unicode-Kodierung etc.). ID3 Version 2 Tags können sehr viel mehr, sind jedoch auch um sehr viel aufwändiger zu implementieren (mehrere tausend Codezeilen für eine vollständige Implementierung).
Der aktuelle Standard sind ID3 Tags Version 2.4, trotzdem ist die ID3 Version 2.3 aus diversen Gründen bis heute die am meisten verwendete. ID3 Tags in den Versionen 1.0, 1.1, und 2.2 sind veraltet. ID3 Tags in den Versionen 2.0 und 2.1 existieren übrigens nicht.
Die Länge einer MP3-Datei ist leider ebenfalls nicht ganz einfach zu berechnen. Zuerst muss zwischen einer CBR (konstante Bitrate) oder VBR bzw. ABR (variable Bitrate) kodierten MP3-Datei unterschieden werden. Bei einer CBR MP3 kann die Bitrate einfach über den Header des ersten MP3 Frames ausgelesen werden. Zusammen mit der Größe der Datei (bzw. der Audiodaten) kann dann die Länge der MP3 berechnet werden.
Bei einer VBR MP3 hat es sich etabliert, einen sogenannten VBR-Header am Anfang der MP3 zu kodieren, der die Anzahl der Frames enthält. Zusammen mit der Samplingrate lässt sich hier wiederum die Länge der MP3 berechnen.
Problematisch sind VBR MP3's ohne VBR-Header. Bei diesen müssen die Frame-Header der gesamten MP3 durchgeparst werden, um die Anzahl der Frames bzw. die durchschnittliche Bitrate ausfindig zu machen. Dies ist zum einen langsam, und zum anderen etwas aufwändig zu implementieren. Einige Programme können daher bei MP3's mit variabler Bitrate ohne VBR-Header keine korrekte Länge berechnen, obwohl es sich hier um standardkonforme MP3's handelt.
Links zu den genauen Spezifikationen der MP3 Frame Headers und VBR Headers habe ich im Moment leider gerade nicht zur Hand, sind aber über Google etc. zu finden.
Gruß,
-- emkey08 --