public class MidiSynthesizer extends MessageParser
voiceDescription = DualOscillatorSynthVoice.getVoiceDescription();
multiSynth = new MultiChannelSynthesizer();
final int startChannel = 0;
multiSynth.setup(synth, startChannel, NUM_CHANNELS, VOICES_PER_CHANNEL, voiceDescription);
midiSynthesizer = new MidiSynthesizer(multiSynth);
// pass MIDI bytes
midiSynthesizer.onReceive(bytes, 0, bytes.length);
See the example UseMidiKeyboard.javaConstructor and Description |
---|
MidiSynthesizer(MultiChannelSynthesizer multiSynth) |
Modifier and Type | Method and Description |
---|---|
void |
channelPressure(int channel,
int value) |
void |
controlChange(int channel,
int index,
int value) |
void |
noteOff(int channel,
int noteNumber,
int velocity) |
void |
noteOn(int channel,
int noteNumber,
int velocity) |
void |
onReceive(byte[] bytes,
int i,
int length) |
void |
pitchBend(int channel,
int bend) |
void |
programChange(int channel,
int program) |
void |
registeredParameter(int channel,
int index14,
int value14) |
nonRegisteredParameter, parse, polyphonicAftertouch, rawControlChange
public MidiSynthesizer(MultiChannelSynthesizer multiSynth)
public void controlChange(int channel, int index, int value)
controlChange
in class MessageParser
public void registeredParameter(int channel, int index14, int value14)
registeredParameter
in class MessageParser
public void programChange(int channel, int program)
programChange
in class MessageParser
public void channelPressure(int channel, int value)
channelPressure
in class MessageParser
public void noteOff(int channel, int noteNumber, int velocity)
noteOff
in class MessageParser
public void noteOn(int channel, int noteNumber, int velocity)
noteOn
in class MessageParser
public void pitchBend(int channel, int bend)
pitchBend
in class MessageParser
public void onReceive(byte[] bytes, int i, int length)