Naja man kann ja nur mp3 und wav in die playlist einfügen.Veleicht ist das hier was für dich hab ich sogar hier gefunden.
Ist auf der bass.dll aufgebaut und ist aus dem Porject Mein erster mp3 player.
Delphi-Quellcode:
procedure TForm1.BtnAddFilesClick(Sender: TObject);
var i: Integer;
begin
if FilesOpenDialog.Execute then
for i := 0 to FilesOpenDialog.Files.Count - 1 do
MeMPPlaylist.Add(FilesOpenDialog.Files[i]);
end;//Die Sounds werden in eine Tlistview eingefügt
Gespeichert wird das ganse so
Delphi-Quellcode:
procedure TForm1.BtnSaveListClick(Sender: TObject);
begin
if PlaylistSaveDialog.Execute then
MeMPPlaylist.SaveToFile(PlaylistSaveDialog.FileName);
end;
Delphi-Quellcode:
// ================================================
// Playlist-Dateien laden und speichern
// ================================================
procedure TMeMPPlaylist.LoadFromM3U(aFilename: String);
var mylist: tStringlist;
i: Integer;
s: String;
begin
mylist := TStringlist.Create;
mylist.LoadFromFile(aFilename);
if (myList.Count > 0) then
begin
if (myList[0] = '#EXTM3U') then //Liste ist im EXT-Format
begin
i := 1;
while (i < myList.Count) do
begin
// Zuerst kommen ggf. die ExtInf-Daten
s := myList[i];
if trim(s) = '' then
inc(i)
else
begin
if (copy(s,0,7) = '#EXTINF') then // ExtInf-Zeile überspringen
inc(i);
Add(ExpandFilename(myList[i]));
inc(i);
end;
end;
end
else
// Liste ist nicht im EXT-Format - einfach nur Dateinamen
for i := 0 to myList.Count - 1 do
begin
if trim(mylist[i])='' then continue;
Add(ExpandFilename(myList[i]));
end;
end;
FreeAndNil(myList);
end;
Delphi-Quellcode:
Hier wird sie direckt alls m3u gespeichert
procedure TMeMPPlaylist.SaveAsM3U(aFilename: String);
var myList: tStringlist;
i:integer;
aAudiofile: TAudioFile;
begin
myList := TStringList.Create;
myList.Add('#EXTM3U');
for i := 0 to fPlayList.Count - 1 do
begin
aAudiofile := fPlaylist[i] as TAudioFile;
myList.add('#EXTINF:' + IntTostr(aAudiofile.Dauer) + ','
+ aAudioFile.Interpret + ' - ' + aAudioFile.Titel);
myList.Add(ExtractRelativePath(aFilename, aAudioFile.Pfad ));
end;
myList.SaveToFile(afilename);
FreeAndNil(myList);
end;