Hi
Ich verwende derzeit dies hier zum abspielen von sounds
nun möchte ich diesen Midi Sound in eine wav schreiben bin aber derzeit noch bisschen ratlos 
Habe mir diese Seite finden können aber....
http://java.sun.com/docs/books/tutorial/sound/converters.html
komme dennoch nicht weiter, ich muss irgendwie die "sequence" raus geben um sie als wav zu speichern bin aber wie vernagelt und sehe den Wald vor lauter Bäumen nicht :-(
Ich verwende derzeit dies hier zum abspielen von sounds
Code:
package sound.model;
import java.util.ArrayList;
import javax.sound.midi.MidiEvent;
import javax.sound.midi.MidiSystem;
import javax.sound.midi.Receiver;
import javax.sound.midi.Sequence;
import javax.sound.midi.Sequencer;
import javax.sound.midi.ShortMessage;
import javax.sound.midi.Synthesizer;
import javax.sound.midi.Track;
import javax.sound.midi.Transmitter;
import main.model.Volume;
public class SoundGenerator {
private final int PPQS = 16;
private final int STAKKATO = 4;
private Volume volumeclass;
private long currentTick = 0;
// Sequencer und Synthesizer initialisieren
private Sequencer sequencer = null;
private Transmitter transmitter = null;
private Synthesizer synthesizer = null;
private Receiver receiver = null;
private int tone[][] = null;
private ShortMessage message = null;
private Sequence sequence = null;
private Track track = null;
public void midiSound(ArrayList<Double> doubleList) throws Exception {
// Partitur {{Tonhoehe, DauerInViertelNoten, AnzahlWdh},...}
int index = (doubleList.size());
tone = new int[index][3];
System.out.println(index);
for (int i = 0; i < (index); i++) {
tone[i][0] = (doubleList.get(i).intValue() - 50 );
tone[i][1] = 1;
tone[i][2] = 1;
}
doubleList = null;
sequence = new Sequence(Sequence.PPQ, PPQS);
track = sequence.createTrack();
// Kanal 0 auf "EnsembleStrings" umschalten
message = new ShortMessage();
message.setMessage(ShortMessage.PROGRAM_CHANGE, 0, 48, 0);
track.add(new MidiEvent(message, currentTick));
// Partiturdaten hinzufügen
volumeclass = Volume.getInstance();
for (int i = 0; i < tone.length; ++i) {
for (int j = 0; j < tone[i][2]; ++j) { // Anzahl Wdh. je Note
message = new ShortMessage();
message.setMessage(ShortMessage.NOTE_ON, 0, tone[i][0], volumeclass.getVolume());
track.add(new MidiEvent(message, currentTick));
currentTick += PPQS * tone[i][1] - STAKKATO;
message = new ShortMessage();
message.setMessage(ShortMessage.NOTE_OFF, 0, tone[i][0], 0);
track.add(new MidiEvent(message, currentTick));
currentTick += STAKKATO;
}
}
// Sequencer und Synthesizer initialisieren
sequencer = MidiSystem.getSequencer();
transmitter = sequencer.getTransmitter();
synthesizer = MidiSystem.getSynthesizer();
receiver = synthesizer.getReceiver();
// Beide öffnen und verbinden
synthesizer.open();
sequencer.open();
transmitter.setReceiver(receiver);
// Sequence abspielen
sequencer.setSequence(sequence);
sequencer.setTempoInBPM(145);
sequencer.start();
int count = 0;
while (true) {
System.out.println(count);
count++;
try {
Thread.sleep(400);
} catch (Exception e) {
// nothing
}
if (!sequencer.isRunning()) {
break;
}
}
// Sequencer anhalten und Geräte schließen
sequencer.stop();
sequencer.close();
synthesizer.close();
}
}

Habe mir diese Seite finden können aber....
http://java.sun.com/docs/books/tutorial/sound/converters.html
komme dennoch nicht weiter, ich muss irgendwie die "sequence" raus geben um sie als wav zu speichern bin aber wie vernagelt und sehe den Wald vor lauter Bäumen nicht :-(