gitextract_9o1ns6zt/ ├── .clang-format ├── .gitignore ├── CMakeLists.txt ├── CONTRIBUTING.md ├── COPYING ├── HISTORY.md ├── LICENSE.md ├── README.md ├── apps/ │ ├── CMakeLists.txt │ └── main.cpp ├── bitbucket-pipelines.yml ├── docs/ │ └── LIBRARY.md ├── include/ │ ├── sushi/ │ │ ├── compile_time_settings.h │ │ ├── constants.h │ │ ├── control_interface.h │ │ ├── control_notifications.h │ │ ├── coreaudio_devices_dump.h │ │ ├── elk_sentry_log_sink.h │ │ ├── factory_interface.h │ │ ├── offline_factory.h │ │ ├── options.h │ │ ├── parameter_dump.h │ │ ├── portaudio_devices_dump.h │ │ ├── reactive_factory.h │ │ ├── rt_controller.h │ │ ├── sample_buffer.h │ │ ├── standalone_factory.h │ │ ├── sushi.h │ │ ├── sushi_time.h │ │ ├── terminal_utilities.h │ │ ├── types.h │ │ └── utils.h │ └── version.h.in ├── misc/ │ ├── .gitkeep │ ├── README.md │ └── config_files/ │ ├── arp_peakmeter_osc_broadcast.json │ ├── config_play_arp_link_midi_out.json │ ├── cv_lfo.json │ ├── cv_to_cutoff.json │ ├── cv_to_synth.json │ ├── empty.json │ ├── freeverb_aux.json │ ├── fx.json │ ├── multi_track.json │ ├── multichannel_plugin.json │ ├── play_arp_mda_link.json │ ├── play_brickworks_fx.json │ ├── play_brickworks_synth.json │ ├── play_cv_arp.json │ ├── play_lv2.json │ ├── play_lv2_jx10.json │ ├── play_master_gain.json │ ├── play_vst2.json │ ├── play_vst3.json │ ├── play_wav_streamer.json │ ├── prepost_tracks.json │ ├── rt_midi.json │ ├── send_return_seq.json │ └── vst_8_ch.json ├── rpc_interface/ │ ├── CMakeLists.txt │ ├── include/ │ │ └── sushi_rpc/ │ │ └── grpc_server.h │ └── src/ │ ├── async_service_call_data.cpp │ ├── async_service_call_data.h │ ├── control_service.cpp │ ├── control_service.h │ └── grpc_server.cpp ├── src/ │ ├── audio_frontends/ │ │ ├── apple_coreaudio/ │ │ │ ├── apple_coreaudio_device.h │ │ │ ├── apple_coreaudio_device.mm │ │ │ ├── apple_coreaudio_object.cpp │ │ │ ├── apple_coreaudio_object.h │ │ │ ├── apple_coreaudio_system_object.h │ │ │ ├── apple_coreaudio_utils.cpp │ │ │ └── apple_coreaudio_utils.h │ │ ├── apple_coreaudio_frontend.cpp │ │ ├── apple_coreaudio_frontend.h │ │ ├── audio_frontend_internals.h │ │ ├── base_audio_frontend.cpp │ │ ├── base_audio_frontend.h │ │ ├── coreaudio_devices_dump.cpp │ │ ├── jack_frontend.cpp │ │ ├── jack_frontend.h │ │ ├── offline_frontend.cpp │ │ ├── offline_frontend.h │ │ ├── portaudio_devices_dump.cpp │ │ ├── portaudio_frontend.cpp │ │ ├── portaudio_frontend.h │ │ ├── reactive_frontend.cpp │ │ ├── reactive_frontend.h │ │ ├── xenomai_raspa_frontend.cpp │ │ └── xenomai_raspa_frontend.h │ ├── concrete_sushi.cpp │ ├── concrete_sushi.h │ ├── control_frontends/ │ │ ├── alsa_midi_frontend.cpp │ │ ├── alsa_midi_frontend.h │ │ ├── base_control_frontend.cpp │ │ ├── base_control_frontend.h │ │ ├── base_midi_frontend.h │ │ ├── osc_frontend.cpp │ │ ├── osc_frontend.h │ │ ├── osc_utils.h │ │ ├── oscpack_osc_messenger.cpp │ │ ├── oscpack_osc_messenger.h │ │ ├── reactive_midi_frontend.cpp │ │ ├── reactive_midi_frontend.h │ │ ├── rt_midi_frontend.cpp │ │ └── rt_midi_frontend.h │ ├── dsp_library/ │ │ ├── biquad_filter.cpp │ │ ├── biquad_filter.h │ │ ├── envelopes.h │ │ ├── master_limiter.h │ │ ├── sample_wrapper.h │ │ └── value_smoother.h │ ├── engine/ │ │ ├── audio_engine.cpp │ │ ├── audio_engine.h │ │ ├── audio_graph.cpp │ │ ├── audio_graph.h │ │ ├── base_engine.h │ │ ├── base_event_dispatcher.h │ │ ├── base_processor_container.h │ │ ├── connection_storage.h │ │ ├── controller/ │ │ │ ├── audio_graph_controller.cpp │ │ │ ├── audio_graph_controller.h │ │ │ ├── audio_routing_controller.cpp │ │ │ ├── audio_routing_controller.h │ │ │ ├── completion_sender.h │ │ │ ├── controller.cpp │ │ │ ├── controller.h │ │ │ ├── controller_common.h │ │ │ ├── cv_gate_controller.cpp │ │ │ ├── cv_gate_controller.h │ │ │ ├── keyboard_controller.cpp │ │ │ ├── keyboard_controller.h │ │ │ ├── midi_controller.cpp │ │ │ ├── midi_controller.h │ │ │ ├── osc_controller.cpp │ │ │ ├── osc_controller.h │ │ │ ├── parameter_controller.cpp │ │ │ ├── parameter_controller.h │ │ │ ├── program_controller.cpp │ │ │ ├── program_controller.h │ │ │ ├── real_time_controller.cpp │ │ │ ├── real_time_controller.h │ │ │ ├── session_controller.cpp │ │ │ ├── session_controller.h │ │ │ ├── system_controller.cpp │ │ │ ├── system_controller.h │ │ │ ├── timing_controller.cpp │ │ │ ├── timing_controller.h │ │ │ ├── transport_controller.cpp │ │ │ └── transport_controller.h │ │ ├── event_dispatcher.cpp │ │ ├── event_dispatcher.h │ │ ├── event_timer.cpp │ │ ├── event_timer.h │ │ ├── host_control.h │ │ ├── json_configurator.cpp │ │ ├── json_configurator.h │ │ ├── json_schemas/ │ │ │ ├── cv_gate_schema.json │ │ │ ├── events_schema.json │ │ │ ├── host_config_schema.json │ │ │ ├── midi_schema.json │ │ │ ├── osc_schema.json │ │ │ ├── state_schema.json │ │ │ └── tracks_schema.json │ │ ├── link_dummy.h │ │ ├── midi_dispatcher.cpp │ │ ├── midi_dispatcher.h │ │ ├── midi_receiver.h │ │ ├── parameter_manager.cpp │ │ ├── parameter_manager.h │ │ ├── plugin_library.cpp │ │ ├── plugin_library.h │ │ ├── processor_container.cpp │ │ ├── processor_container.h │ │ ├── receiver.cpp │ │ ├── receiver.h │ │ ├── track.cpp │ │ ├── track.h │ │ ├── transport.cpp │ │ └── transport.h │ ├── factories/ │ │ ├── base_factory.cpp │ │ ├── base_factory.h │ │ ├── offline_factory.cpp │ │ ├── offline_factory_implementation.cpp │ │ ├── offline_factory_implementation.h │ │ ├── reactive_factory.cpp │ │ ├── reactive_factory_implementation.cpp │ │ ├── reactive_factory_implementation.h │ │ ├── standalone_factory.cpp │ │ ├── standalone_factory_implementation.cpp │ │ └── standalone_factory_implementation.h │ ├── library/ │ │ ├── base_performance_timer.h │ │ ├── base_processor_factory.h │ │ ├── connection_types.h │ │ ├── event.cpp │ │ ├── event.h │ │ ├── event_interface.h │ │ ├── fixed_stack.h │ │ ├── id_generator.h │ │ ├── internal_plugin.cpp │ │ ├── internal_plugin.h │ │ ├── internal_processor_factory.cpp │ │ ├── internal_processor_factory.h │ │ ├── lv2/ │ │ │ ├── lv2_control.cpp │ │ │ ├── lv2_control.h │ │ │ ├── lv2_features.cpp │ │ │ ├── lv2_features.h │ │ │ ├── lv2_host_nodes.h │ │ │ ├── lv2_model.cpp │ │ │ ├── lv2_model.h │ │ │ ├── lv2_port.cpp │ │ │ ├── lv2_port.h │ │ │ ├── lv2_processor_factory.cpp │ │ │ ├── lv2_processor_factory.h │ │ │ ├── lv2_state.cpp │ │ │ ├── lv2_state.h │ │ │ ├── lv2_worker.cpp │ │ │ ├── lv2_worker.h │ │ │ ├── lv2_wrapper.cpp │ │ │ └── lv2_wrapper.h │ │ ├── midi_decoder.cpp │ │ ├── midi_decoder.h │ │ ├── midi_encoder.cpp │ │ ├── midi_encoder.h │ │ ├── parameter_dump.cpp │ │ ├── performance_timer.cpp │ │ ├── performance_timer.h │ │ ├── plugin_parameters.h │ │ ├── plugin_registry.cpp │ │ ├── plugin_registry.h │ │ ├── processor.cpp │ │ ├── processor.h │ │ ├── processor_state.cpp │ │ ├── processor_state.h │ │ ├── rt_event.h │ │ ├── rt_event_fifo.h │ │ ├── rt_event_pipe.h │ │ ├── simple_fifo.h │ │ ├── spinlock.h │ │ ├── synchronised_fifo.h │ │ ├── vst2x/ │ │ │ ├── vst2x_host_callback.cpp │ │ │ ├── vst2x_host_callback.h │ │ │ ├── vst2x_midi_event_fifo.h │ │ │ ├── vst2x_plugin_loader.cpp │ │ │ ├── vst2x_plugin_loader.h │ │ │ ├── vst2x_processor_factory.cpp │ │ │ ├── vst2x_processor_factory.h │ │ │ ├── vst2x_wrapper.cpp │ │ │ └── vst2x_wrapper.h │ │ └── vst3x/ │ │ ├── vst3x_file_utils.cpp │ │ ├── vst3x_file_utils.h │ │ ├── vst3x_host_app.cpp │ │ ├── vst3x_host_app.h │ │ ├── vst3x_processor_factory.cpp │ │ ├── vst3x_processor_factory.h │ │ ├── vst3x_utils.cpp │ │ ├── vst3x_utils.h │ │ ├── vst3x_wrapper.cpp │ │ └── vst3x_wrapper.h │ ├── plugins/ │ │ ├── arpeggiator_plugin.cpp │ │ ├── arpeggiator_plugin.h │ │ ├── brickworks/ │ │ │ ├── bitcrusher_plugin.cpp │ │ │ ├── bitcrusher_plugin.h │ │ │ ├── cab_sim_plugin.cpp │ │ │ ├── cab_sim_plugin.h │ │ │ ├── chorus_plugin.cpp │ │ │ ├── chorus_plugin.h │ │ │ ├── clip_plugin.cpp │ │ │ ├── clip_plugin.h │ │ │ ├── combdelay_plugin.cpp │ │ │ ├── combdelay_plugin.h │ │ │ ├── compressor_plugin.cpp │ │ │ ├── compressor_plugin.h │ │ │ ├── dist_plugin.cpp │ │ │ ├── dist_plugin.h │ │ │ ├── drive_plugin.cpp │ │ │ ├── drive_plugin.h │ │ │ ├── eq3band_plugin.cpp │ │ │ ├── eq3band_plugin.h │ │ │ ├── flanger_plugin.cpp │ │ │ ├── flanger_plugin.h │ │ │ ├── fuzz_plugin.cpp │ │ │ ├── fuzz_plugin.h │ │ │ ├── highpass_plugin.cpp │ │ │ ├── highpass_plugin.h │ │ │ ├── multi_filter_plugin.cpp │ │ │ ├── multi_filter_plugin.h │ │ │ ├── noise_gate_plugin.cpp │ │ │ ├── noise_gate_plugin.h │ │ │ ├── notch_plugin.cpp │ │ │ ├── notch_plugin.h │ │ │ ├── phaser_plugin.cpp │ │ │ ├── phaser_plugin.h │ │ │ ├── ring_mod_plugin.cpp │ │ │ ├── ring_mod_plugin.h │ │ │ ├── saturation_plugin.cpp │ │ │ ├── saturation_plugin.h │ │ │ ├── simple_synth_plugin.cpp │ │ │ ├── simple_synth_plugin.h │ │ │ ├── tremolo_plugin.cpp │ │ │ ├── tremolo_plugin.h │ │ │ ├── vibrato_plugin.cpp │ │ │ ├── vibrato_plugin.h │ │ │ ├── wah_plugin.cpp │ │ │ └── wah_plugin.h │ │ ├── control_to_cv_plugin.cpp │ │ ├── control_to_cv_plugin.h │ │ ├── cv_to_control_plugin.cpp │ │ ├── cv_to_control_plugin.h │ │ ├── equalizer_plugin.cpp │ │ ├── equalizer_plugin.h │ │ ├── freeverb_plugin.cpp │ │ ├── freeverb_plugin.h │ │ ├── gain_plugin.cpp │ │ ├── gain_plugin.h │ │ ├── lfo_plugin.cpp │ │ ├── lfo_plugin.h │ │ ├── mono_summing_plugin.cpp │ │ ├── mono_summing_plugin.h │ │ ├── passthrough_plugin.cpp │ │ ├── passthrough_plugin.h │ │ ├── peak_meter_plugin.cpp │ │ ├── peak_meter_plugin.h │ │ ├── return_plugin.cpp │ │ ├── return_plugin.h │ │ ├── sample_delay_plugin.cpp │ │ ├── sample_delay_plugin.h │ │ ├── sample_player_plugin.cpp │ │ ├── sample_player_plugin.h │ │ ├── sample_player_voice.cpp │ │ ├── sample_player_voice.h │ │ ├── send_plugin.cpp │ │ ├── send_plugin.h │ │ ├── send_return_factory.cpp │ │ ├── send_return_factory.h │ │ ├── step_sequencer_plugin.cpp │ │ ├── step_sequencer_plugin.h │ │ ├── stereo_mixer_plugin.cpp │ │ ├── stereo_mixer_plugin.h │ │ ├── transposer_plugin.cpp │ │ ├── transposer_plugin.h │ │ ├── wav_streamer_plugin.cpp │ │ ├── wav_streamer_plugin.h │ │ ├── wav_writer_plugin.cpp │ │ └── wav_writer_plugin.h │ └── utils.cpp ├── test/ │ ├── CMakeLists.txt │ ├── data/ │ │ ├── config.json │ │ ├── config_single_stereo.json │ │ └── master_limiter_test_data.h │ ├── resources/ │ │ └── Info.plist.in │ └── unittests/ │ ├── audio_frontends/ │ │ ├── apple_coreaudio_frontend_test.cpp │ │ ├── jack_frontend_test.cpp │ │ ├── offline_frontend_test.cpp │ │ └── portaudio_frontend_test.cpp │ ├── control_frontends/ │ │ ├── osc_frontend_test.cpp │ │ └── oscpack_osc_messenger_test.cpp │ ├── dsp_library/ │ │ ├── envelope_test.cpp │ │ ├── master_limiter_test.cpp │ │ ├── sample_wrapper_test.cpp │ │ └── value_smoother_test.cpp │ ├── engine/ │ │ ├── audio_graph_test.cpp │ │ ├── controller_test.cpp │ │ ├── controllers/ │ │ │ ├── audio_graph_controller_test.cpp │ │ │ ├── audio_routing_controller_test.cpp │ │ │ ├── midi_controller_test.cpp │ │ │ ├── osc_controller_test.cpp │ │ │ ├── reactive_controller_test.cpp │ │ │ └── session_controller_test.cpp │ │ ├── engine_test.cpp │ │ ├── event_dispatcher_test.cpp │ │ ├── event_timer_test.cpp │ │ ├── factories/ │ │ │ └── factories_test.cpp │ │ ├── json_configurator_test.cpp │ │ ├── midi_dispatcher_test.cpp │ │ ├── parameter_manager_test.cpp │ │ ├── plugin_library_test.cpp │ │ ├── processor_container_test.cpp │ │ ├── receiver_test.cpp │ │ ├── track_test.cpp │ │ └── transport_test.cpp │ ├── library/ │ │ ├── event_test.cpp │ │ ├── fixed_stack_test.cpp │ │ ├── id_generator_test.cpp │ │ ├── internal_plugin_test.cpp │ │ ├── lv2_wrapper_test.cpp │ │ ├── midi_decoder_test.cpp │ │ ├── midi_encoder_test.cpp │ │ ├── parameter_dump_test.cpp │ │ ├── performance_timer_test.cpp │ │ ├── plugin_parameters_test.cpp │ │ ├── processor_test.cpp │ │ ├── rt_event_test.cpp │ │ ├── sample_buffer_test.cpp │ │ ├── simple_fifo_test.cpp │ │ ├── vst2x_midi_event_fifo_test.cpp │ │ ├── vst2x_plugin_loading_test.cpp │ │ ├── vst2x_wrapper_test.cpp │ │ └── vst3x_wrapper_test.cpp │ ├── plugins/ │ │ ├── arpeggiator_plugin_test.cpp │ │ ├── brickworks_simple_synth_test.cpp │ │ ├── control_to_cv_plugin_test.cpp │ │ ├── cv_to_control_plugin_test.cpp │ │ ├── external_plugins_test.cpp │ │ ├── plugins_test.cpp │ │ ├── sample_player_plugin_test.cpp │ │ ├── send_return_test.cpp │ │ ├── step_sequencer_test.cpp │ │ └── wav_streamer_plugin_test.cpp │ ├── sample_test.cpp │ └── test_utils/ │ ├── apple_coreaudio_mockup.cpp │ ├── apple_coreaudio_mockup.h │ ├── audio_frontend_mockup.h │ ├── audio_graph_accessor.h │ ├── control_mockup.h │ ├── dummy_processor.h │ ├── engine_mockup.h │ ├── event_dispatcher_accessor.h │ ├── host_control_mockup.h │ ├── jack_mockup.cpp │ ├── meta_schema_v4.json │ ├── mock_event_dispatcher.h │ ├── mock_midi_frontend.h │ ├── mock_osc_interface.h │ ├── mock_oscpack.h │ ├── mock_processor_container.h │ ├── mock_sushi.h │ ├── plugin_accessors.h │ ├── portaudio_mockup.cpp │ ├── portaudio_mockup.h │ ├── test_utils.h │ ├── track_accessor.h │ ├── vst2_test_plugin.cpp │ ├── vst2_test_plugin.def │ ├── vst2_test_plugin.h │ ├── vst3_test_plugin.cpp │ └── vst3_test_plugin.h ├── third-party/ │ ├── .gitkeep │ ├── CMakeLists.txt │ ├── fifo/ │ │ ├── CMakeLists.txt │ │ └── include/ │ │ └── fifo/ │ │ └── circularfifo_memory_relaxed_aquire_release.h │ ├── lv2_host/ │ │ ├── CMakeLists.txt │ │ ├── include/ │ │ │ └── lv2_host/ │ │ │ ├── lv2_evbuf.h │ │ │ └── lv2_symap.h │ │ └── src/ │ │ ├── lv2_evbuf.cpp │ │ └── lv2_symap.cpp │ ├── optionparser/ │ │ ├── Makefile │ │ ├── example.cpp │ │ ├── example_arg.cc │ │ ├── optionparser.h │ │ ├── printUsage.h │ │ ├── testodr1.cc │ │ ├── testodr2.cc │ │ ├── testparse.cpp │ │ └── testprintusage.cpp │ └── vst3sdk.windows.patch ├── triplets/ │ └── win-custom-x86-64.cmake └── vcpkg.json