Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Tag anlegen mit TJvID3v" (https://www.delphipraxis.net/71215-tag-anlegen-mit-tjvid3v.html)

Thanatos81 11. Jun 2006 02:26


Tag anlegen mit TJvID3v"
 
Guten Morgen zusammen!

Ich bin malm wider noch nicht im Bett, weil mich ein Problem ärgert... Und zwar möchte ich den ID3v2-Tag in einer MP3 ausfüllen.

Ist dieser bereits vorhanden, hab ich das auch schon hinbekommen... nur wenn der Tag komplett noch nicht existiert, bleibt das auch so :wall:.

Ich benutz die TJvID3v2-Kompo aus den jedis mit folgenden Code:
Delphi-Quellcode:
JvID3v21.FileName := path + name;

JvID3v21.Open;
JvID3v21.Erase;
JvID3v21.EnsureExists([fiTrackNum, fiAlbum, fiBand, fiTitle]);
     
JvID3v21.Texts.TrackNum := formatFloat('000', i + 1);
JvID3v21.Texts.Album := album;
JvID3v21.Texts.Band := interpret;
JvID3v21.Texts.Title := Copy(name, Pos('-', name) + 2, Pos('-', name) - Pos('.', name));

JvID3v21.Commit;
JvID3v21.Close;
Und bevor jemand fragt... Ja, falls ein v2-Tag vorhanden ist, soll der gelöscht werden^^

Schönen Dank schonmal im Vorraus!

//Edit Ach ja, Jedis sind in der Version 3.20 installiert.

marabu 11. Jun 2006 09:47

Re: Tag anlegen mit TJvID3v"
 
Hallo Thomas,

wie stellst du denn fest, dass dein Code nicht funktioniert? Bei mir funktioniert er.

Grüße vom marabu

Thanatos81 11. Jun 2006 10:18

Re: Tag anlegen mit TJvID3v"
 
Nun ja, ich hab einen meiner Ordner genommen und zu Testzwecken kopiert. In der Kopie hab ich mittels Winamp die ID3v1 und ID3v2 gelöscht.

Danach lass ich mein Prog die dazugehörige m3u öffnen und starte den Kopiervorgang. Hinterher zeigt mir Winamp immer noch keinen ID3 an *seufz*. Ich werd aber mal schauen, ob meine JVCL in Ordnung ist.

Danke schon mal für die Antwort,
Thomas

Flare 11. Jun 2006 10:21

Re: Tag anlegen mit TJvID3v"
 
Wenn Winamp genau so wie der Mediaplayer von Windows seine Medienbibliothek verwaltet kann auch gar nichts kommen :zwinker:
Dann speichert er nämlich alle ID3Tags nochmal extra ab und ruft diese dann auf. Du musst also diese Dateien nochmal aus der Bibliothek entfernen und wieder einladen.


Flare

Muetze1 11. Jun 2006 10:28

Re: Tag anlegen mit TJvID3v"
 
Sonst probiere es doch mal mit meiner ID3 Tag Lib: http://www.muetze1.de/?pl=delphi&c=p...b.php&lang=ger
Du könntest dabei das EasyInterface benutzen um dich nicht mit der Library an sich auseinander setzen zu müssen.

Auf Wunsch könnte ich im EasyInterface noch 2 Funktion für das entfernen der jeweiligen Version hinzufügen. Dies würde dann aber erst was nächstes WE, bin die Woche auf Dienstreise.

Thanatos81 15. Jun 2006 06:22

Re: Tag anlegen mit TJvID3v"
 
Zitat:

Zitat von Flare
Wenn Winamp genau so wie der Mediaplayer von Windows seine Medienbibliothek verwaltet kann auch gar nichts kommen :zwinker:
Dann speichert er nämlich alle ID3Tags nochmal extra ab und ruft diese dann auf. Du musst also diese Dateien nochmal aus der Bibliothek entfernen und wieder einladen.


Flare

Daran lags leider nicht :( Habe die Echse gestern auf einem frischen Rechner geschoben. ID3s waren wieder leer. Auch das Anschauen mit anderen Tools, wie z.B. Tag&Rename, bestätigt, dass kein Tag vorhanden ist.

Zitat:

Zitat von Muetze1
Sonst probiere es doch mal mit meiner ID3 Tag Lib: http://www.muetze1.de/?pl=delphi& ... s&fid=ID3Lib.php&lang=ger
Du könntest dabei das EasyInterface benutzen um dich nicht mit der Library an sich auseinander setzen zu müssen.

Auf Wunsch könnte ich im EasyInterface noch 2 Funktion für das entfernen der jeweiligen Version hinzufügen. Dies würde dann aber erst was nächstes WE, bin die Woche auf Dienstreise.

Werd ich mal testen, danke! Allerdings wirds wohl auch erst ab Montag was werden, da ich Montag meine mdl. Abschlussprüfung habe ;-)
Das Entfernen der Tags ist keine kritische Funktion. Es geht eh hauptsächlich darum, Teile der Sammlung eines Kumpels mit einer führenden Ziffer und ID3-Tags an eine neue Stelle zu kopieren, damit sein Autoradio bzw. Handy die Lieder in der gewünschten Reihenfolge spielt und nicht nach Alphabet ;-)

Was mir noch aufgefallen ist: Die Info von TJvID3v2 zeigt bei mir die Version 3.10 an, also hab ich mal die Install der JVCL 3.20 neu drüber laufen lassen, es wird mir aber immer noch 3.10 angezeigt. Bedeutet dass, dass TJvID3v2 zu letzt in 3.10 geändert wurde, oder ist meine JVCL aus igendeinem Grund noch komplett in 3.10 statt 3.20?

Thanatos81 21. Jun 2006 22:13

Re: Tag anlegen mit TJvID3v"
 
So, da bin ich wieder. Dank nem Kumpel konnte ich das Problem lösen:

Delphi-Quellcode:
JvID3v21.FileName := path + name;

JvID3v21.Open;
JvID3v21.Erase;
//JvID3v21.EnsureExists([fiTrackNum, fiAlbum, fiBand, fiTitle]); ersetzen durch:
JvID3v21.Header.ChangeToVersion(ive2_2);
     
JvID3v21.Texts.TrackNum := formatFloat('000', i + 1);
JvID3v21.Texts.Album := album;
JvID3v21.Texts.Band := interpret;
JvID3v21.Texts.Title := Copy(name, Pos('-', name) + 2, Pos('-', name) - Pos('.', name));

JvID3v21.Commit;
JvID3v21.Close;
Danke trotzdem an alle, die gepostet haben!


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:37 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-2025 by Thomas Breitkreuz