![]() |
Id3 Tags, Muetze1's Lib
Hallo,
Ich benutze zum Auslesen von Mp3 Tags die Id3 Lib von Muetze1. Ich bin eigentlich sehr zufrieden damit, da sie die einzige ist welche mir die Daten liefern kann, die ich brauche. Doch mir tut sich ein Problem auf: Ich benutze diesen Code zum (Testweisen) Auslesen:
Delphi-Quellcode:
Ist kein schöner Code, soll er aber auch nicht sein, da ich verzweifelt bin und wenn alles funktioniert, schreibe ich ihn schöner.
procedure TForm1.Button1Click(Sender: TObject);
var Album, Artist, Genre, Tracknum, Title, Year: String; test: string; time: integer; fID3Class: TID3v2Class; str: Tstringlist; i:integer; begin fID3Class :=TID3v2Class.Create('c:\ns.mp3'); str :=Tstringlist.create; For i := 0 To fID3Class.TagCount - 1 Do begin if (fID3Class.Tags[i] is TTxxxTag) then With ( fID3Class.Tags[i] As TTxxxTag ) Do Begin str.add(inttostr(i)+Text); //Artist End; end; showmessage(str.text); str.free; fID3Class.Free; end; Aber zum Problem: Bei ihm befindet sich auf Tagcount 3(Ich glaube es war 3) das Genre, bei mir jedoch befindet sich(selbe Mp3 Datei!) etwas anderes auf diesem Tagcount. Damit noch nicht genug, bei mir wird alles ausgelesen bis eben auf das Genre. Irgendwie muss man doch da rankommen. Das ganze macht mich deswegen so fertig, da mein Testcode seinem ziemlich gleicht aber unterschiedliche Ergebnisse liefert. Ich hoffe ihr könnt mir helfen Danke schonmal Gruß, Max |
Re: Id3 Tags, Muetze1's Lib
1. Ich weiss nicht, ob die anderen soviel Wissen über meine Lib haben, als dass du direkt hier nachfragst.
2. Die Reihenfolge der Tags sind immer völlig zufällig - so wie sie aus dem MP3 gelesen werden. Der TTxxxTag handelt dabei alle Text-Tags die unterschiedliche Informationen beinhalten. Wenn du die Inhalte unterscheiden willst, dann schau dir an was in der Eigenschaft TagID drinne steht. Hier mal eine kurze Liste der unterschiedlichen Bedeutungen (übrigens auch zu finden in der ID3v2Types.pas aus der Library): Zitat:
Somit findest du das Genre immer in dem TTxxxTag, welcher eine TagID von 'TCON' hat. Wenn kein TTxxxTag mit dieser TagID vorhanden ist, dann leg eine an mit dem TagDispatcher der Library. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz