AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi id3 Tags setzten funktioniert nur bedingt...
Thema durchsuchen
Ansicht
Themen-Optionen

id3 Tags setzten funktioniert nur bedingt...

Offene Frage von "hibbert"
Ein Thema von hibbert · begonnen am 17. Nov 2006 · letzter Beitrag vom 18. Nov 2006
 
Benutzerbild von hibbert
hibbert

Registriert seit: 26. Aug 2003
Ort: Berlin
262 Beiträge
 
Delphi 2005 Personal
 
#1

id3 Tags setzten funktioniert nur bedingt...

  Alt 17. Nov 2006, 16:14
hi,
ich bin gerade dabei mir ein kleines Tool zur MP3 Verwaltung zu schreiben und dabei möchte ich gerne die ID3 Tags setzten. Dafür habe ich mir folgende kleine Procedur zurecht geschnippelt:
Delphi-Quellcode:
procedure SaveMP3File(AFile, ATitle, AArtist, AAlbum, AGenre,AYear,ATrack: String);
var
  MyId3v1Tag: TID3v1Tag;
  MyId3v2Tag: TID3v2Tag;
begin

  MyId3v1Tag := TID3v1Tag.Create;
  if form1.CheckBox2.Checked then MyId3v2Tag := TID3v2Tag.Create;

  try
     form1.Lblv1Artist.Text:=AArtist;
     form1.Lblv1Titel.Text:=ATitle;

    if form1.CheckBox2.Checked then
    begin
      MyId3v2Tag.Title := ATitle;
      MyId3v2Tag.Artist := AArtist;
      MyId3v2Tag.Album := AAlbum;
      MyId3v2Tag.Genre := AGenre;
      MyId3v2Tag.Year := AYear;
      MyId3v2tag.Track := ATrack;
      MyId3v2Tag.Comment := form1.Lblv1Comment.Text;
    end;

    MyId3v1Tag.Title := ATitle;
    MyId3v1Tag.Artist := AArtist;
    MyId3v1Tag.Album := AAlbum;
    MyId3v1Tag.Genre := AGenre;
    MyId3v1Tag.Year := AYear;
    MyId3v1tag.Track := ATrack;
    MyId3v1Tag.Comment := form1.Lblv1Comment.Text;

    // schreibgeschütze MP3 werden so ebenfalls geändert, weil der schreibschutz aufgehoben wird
    if (FileGetAttr(aFile) and faReadOnly) > 0 then FileSetAttr(afile, FileGetAttr(afile) xor faReadOnly);

    MyId3v1Tag.WriteToFile(aFile);
    if form1.CheckBox2.Checked then MyId3v2Tag.WriteToFile(aFile);

  finally
    if form1.CheckBox2.Checked then MyId3v2Tag.free;
    MyId3v1Tag.free;
  end;
end;
Nun habe ich folgendes Problem:
Einige MP3-Dateien haben bereits ID3 Tags. Doch nicht bei allen MP3-Dateien werden die Tags geupdatet. Höchstens wenn ich den ID3v2Tag verwende, aber das dauert mir teilw. echt zu lange bzw da passiert genau das gleiche...

Dazu kommt noch, dass der Kommentar nicht übernommen wird.

Auch wenn ich vorher die ID3Tags entferne MyId3v2Tag.RemoveFromFile(AFile); bleibt das Ergebnis das gleiche, nur teilw. ersetzungen...

Meine Fragen nun:
• Wie kann ich wirklich alle MP3 Dateien updaten?
• Wie bekomme ich es hin, dass auch der Kommentar mit übernommen wird?

Vielen dank.

MfG Hibbert
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:40 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