Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-09-2004
Jose_Pérez Jose_Pérez is offline
Miembro
 
Registrado: may 2003
Posts: 156
Poder: 22
Jose_Pérez Va por buen camino
TMediaPlayer: Tiempo de reproducción de un MP3.

Hola:

¿Cómo puedo saber el tiempo de reproducción de un MP3 (mm:ss) con un TMEdiaPlayer?.

Saludos y gracias.
Responder Con Cita
  #2  
Antiguo 07-09-2004
Descendents Descendents is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona
Posts: 396
Poder: 22
Descendents Va por buen camino
creo recordar que hay una propiedad que te da los segundos
i luego haces este procedimiento i ya.

var t,h,m,s :integer;
begin
t := 3671;
m := t div 60;
h := m div 60;
m := m mod 60;
s := t mod 60;
showmessage(inttostr(t)+' segundos se transforman en '+inttostr(h)+' horas y +inttostr(m)+' minutos y '+inttostr(s)+' segundos');


Saludos
__________________
La victoria tiene cien padres. La derrota es huérfana (Napoleón).
Responder Con Cita
  #3  
Antiguo 07-09-2004
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Thumbs up Facil... de esta manera:

Esto se puede hacer de esta manera:

Código Delphi [-]
procedure TFPral.Establecer_Tiempos;
var Hs, Min, Seg: integer;
    LHs, LMin, LSeg: string;
begin
// la barra de proceso trabaja en segundos
Proceso.Min := 0;
Proceso.Max := Reproductor.Length Div 1000;
Proceso.Position := 0;
// calcular tiempo
Seg := Reproductor.Length Div 1000;
Hs := Seg Div 3600;
Seg := Seg - (Hs * 3600);
Min := Seg Div 60;
Seg := Seg - (Min * 60);
if Hs >= 10
   then begin
        LHs := IntToStr(Hs);
        end
   else begin
        LHs := '0'+IntToStr(Hs);
        end;
if Min >= 10
   then begin
        LMin := IntToStr(Min);
        end
   else begin
        LMin := '0'+IntToStr(Min);
        end;
if Seg >= 10
   then begin
        LSeg := IntToStr(Seg);
        end
   else begin
        LSeg := '0'+IntToStr(Seg);
        end;
LTiempo.Caption := Lhs +':'+ LMin +':'+ LSeg;
Ltema.Caption := ExtractFileName(Reproductor.FileName);
Proceso.Enabled := True;
Play.Enabled := True;
end; { Fin Establecer_Tiempos }

Para que funcione correctamente asegúrate antes de hacer dichos cálculos que la proopiedad TimeFormat tenga el valor tfMilliseconds.
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #4  
Antiguo 09-09-2004
Jose_Pérez Jose_Pérez is offline
Miembro
 
Registrado: may 2003
Posts: 156
Poder: 22
Jose_Pérez Va por buen camino
Gracias por vuestras respuestas. Me han servido para resolver el problema.

Saludos.
Responder Con Cita
  #5  
Antiguo 10-09-2004
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cool Cuidado con el TMediaPlayer

Ha.. se me olvido decirte Jose_Pérez que si estas usando Delphi 5 o inferior, el componente TMediaPlayer tiene unos "pequeños" fallos. Para ello debes buscar una versión nueva.. Pero si tienes Delphi 6 o superior no te hagas drama...
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #6  
Antiguo 15-09-2004
Jose_Pérez Jose_Pérez is offline
Miembro
 
Registrado: may 2003
Posts: 156
Poder: 22
Jose_Pérez Va por buen camino
Hasta ahora no he tenido problemas. ¿Cuales son esos fallos?.

Saludos.
Responder Con Cita
  #7  
Antiguo 18-09-2004
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Error en el TMediaPlayer

No me acuerdo muy bien, la verdad es que lo leí en un libro para principiantes en Delphi... pero creo que el error se producía cuando se le pasaba un nuevo archivo a reproducir. Lo que sucedía es que el TMediaPlayer en vez de "actualizar" el valor de ciertas propiedades, las "sumaba". Otro error que me acuerdo se encontraba en el evento Stop().
Pero como te dije, si estas usando Delphi 6 o superior no tendrás problemas. En caso contrario si.
La verdad es que yo use el TMediaPlayer en Delphi 6 y por eso nunca tuve problemas... sino no estaría escuchando música con el reproductor que me hice!
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #8  
Antiguo 09-11-2004
Jose_Pérez Jose_Pérez is offline
Miembro
 
Registrado: may 2003
Posts: 156
Poder: 22
Jose_Pérez Va por buen camino
Mira por donde yo acabo de detectar un error. Cuando el path+nombre_de_archivo es muy largo, da problemas.

Saludos.
Responder Con Cita
  #9  
Antiguo 10-11-2004
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Question

Disculpa, que versión de Delphi usas?... que tan largo tiene que ser para que se produzca el error?
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 04:36:48.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi