An open source GrooveBox (mixer/effects/looper/sequencer) written in Java for the Jack realtime sound system. (https://jackaudio.org/)
Use the built-in Drums, Synths and Loopers and/or hook-up your own guitars, mics and synths. All audio channels have separately controlled internal Gain, EQ, Hi/Lo Cut, Chorus, Overdrive, Reverb, Delay, Compression, Stereo panning, Automation, a Spectrometer, an IR CabSim and a pair of LFOs. Loops may be synchronized for different song lengths and structures. A MIDI sequencer and feature-rich editor is provided consisting of 4 drum tracks and unlimited piano rolls. The sequencer generates chords, arpeggios and bass lines from ChordPro files. The sample player holds 8 loops/one-shots and 32 drum samples (8 samples per drum track). Melodic tracks may be played through external gear or through TacoSynth, a built-in subtractive synthesizer with the regular gamut of wave shapes, envelopes, resonant filters, detuning/harmonics and presets. Also included: a song editor, sheet music and chord views, guitar tuner, RMS/spectrogram, lossless audio recording and MIDI routing/clock support. The following controllers are integrated in the live system: Akai MPKmini, Korg NanoPad2 and Kontrol2, Line6 FBV Shortboard, Jamstik MIDI guitar, an old Arturia BeatStep, a Behringer Crave synth and their UMC1820 digital interface. Performance material is stored in a separate project: https://github.com/jeffmasty/Setlist Some live looping: https://www.youtube.com/user/judahmu/videos
- Java 21 or newer
- Maven 3.8+
- Jack Audio
- a2j
- FluidSynth
- songs/samples/presets https://github.com/jeffmasty/Setlist
Recommended (build from the aggregator meta-zone root):
-
Clone the aggregator and enter it:
git clone https://github.com/jeffmasty/meta-zone.git
cd meta-zone -
Build the
JudahZonemodule (produces the shaded jar and copies the finalJudahZone.jarto theJudahZoneproject root):mvn -pl :JudahZone -am -DskipTests clean package
Alternative: build only inside the
JudahZonemodule (works if../meta-zone/pom.xmlis present):cd JudahZone
mvn -DskipTests clean package
Artifacts
- Slim jar in module target:
JudahZone/target/(e.g.JudahZone-<version>.jar) - Shaded jar in module target:
JudahZone/target/(e.g.JudahZone-<version>-shaded.jar) - Copied full jar at module root:
JudahZone/JudahZone.jar(ready to run)
From the JudahZone module directory (or point to the copied JudahZone.jar):
cd JudahZone
java -jar JudahZone.jar
- JACK server must be up and running.
- The app launches
a2jmididand Fluidsynth. - App ties with Setlist project (https://github.com/jeffmasty/Setlist)
It defines guitar, mic, bassSynth ports and uses them in Songs Contains DrumKits, impulse responses, chords, sheet music and samples - Additional modularization coming soon...
JNAJack (https://github.com/jaudiolibs/jnajack) provides crucial Java bindings to the Jack sound system without which this project wouldn't be possible.
Delay, MonoFilter, FreeVerb, Chorus and the 'Smith' OverDrive gratefully adapted from Neil C Smith's JAudioLibs. Additional Overdrive algorithms ported from JUCEGuitarAmpBasic.
Compressor ported from Rakarrack.
Filters/EQ ported from JackIIR.
Using TarsosDSP for FFT, audio file I/O and guitar tuner.
TacoSynth created by combining Jack-Oscillator with MusicSynthesizer.
SongPro.org adapted to process ChordPro files.
Racman sequence provided by ybalcanci


