Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Ayuda con error en código (https://www.clubdelphi.com/foros/showthread.php?t=85567)

UsuarioBaja123 01-04-2014 21:45:48

Ayuda con error en código
 
He estado haciendo una aplicación recientemente y me he cruzado con el problema de que nunca había utilizado el componente TMediaPlayer. Con mis conocimientos intente hacer lo que pude y me guié de unos códigos en internet. El problema está que en cuando uso un OpenDialogue para abrir un archivo MP3 el componente TMediaPlayer me suelta "No se puede determinar el tipo del dispositivo por la extensión del archivo". Pero en cambio si lo pongo manualmente en las propiedades lo reproduce perfectamente.

He probado con estos dos códigos:
Código:

var
  openmp3Dialog : TOpenDialog;    // OpenMP3File Variable
  mp3File : String;    // Create a variable for MP3 File
begin
openmp3Dialog := TOpenDialog.Create(Self);
  openmp3Dialog.Filter := 'MP3 Audio Files (*.mp3)|*.mp3';
  if openmp3Dialog.Execute() then
    openmp3Dialog.FileName := MP3Player.FileName;
    if (FileExists(openmp3Dialog.FileName)) and
      (not DirectoryExists(openmp3Dialog.FileName)) then
      MP3Player.Wait := true;
      MP3Player.Open;
      MP3Player.Play;
      openmp3Dialog.Free;
 end;

y con este:

Código:

var
  openmp3Dialog : TOpenDialog;    // OpenMP3File Variable
  mp3File : String;    // Create a variable for MP3 File
begin
openmp3Dialog := TOpenDialog.Create(Self);
openmp3Dialog.Filter := 'MP3 Audio Files (*.mp3)|*.mp3';
openDialog.Execute
openmp3Dialog.FileName := MP3Player.FileName;
openDialog.Free;
MP3Player.Open;
MP3Player.Play;
end;

El segundo lo desarrollé yo mismo pero al ver tutoriales diferentes en internet decidí cambiarlo por el que había en Internet.

A parte de eso tengo más cosas ahí metidas como escribir textos en TEdit mostrar unos mensajes y otras cosas pero en el final donde no tienen relación con el código inicial.

Gracias de antemano. ^\||/ :)

Casimiro Noteví 01-04-2014 21:48:01

Bienvenido a clubdelphi, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración :)

UsuarioBaja123 01-04-2014 21:55:35

Si la había leído, quizás el título que le di al mensaje no era bueno; pero no lo puedo cambiar pero si me he expresado con amabilidad y he respetado las demás normas.

Casimiro Noteví 01-04-2014 22:01:20

Estupendo, muchas gracias ^\||/

ecfisa 01-04-2014 22:56:04

Hola ZaneMS.

El problema es que en ninguna parte del código de tu mensaje se le asigna valor alguno a la propiedad FileName del TMediaPlayer.

Hace esta simple prueba, agrega un TOpenDialog, un TMediaPlayer, un TButton y este código:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  OpenDialog1.Filter:= 'MP3 Audio Files (*.mp3)|*.mp3';
  if OpenDialog1.Execute then
  begin
    MediaPlayer1.FileName:= OpenDialog1.FileName;
    MediaPlayer1.Open;
    MediaPlayer1.Play;
  end;
end;


Saludos :)

UsuarioBaja123 01-04-2014 23:02:31

Muchas gracias, no me había dado cuenta que me había saltado esd paso y eso que he hecho cosas más difíciles.
Mañana lo pruebo y os digo los resultados que seguramente serán satifactorios. Gracias por responderme y explicarme mi error.

Muchas gracias, y Salu2.

UsuarioBaja123 02-04-2014 16:17:57

He corregido el código como tu me has dicho. En tu ejemplo funcionaba bien, pero al implementarlo a mi código unos mp3 los abre y a otros le pone "Ha habido un problema al iniciar el MCI" y a los que habre no me funciona el MediaPlayer1.Position.

ecfisa 03-04-2014 11:56:57

Cita:

Empezado por ZaneMS (Mensaje 474719)
He corregido el código como tu me has dicho. En tu ejemplo funcionaba bien, pero al implementarlo a mi código unos mp3 los abre y a otros le pone "Ha habido un problema al iniciar el MCI" y a los que habre no me funciona el MediaPlayer1.Position.

Hola ZaneMS.

Al reproducir algunos archivos mp3 bién y otros mal, el problema seguramente se deba a los diferentes metadatos de los archivos mp3.

Revisa este enlace: Delphi: Error when starting MCI.

Saludos :)

nlsgarcia 03-04-2014 17:13:48

ZaneMS,

Cita:

Empezado por ZaneMS
...me he cruzado con el problema de que nunca había utilizado el componente TMediaPlayer...

Te sugiero revisar este link:
En el link anterior encontraras un ejemplo completo del uso del componente TMediaPlayer :rolleyes:

Espero sea útil :)

Nelson.


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

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