Programación General > Delphi
MediaPlayer o como saber duracion de MP3
madriles:
hola amigos foristas
necesitaba saber como o de donde se puede sacar la duracion ( en tiempo ) de un mp3, para manejar estos datos desde delphi. Se que nombre, album y demas se sacan con un string desde el Stream del mp3 pero no soy capaz de sacar un valor de tiempo
Alguna idea ?
BlackTigerX:
ahi mismo en Delphi viene la ayuda para sacar eso... checa la propiedad Length del componente mediaplayer
type
HMSRec = record
Hours: byte;
Minutes: byte;
Seconds: byte;
NotUsed: byte;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
TheLength: LongInt;
begin
{ Set time format - note that some devices don’t support tfHMS }
MediaPlayer1.TimeFormat := tfHMS;
{ Store length of currently loaded media }
TheLength := MediaPlayer1.Length;
with HMSRec(TheLength) do { Typecast TheLength as a HMSRec record }
begin
Label1.Caption := IntToStr(Hours); { Horas en Label1 }
Label2.Caption := IntToStr(Minutes); { Minutos en Label2 }
Label3.Caption := IntToStr(Seconds); { Segundos en Label3 }
end;
end;
madriles:
hola BlackTigerX
gracias por tu respuesta. Ha veces se nos pasa por alto lo que tenemos delante de las narices
un saludo
BlackTigerX:
asi es, de hecho la ayuda de Delphi es bastante buena, te puedo decir que mucho de lo que yo aprendi lo aprendi de los ejemplos de la ayuda de Delphi
:)
salu2
madriles:
tienes razon la ayuda es muy buena pero... en ingles y algunas veces a los que no sabemos ingles nos cuesta un poco entenderla.
de todas formas, retornando a mi pregunta comentarte que, probada tu respuesta... no me sirve. MP3 es un formato que no admite tfHMS. de todas maneras me dio la idea, Gracias, asi es que use tfMiliseconds y con un pequeño algoritmo lo pase a formato mm:ss y listo.
aunque la verdad lo que yo pretendia ( y pretendo ) es leerlo sin necesidad del mediaplayer (se que puede hacerse, ya que si pasas el raton en el administrador de archivos te lo indica )
lo que de momento estoy haciendo es leer mediante un TFileStream los ultimos 128 bytes del archivo, donde se guarda la informacion, para cambiarla a mi gusto, de hecho lo que pretendo es en el apartado de comentarios poner la duracion y ya, con todos los datos cambiados, leerlos y usarlos en una base de datos.
como te he dicho, de momento me apaño y si consigo solucionarlo como quiero, ya lo pondre a disposicion de quien le pueda interesar.
un saludo
Navegación
[#] Página Siguiente
Ir a la versión completa