add aftertouch. correct system reset
This commit is contained in:
parent
13fd1c60e0
commit
b0f10b7940
|
@ -188,7 +188,15 @@ void JuicySFAudioProcessor::processBlock (AudioBuffer<float>& buffer, MidiBuffer
|
|||
fluid_midi_event_set_program(midi_event, m.getChannelPressureValue());
|
||||
fluid_synth_handle_midi_event(fluidSynth, midi_event);
|
||||
delete_fluid_midi_event(midi_event);
|
||||
} else if (m.isResetAllControllers()) {
|
||||
} else if (m.isAftertouch()) {
|
||||
fluid_midi_event_t *midi_event(new_fluid_midi_event());
|
||||
fluid_midi_event_set_type(midi_event, static_cast<int>(KEY_PRESSURE));
|
||||
fluid_midi_event_set_channel(midi_event, fluidSynthModel.getChannel());
|
||||
fluid_midi_event_set_key(midi_event, m.getNoteNumber());
|
||||
fluid_midi_event_set_value(midi_event, m.getAfterTouchValue());
|
||||
fluid_synth_handle_midi_event(fluidSynth, midi_event);
|
||||
delete_fluid_midi_event(midi_event);
|
||||
} else if (m.isMetaEvent()) {
|
||||
fluid_midi_event_t *midi_event(new_fluid_midi_event());
|
||||
fluid_midi_event_set_type(midi_event, static_cast<int>(MIDI_SYSTEM_RESET));
|
||||
fluid_synth_handle_midi_event(fluidSynth, midi_event);
|
||||
|
|
|
@ -67,7 +67,8 @@ void SoundfontSynthVoice::pitchWheelMoved (int newValue) {
|
|||
}
|
||||
|
||||
void SoundfontSynthVoice::controllerMoved (int controllerNumber, int newValue) {
|
||||
Logger::outputDebugString ( juce::String::formatted("Controlled moved: %d, %d\n", controllerNumber, newValue) );
|
||||
// this seems to be "program change" event
|
||||
Logger::outputDebugString ( juce::String::formatted("Controller moved: %d, %d\n", controllerNumber, newValue) );
|
||||
}
|
||||
|
||||
void SoundfontSynthVoice::renderNextBlock (AudioBuffer<float>& outputBuffer, int startSample, int numSamples) {
|
||||
|
|
Loading…
Reference in New Issue
Block a user