Форум: "Media";
Текущий архив: 2007.03.25;
Скачать: [xml.tar.bz2];
Вниз
Подключение playlistoв Найти похожие ветки
← →
Der Nechk@ssoff © (2006-06-02 16:07) [0]Здрасте!Подскажите как осуществить потдержку m3u playlistов?
Файл должен открываться через opendialog в listbox.
Спасибо
← →
BadTester (2006-07-25 12:34) [1]var
i: Integer;
begin
if OpenDialog3.Execute then
begin
ListBox.Clear;
Memo1.Clear;
Memo1.Lines.LoadFromFile(OpenDialog3.FileName);
//Çàãðóçêà ñîáñòâåííîãî Playlist-à
{ if ExtractFileExt(OpenDialog3.FileName) = ".epl" then
MEMO;}
//Çàãðóçêà Playlist-à îò LightAllow - "LAP"
if ExtractFileExt(OpenDialog3.FileName) = ".lap" then
begin
for i := 0 to Memo1.Lines.Count - 1 do
begin
if Memo1.Lines.Strings[i] = "" then
begin
Memo1.Lines.Delete(i - 1);
end;
end;
end;
//Çàãðóçêà Playlist-à "M3U"
if ExtractFileExt(OpenDialog3.FileName) = ".m3u" then
begin
Memo1.Lines.Delete(0); // Óäàëåíèå ïåðâûõ 2-óõ ñòðîê èç Memo1
Memo1.Lines.Delete(0); //
for i := 0 to Memo1.Lines.Count - 1 do
begin
Memo1.Lines.Delete(i + 1);
end;
end;
{if PlayList.Down = false then
begin
//PlaylistShow;
end;}
MEMO;
end;
PlayingIndex := 0;
end;
← →
BadTester (2006-07-25 12:37) [2]А вот собственно сохранение
var
pl: Integer;
Filename: String;
begin
if ListBox.Count <> 0 then
begin
for pl := 0 to ListBox.Count - 1 do
begin
PlayListItem := pPlayListitem(Listbox.Items.Objects[pl]);
Filename := PlayListItem^.Path;
Filename := Filename + PlayListItem^.Filename;
Memo1.Lines.Add(Filename);
end;
if SaveDialog3.Execute then
Memo1.Lines.SaveToFile(SaveDialog3.FileName);
end;
end;
← →
antonn © (2006-07-25 14:06) [3]BadTester
предлагаю застрелиться самому (уж извеняйте, что так грубо).procedure TF_PlayList.LoadPlayList_M3U(Filename: string);
var F: TextFile;
Buffer, sFilename: string;
i, iPos1, iPos2: Integer;
A: pPlayListItem;
begin
AssignFile(F, Filename);
Reset(F);
ReadLn(F, Buffer);
if Buffer = "#EXTM3U" then begin
i := 1;
while not Eof(F) do begin
ReadLn(F, Buffer);
iPos1 := Pos(":", Buffer);
iPos2 := Pos(",", Buffer);
время_звучания:= formatdatetime("nn:ss", StrtoInt(Copy(Buffer, iPos1 + 1, iPos2 - iPos1 - 1))/(60*60*24)) ;
title{название в списке плейлиста} := Copy(Buffer, iPos2 + 1, length(Buffer));
ReadLn(F, sFilename); //sFilename - путь до файла
ListBox1.Items.Add(sFilename);
Inc(i);
end;
end;
end;
procedure TF_PlayList.SavePlayList_M3U(Filename: string);
var F: TextFile;
Buffer: string;
i: Integer;
begin
AssignFile(F, Filename);
Rewrite(F);
Writeln(F, "#EXTM3U");
for i := 0 to listbox1.Items.Count - 1 do begin
Buffer := Format("#EXTINF:%d,%s", [ Integer( 333{время звучания в секундах} ), "title" ]);
WriteLn(F, Buffer);
WriteLn(F, listbox1.Items[i]{путь до файла} );
end;
CloseFile(F);
end;
if OpenDialog.Execute then LoadPlayList_M3U(OpenDialog.filename);
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2007.03.25;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.056 c