Me alegro
Por si te resultase mas cómoda, rapida, etc., esta es otra forma en que podes conseguir la duración:
Código Delphi
[-]
uses mmSystem;
function MP3Length(const FileName: string): string;
var
LenStr: string;
len : Integer;
begin
mciSendString(PChar(Format('open "%s" alias MP3',[FileName])), nil, 0, 0);
SetLength(LenStr, 255);
mciSendString('status MP3 length', PChar(LenStr), Length(LenStr), 0);
len := Trunc(StrToInt(LenStr) / 1000);
Result := Format('%d:%d:%d', [len div 3600, len div 60, len mod 60 ])
end;
Ejemplo de llamada:
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
ShowMessage(MP3Length(OpenDialog1.FileName));
end;
Saludos
