Foros del Web » Programación para mayores de 30 ;) » Programación móvil »

Reproducir varios archivos de audio

Estas en el tema de Reproducir varios archivos de audio en el foro de Programación móvil en Foros del Web. Saludos a todos!!! estoy trabajando con JME y el MMAPI, necesito reproducir varios archivos de audio, los cuales son las letras de una palabra; es ...
  #1 (permalink)  
Antiguo 27/07/2011, 00:11
 
Fecha de Ingreso: febrero-2010
Ubicación: Guayaquil - Ecuador
Mensajes: 350
Antigüedad: 14 años, 8 meses
Puntos: 13
Reproducir varios archivos de audio

Saludos a todos!!! estoy trabajando con JME y el MMAPI, necesito reproducir varios archivos de audio, los cuales son las letras de una palabra; es decir, si la palabra es "hola" se reproducirá como h-o-l-a. La primera vez que las reproduzco lo hace perfectamente, pero la segunda vez me sale el error Out Of Memory Exception, aun no se como resolverlo. Aqui el codigo con el cual reproduzco audio:

int i;
String palabra = "manzana", letra = "";

try {
for (i = 0; i < palabra.length(); i++){
letra = "" + palabra.charAt(i);
obtenerNombreArchivo(letra);
if (!nombreArchivo.equals("")){
in = getClass().getResourceAsStream(nombreArchivo);
player = Manager.createPlayer(in, "audio/x-wav");
player.prefetch();
player.start();
Thread.sleep(1000);
in = null;
player = null;
System.gc();
}
}
}
catch (Exception e) {
showException(e);
return;
}

Todo esto esta puesto en un MIDlet que implementa Runnable. Lo he probado comentando y descomentando la sentencia del recolector de basura pero es igual. Alguna idea de como resolver mi problema? trabajo en un Nokia 5130c. Les quedo muy agradecido.

Saludos
  #2 (permalink)  
Antiguo 27/07/2011, 20:37
 
Fecha de Ingreso: febrero-2010
Ubicación: Guayaquil - Ecuador
Mensajes: 350
Antigüedad: 14 años, 8 meses
Puntos: 13
Respuesta: Reproducir varios archivos de audio

He logrado un avance. En el catch agrege el control del objeto y no me sale el error de Out Of Memory, quedo asi:

catch (MediaException ex) {
if (player != null){
player.close();
player = null;
}
showException(ex);
return;
}

Si enmbargo, al reproducir por octava vez (sip... leyeron bien... por octava vez) me sale un error javax.microedition.media.MediaException. AUD. No tengo idea de que signifique. Cualquier ayuda sera bien recibida.
  #3 (permalink)  
Antiguo 27/07/2011, 21:53
 
Fecha de Ingreso: febrero-2010
Ubicación: Guayaquil - Ecuador
Mensajes: 350
Antigüedad: 14 años, 8 meses
Puntos: 13
Respuesta: Reproducir varios archivos de audio

FYI

Problema Resuelto!!!! No estaba cerrando el objeto, parece como si se me crearan tantas instancias como reproducciones hacia del objeto. Al cerrarlo y liberar memoria puedo crearlo de nuevo sin problemas. El codigo quedaria asi:

if (!nombreArchivo.equals("")){
in = getClass().getResourceAsStream(nombreArchivo);
player = Manager.createPlayer(in, "audio/x-wav");
player.prefetch();
player.start();
Thread.sleep(1000);
player.close();
System.gc();
}

Si alguien tiene una sugerencia de como mejorar al codigo, sera bien recibida.
Espero esto le sirva alguien mas con el mismo problema.

Saludos

Etiquetas: audio, reproducir
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:14.