Programa compilado nao instancia player com JMF

0 respostas
R

Bom dia.
Sou iniciante em java e este é meu primeiro tópico aqui entao relevem ;D
Estou criando um player de audio utilizando o java media framework, mas acontece que na maquina do compilador ele funciona ok, mas quando eu compilo e passo para um amigo ou para uma maquina virtual que criei para testar, nao funciona.
Apos varios testes percebia que o programa nao esta instanciando o player.
Segue o código:

public class AudioPlayer implements ControllerListener {
    private Player audioPlayer = null;
    public Control controlador = null;
    private final GainControl Control;
    public AudioPlayer(URL url) throws IOException, NoPlayerException, CannotRealizeException{
        audioPlayer = Manager.createRealizedPlayer(url);
        audioPlayer.addControllerListener(this);
        Control = audioPlayer.getGainControl();
    }
}
private void selecionarActionPerformed(java.awt.event.ActionEvent evt) {                                           
        /*aqui abrimos o selecionador de arquivos, caso retorne o carregamento do arquivo
         eu passo para a variavel musica, pego o caminho na jtextfield e tento instanciar
         o player convertendo o arquivo para URL, adiciono as exessoes necessarias*/
        int carregou = selecionadorDeArquivo.showOpenDialog(this);
        if(carregou == JFileChooser.APPROVE_OPTION){
            musica = selecionadorDeArquivo.getSelectedFile();
            arquivo.setText(musica.getAbsolutePath());
            
                
                    try {
                    player = new AudioPlayer(musica.toURL());
                    } catch (IOException ex) {
                    jLabel1.setText("problema no IO");
                    Logger.getLogger(principal.class.getName()).log(Level.SEVERE, null, ex);
                    } catch (NoPlayerException ex) {
                    jLabel1.setText("NoPlayerException");
                    Logger.getLogger(principal.class.getName()).log(Level.SEVERE, null, ex);
                    } catch (CannotRealizeException ex) {
                    jLabel1.setText("CannotRealizeException");
                    Logger.getLogger(principal.class.getName()).log(Level.SEVERE, null, ex);
                    }
           
        }
}

ai estao somente as partes relevantes ao problema para o codigo nao ficar extenso.
quando rodo ele pela maquina virtual, e instancio o AudioPlayer ele lança cannotrealizeexception
se alguem puder me dar uma luz fico agradecido ;D

Criado 19 de outubro de 2010
Respostas 0
Participantes 1