Android jouer MP3 externe: erreur — MediaPlayer démarrer appelé dans l'état 1

Je vais avoir du mal à jouer un externe fichier MP3 sur Android. Je suis en utilisant le code suivant:

MediaPlayer player = new MediaPlayer();
try {
    BufferedInputStream bis = new BufferedInputStream(new java.net.URL(url).openStream());
    FileOutputStream fos = new FileOutputStream(Environment.getExternalStorageDirectory().getPath() + "/forvo_temp.mp3");
    BufferedOutputStream bos = new BufferedOutputStream(fos,1024);
    byte [] data = new byte[1024];

    int x=0;
    while((x=bis.read(data,0,1024))>=0){
        bos.write(data,0,x);               
    }
    player.reset();
    player.start();

} catch (Exception e) {
    e.printStackTrace();
}

url est la chaîne où le fichier externe est. Je dois avoir les droits d'écriture sur la carte SD (WRITE_EXTERNAL_STORAGE).

Sur le debug, je vois:

E MediaPlayer start called in state 1
E MediaPlayer error (-38, 0)
E MediaPlayer Error (-38,0)

Quel peut être le problème?

OriginalL'auteur Keelan | 2013-05-12