2017-02-15 3 views
0

J'essaie de jouer en direct le flux audio mp3 par lecteur multimédia. Le problème est que lorsque j'utilise l'URL, il bloque le thread UI pendant un certain temps, alors cela fonctionne très bien. Mais j'ai besoin qu'il joue aussi la chanson avec le tampon.lecteur multimédia jouer la chanson avec le tampon

Merci à l'avance.S'il vous plaît aider.

try { 
      audioPlayer = new MediaPlayer(); 
      audioPlayer.setOnBufferingUpdateListener(this); 
      audioPlayer.setOnCompletionListener(this); 
      audioPlayer.setAudioStreamType(useFrontSpeaker ? AudioManager.STREAM_VOICE_CALL : AudioManager.STREAM_MUSIC); 

     try { 
      audioPlayer.reset(); 
      audioPlayer.setDataSource(mSongDetail.getPath()); 
      audioPlayer.prepare(); 
     } catch (IllegalArgumentException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (SecurityException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (IllegalStateException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 

     catch (IOException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     audioDuration = audioPlayer.getDuration(); 
     audioPlayer.start(); 

     startProgressTimer(); 
    } catch (Exception e) { 
     if (audioPlayer != null) { 
      audioPlayer.reset(); 
      audioPlayer.release(); 
      audioPlayer = null; 
      isPaused = false; 
      MusicPreferance.playingSongDetail = null; 
     } 
     return false; 
    } 
+0

Post questions liées au programme ici .. pas de questions générales ... Postez votre code ... quelque chose que vous avez essayé ?? – Akshay

+0

J'ai ajouté le code – priyanka

Répondre

0

Essayez d'utiliser audioPlayer.prepareAsync() + asyncHandler pour elle, ou utilisez un thread séparé.