Mit ASX arbeitet man nicht viel, aber da ich sie oft benutze, dachte ich mir, ich könnte sie mal posten.
Da ich mit meinem Player bald fertig werde und gut drauf bin, hier der M3U-Code meines Players:
Delphi-Quellcode:
const
M3UStart = '#EXTM3U';
M3UItem = '#EXTINF:';
function TfrmMain.LoadM3U(filename : String): TDynStrArray;
var
g, music : TStringList;
i: integer;
begin
g := TStringlist.Create;
g.LoadFromFile(Filename);
music := TStringList.Create;
for i := 0 to g.Count - 1 do
begin
if g[i][1] <> '#' then
begin
music.Add(g[i]);
end;
end;
g.Free;
setlength(result, music.count);
for i := 0 to pred(music.Count) do
begin
result[i] := music[i];
end;
music.free;
end;
procedure TfrmMain.SaveM3U(Filename: string);
var
StringList: TStringList;
i: integer;
begin
StringList := TStringlist.Create;
try
Stringlist.add(M3UStart);
for i := 0 to length(ffiles) - 1 do
begin
Stringlist.add(M3UItem);
Stringlist.add(ffiles[i].pfad);
end;
Stringlist.SaveToFile(Filename);
finally
StringList.Free;
end;
end;
fFiles ist übrigens ein mit Audiodateipfaden und Tags gefülltes Array.