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.
keller
#6
Para tocar WAV e MP3 de uma olhada no JMF.
http://java.sun.com/products/java-media/jmf/
Espero que ajude…
[]s