miércoles, 9 de noviembre de 2011

Música

Para mandar un tochazo de fichero de música hay que partirlo en cachitos, formar un flujo
y mandarselo al chip de audio. ¿Como? Con la clase MediaPlayer.
   MediaPlayer mediaPlayer = new MediaPlayer();
¿Que fichero tiene que reproducir?¿Como se lo digo?
Con un AssetFileDescriptor
   AssetFileDescriptor descriptor = assetManager.openFd("musiquita.ogg");
   mediaPlayer.setDataSource(

                   descriptor.getFileDescriptor(),
                   descriptor.getStartOffset(),
                   descriptor.getLength());
   mediaPlayer.prepare();

Una vez hecho todo esto ya se puede:
   reproducir el fichero =>   mediaPlayer.start();
   pausar =>                  mediaPlayer.pause();
   continuar =>               mediaPlayer.resume();
   parar =>                   mediaPlayer.stop();
   cambiar el volumen =>      mediaPlayer.setVolume(1, 1); de 1f a 0f
   
Para comprobar que se ha terminado de reproducir la canción no subscribimos así:
     mediaPlayer.setOnCompletionListener(listener);
Y si queremos comprobar como va la reproducción hacemos "polling" :D
(hacer polling tiene otras acepciones pero en este caso no tiene nada de porno)
   boolean isPlaying = mediaPlayer.isPlaying();
Finalmente para liberar recursos usaremos:
   mediaPlayer.release();
   
import android.content.res.AssetFileDescriptor;
import android.content.res.AssetManager;
import android.media.AudioManager;
import android.media.MediaPlayer;



No hay comentarios:

Publicar un comentario