SFZQ is a CLAP plugin for Linux that plays sample-based instruments in SFZ and SF2 formats.
Requires Cairo.
amp_veltrack, ampeg_delay, ampeg_start, ampeg_attack, ampeg_hold, ampeg_decay, ampeg_sustain, ampeg_release, ampeg_vel2delay, ampeg_vel2start, ampeg_vel2attack, ampeg_vel2hold, ampeg_vel2decay, ampeg_vel2sustain, ampeg_vel2release, bend_up, bend_down, default_path, end, group, key, lokey, hikey, loop_start, loop_end, loop_mode, lorand, hirand, lovel, hival, off_by, offset, pan, pitch_keycenter, pitch_keytrack, sample, transpose, trigger, tune, volume.
\<control>, \<global>, \<group>, \<region>.
You can create a settings file at "~/.config/sfzq/settings" (or "$XDG_CONFIG_HOME/sfzq/settings" if that's your jam), which can include these settings:
true
or false
.
Alternate ("microtonal") tunings are supported in the Scala (".scl") file format (thanks to the Surge Tuning Library).
At build time, you will need the headers for CLAP, Cairo, and X11. If your distro's package manager doesn't have a package for the CLAP headers (and you're not using Nix), you can get the headers, and tell the Makefile where to find them by creating a "Makefile.local" file with a line like CFLAGS += -I/path/to/clap/include
. Other than that, you should be able to build it just by typing make
.
SFZQ is built on three independent components, each of which could be extracted and used in other projects:
SFZPlayer: reads and plays SFZ and SF2 files
CLAPFramework: a simple framework for CLAP plugins
CairoWidgets: a widget library using Cairo to draw