Ola. cara sou meio novo em java mais porem acho que posso dar uma luz no seu problema pq ja passei por issu. porem eu estou com um outro problema que talvez algum possa me ajudar…
bom primeiro vamor resolver o seu problema.
estou utilizando o jLayer 1.0.1
MP3.java
importjava.io.BufferedInputStream;importjava.io.File;importjava.io.FileInputStream;importjava.util.logging.Level;importjava.util.logging.Logger;importjavazoom.jl.decoder.JavaLayerException;importjavazoom.jl.player.Player;publicclassMP3extendsThread{// Objeto para nosso arquivo MP3 a ser tocadoprivateFilemp3;// Objeto Player da biblioteca jLayer. Ele tocará o arquivo MP3privatePlayerplayer;publicstaticbooleanmusicaAtiva=false;publicMP3(Filemp3){this.mp3=mp3;}@Overridepublicvoidrun(){try{FileInputStreamfis=newFileInputStream(mp3);BufferedInputStreambis=newBufferedInputStream(fis);this.player=newPlayer(bis);//System.out.println("Tocando!");musicaAtiva=true;this.player.play();//System.out.println("Terminado!");musicaAtiva=false;}catch(Exceptione){System.out.println("Problema ao tocar a música: "+mp3);//e.printStackTrace();}}}
e para chamar esta aplicação vc utiliza da seguinte forma:
o meu problema e que eu nao consigo dar um Stop ou pause na musica. mais pelo menos assim ele toca a musica e continua a aplicação.
A
alex.taru
voce tem que colocar uma Thread para ela executar em segundo plano
tipo assim
[code] public void playMp3(final boolean valor) {
try {
\\aqui e o local onde vc quer que comece a executar
new Thread() {
public void run() {
try {
FileInputStream fis = new FileInputStream(mp3);
BufferedInputStream bis = new BufferedInputStream(fis);
Player player = new Player(bis);
if(valor == false){
player.play();