MeMP - Mein einfacher Mp3-Player
Kapitel 3. MeMP Testprojekt, Version 1.0
Um ein kleines Gefühl für die Anwendung dieser Klasse zu bekommen, bauen wir uns jetzt ein kleines Programm. Wir deklarieren eine globale Variable GlobalAudioFile vom Typ TAudioFile. Im FormCreate wird sie erzeugt, im OnDestroy wieder freigegeben. Dann packen wir einen Button, einen OpenDialog und ein Memo auf die Form. Im OnClick des Buttons passiert folgendes:
procedure TForm1.BtnAuswahlClick(Sender: TObject);
begin
if AuswahlOpenDialog.Execute then
begin
GlobalAudioFile.GetAudioInfo(AuswahlOpenDialog.FileName);
MemoDateiInfo.Clear;
MemoDateiInfo.Lines.add('Interpret: ' + GlobalAudioFile.Interpret );
MemoDateiInfo.Lines.add('Titel: ' + GlobalAudioFile.Titel );
MemoDateiInfo.Lines.add('Pfad: ' + GlobalAudioFile.Pfad );
MemoDateiInfo.Lines.add('Dauer: ' + IntToStr(GlobalAudioFile.Dauer));
end;
end;
Wir lassen den Anwender also eine Datei auswählen, lesen die Audio-Informationen aus und listen sie in der Memo auf. Den ganzen komplizierten Kram mit irgendwelchen Tags und Frames haben wir ausgelagert und brauchen uns nicht mehr darum zu kümmern.
Zusammenfassung bis hierhin
Wir haben jetzt eine Grundlage geschaffen, mit der wir prinzipiell beliebige Audiodateien auf die gleiche Art behandeln können. Das Prinzip und der Sinn hinter der Klasse TAudioFile sollte klar sein: Wir brauchen im weiteren Verlauf unseres Projektes nicht mehr ständig darauf zu achten, ob wir eine mp3, wma, ogg, sonstwas Datei haben – wir können immer gleich verfahren, um die Information aus der Datei zu ermitteln
Die einzelnen Methoden und darunter liegenden Dateizugriffsroutinen sind etwas komplizierter und müssen nicht im Detail verstanden worden sein. Wer weiter in die Materie der ID3-Tags einsteigen möchte, der sei auf www.id3.org verwiesen.