Erro no meu programa q toca MIDI

Galera to com esse programa q toca midi,
mas nao to conceguindo por ele para funcionar.

Alguem poderia como q ponho isso para funcionar ?

import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
import javax.sound.midi.InvalidMidiDataException;
import javax.sound.midi.MidiSystem;
import javax.sound.midi.MidiUnavailableException;
import javax.sound.midi.Sequence;
import javax.sound.midi.Sequencer;

public class testemid
{
public static void main( String args[] )
   {
try {

        Sequence sequence = MidiSystem.getSequence(new File("f:\\flourish.mid"));


        Sequencer sequencer = MidiSystem.getSequencer(); // da erro //nessa linha, mas nao sei pq
        sequencer.open();
        sequencer.setSequence(sequence);

        // Start playing
        sequencer.start();
     } catch (MalformedURLException e) {
        System.out.println("erro 1"+ e.toString());
    } catch (IOException e) {
         System.out.println("erro 2"+ e.toString());
    } catch (MidiUnavailableException e) {
         System.out.println("erro 3"+e.toString());
    } catch (InvalidMidiDataException e) {
         System.out.println("erro 4"+ e.toString());
    }
    }
}

valeu… t+

qual erro exatamente aparece?

fiz um teste aqui, e funcionou. é o seu exemplo mas com umas modificações que fiz, segue ele aqui…

ele toca por 10 segundos e fecha o sequencer:

[code]package teste.guj;

import java.io.File;
import java.io.IOException;

import javax.sound.midi.InvalidMidiDataException;
import javax.sound.midi.MidiSystem;
import javax.sound.midi.MidiUnavailableException;
import javax.sound.midi.Sequence;
import javax.sound.midi.Sequencer;
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileFilter;

public class TesteMidi {
public static void main(String args[]) {
try {
JFileChooser chooser = new JFileChooser();
chooser.setFileFilter(new FileFilter() {
@Override
public String getDescription() {
return “midi”;
}

			@Override
			public boolean accept(File f) {
				return f.isDirectory() || f.getName().endsWith("mid");
			};
		});
		if (chooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
			Sequence sequence = MidiSystem.getSequence(chooser.getSelectedFile());
			// da erro nessa linha, mas nao sei pq
			Sequencer sequencer = MidiSystem.getSequencer();
			sequencer.open();
			sequencer.setSequence(sequence);

			// Start playing
			sequencer.start();
			Thread.sleep(10000);
			sequencer.close();
		}
	} catch (InvalidMidiDataException e) {
		e.printStackTrace();
	} catch (IOException e) {
		e.printStackTrace();
	} catch (MidiUnavailableException e) {
		e.printStackTrace();
	} catch (InterruptedException e) {
		e.printStackTrace();
	}
}

}[/code]

vc consegue tocar midi em programas do windows, como media player, por acaso?

flw

tirando esse exemplo, eu concegui tocar mp3 e wav.

valeu cara…vou fazer uns teste aqui com o seu codigo

Oi, como vc fez para executar os Wav e MP3?
Obrigado.

Para tocar WAV e MP3 de uma olhada no JMF.
http://java.sun.com/products/java-media/jmf/

Espero que ajude…
[]s