procedure ScanMP3Folder (const AFolder : string; AMP3List : TStrings);
var
ds : TDirectoryScanner;
a : TAudioInfo;
Descr : string;
i : integer;
begin
ds := TDirectoryScanner.Create;
a := TAudioInfo.Create;
try
ds.Recursive := True;
ds.RegExprMask := '\.mp[23]';
ds.BuildFileList (AFolder);
for i := 0 to ds.Count - 1 dobegin
a.LoadFromFile (ds.Item [i].name);
if a.ID3.Ok then
Descr := a.ID3.Artist + ' - ' + a.ID3.Title
else
Descr := ExtractFileName (ds.Item [i].name);
Descr := Descr + Format (' (%d sec)', [a.MpegDuration div 1000]);
AMP3List.Add (Descr);
end;
finallybegin
a.Free;
ds.Free;
end;
end;
end;
В статье описывается способ извлечения ID3-тегов и информации из заголовков MPEG из MP3-файлов, а также предоставляется пример кода на Delphi для сканирования директории и создания списка файлов с информацией о музыке.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS