Autor Beitrag
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8387
Erhaltene Danke: 416

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.2 CE
BeitragVerfasst: So 08.08.10 13:28 
FlOgger
Version 0.1

Eine Klassensammlung zum Auslesen und Bearbeiten von Metatags in Ogg-Vorbis und Flac-Dateien.

Lizenz: MPL oder LGPL.

Verwendung: Einfach in die uses-Liste aufnehmen, Beispielanwendung im Anhang enthalten.

Entwickelt mit Delphi 2009
Getestet unter D7 und D2009, bei D7 muss beim TestProject der PNG-Compilerschalter umgesetzt werden, da dort PNGImage noch unbekannt ist.

Features
  • Ogg/Flac: Einfaches Lesen und Schreiben der "Standard-Felder" wie Artist, Album, Titel, ...
  • Ogg/Flac: Lesen und Schreiben beliebiger Vorbis-Comments (*)
  • Ogg/Flac: "Unbekannte" Comments bleiben beim Schreiben erhalten (*)
  • Ogg/Flac: Auslesen/Bestimmung von Dauer, Bitrate, Channels, Samplerate
  • Ogg/Flac: Unsinnigerweise vorhandene ID3v2Tags werden erkannt und übersprungen, stören also die Bearbeitung der Dateien nicht
  • Ogg/Flac:Unterstützung von "Padding", das eine schnellere Nachbearbeitung der Tags ermöglicht, da dann nicht unbedingt die ganze Datei neu geschrieben werden muss
  • Flac: Lesen und Schreiben von Bildern (*)
  • Flac: Nicht unterstützte Meta-Daten-Blöcke bleiben erhalten (außer ggf. ein paar Padding-Blöcke, die zu einem zusammengefasst werden)
(*): Verbesserung gegenüber der "AudioToolsLibrary", der einzigen Delphi-Klassensammlung für Ogg/Flac, die mir bisher bekannt ist, und von der ich ein paar kleine Dinge übernommen habe.

Einschränkungen

Bei OggVorbis-Dateien (*.ogg) muss der gesamte Metatag-Block (Vorbis Comments) auf der zweiten Ogg-Seite untergebracht sein. Weitere Daten auf dieser Seite stören nicht, aber über mehrere Seiten verteilte Vorbis Comments können nicht verarbeitet werden.
Der recht weit verbreitete Multi-Tagger "Mp3tag" verteilt die Comments auf mehrere Seiten, wenn in den Tag ein Bild gespeichert wird. Bilder und andere Binärdaten (Base64 encoded) haben in den Vorbis-Comments aber eigentlich nichts zu suchen, und einige Tests bei Jamendo haben gezeigt, dass das eigentlich auch nicht gemacht wird (die mp3s von jamendo enthalten oft mehrere Bilder).

Im Anhang ist auch ein Testprojekt zum Ausprobieren.

screen

Ein paar freie Ogg und Flac-Dateien (mit Cover) findet man z.B. hier.

Kann gut sein, dass das hier bis zum Einbau in Nemp noch etwas erweitert wird. ;-)
Einloggen, um Attachments anzusehen!
_________________
Oel ngati kameie.