The Box of No Return

summary

The Box of No Return is a Linux-based musical synthesizer platform, suitable for live musicianship, designed to handle multiple patches with enormous demands, and switch between them with zero delay and zero cutout.  If you sit in your home studio and use single SoundFonts with a laptop and simple GUI, you don't need this.  If you play live, and/or if you want to pile on the tone generators and filters in order to experience the unyielding power of the musical harmonic roar, a full implementation of the BNR may suit you well.  There are obviously middle grounds too ☺, and there are articles here to help in general. As of 2021-07-05, there are also online discussions here at Github.

questions, contributions, discussion, the code

The project and its code are here.  There are SF2 SoundFonts involved in the current build which are downloadable here; these are conversions of the Sonatina Symphonic Orchestra, original SFZs being here. Friend Bruce Schultz recently pointed out that two SF2s are missing, and these are now here.

more articles

are right here.  There is also a Facebook group over here.

why this project and its benefits

From the beginning, the BNR was built out of a need to host patches of maximum, profound and terrible, tonal content. If you find yourself reducing the profundity of your patches because your machine won't do better, this project may be very good for you, especially if you play live. Current patches include one with three simultaneous Yoshimis, another with several simultaneous large FluidSynth soundfonts, a third called "flowbells", and mixtures. 

Surprisingly enough, the current BNR is quite a lot more stable than its predecessors.  If one of its soft servers gets overloaded (say, due to its musician having a really good day), it cuts out without static or other noise, and recovers, and comes back just as quietly.  Obviously we engineer against such events, but it is wonderful to have the setup so much more forgiving.

The current known boxes running with this code, are an eight-core 4GHz machine with 8G RAM, and a much newer 3.3GHz quad-core box, also with 8G. I can definitely recommend quad, but wouldn't go lower than 3GHz or so, and probably Intel i5, not i3. In an earlier iteration, the 8-core used the conventional single JACK server; but less than one-quarter of its CPU capacity was being used, while JACK reported that 75% of its capacity was being used. In 2015 began an effort, now successful, to use multiple JACK processes together in one box, and this is the rebuild of the BNR with MultiJACK at its core.

There are quite a few people using tools like NetJACK to increase JACK capacity with multiple boxes, or at least multiple motherboards. But if you value portability, if you value space, and/or if you are a gigging musician, a fragile or heavy (one, the other, or both; probably not neither) multi-motherboard construct is not preferable. Most users of Linux-hardware synths limit themselves as a result of what one JACK server can do, and other platforms limit analogously; here we have an effort to blow the door open just a bit more.

Many prayers granted, enormous help from the Linux Audio community, and much study, work, and trial and error, has gone into making this happen reliably and well.  My gratitude to all!