Renoise 3.2 (Linux x86_64 build) running on FreeBSD 12.0:
The procedure to achieve this is the same that I outlined in this
2017 blog post. This time I was able to get the 64-bit build
to work (which is a good thing, because there will be no more 32-bit
builds going forward).
To repeat the instructions, in short: enable the FreeBSD linux binary compat
feature as per the handbook, install the linux-c7 metaport,
find or compile a version of jack1 compatible with CentOS 7 x86_64, install
that copy of jack in your /compat/linux directory, edit your $HOME/.jackdrc
(see here for an example), then renoise should work with jack sound.
I used the jack1 git master version and compiled it myself in
a CentOS 7 virtual machine.
It's annoying to do (I spent four hours on this and hit multiple roadblocks),
but works perfectly once done. With the same catch as before, no MIDI
features are available.
Posting to report that at least one person has gotten this to work.
is a "Digital DJ Mixstation" made by Stanton Magnetics.
It's a little standalone workstation unit with a "Coldfire" ARM (ARM10TDMI?)
board in it that runs Linux (2.6.14?) and a custom set of DJ software. The
unit seems to have been engineered, both hardware and software, by a company
called IVL Audio. The current equivalent
product, functionality-wise, would be something like the Pioneer XDJ-RX.
I purchased one of these at clearance prices in 2015. It is both one
of the worst and best pieces of DJ equipment I've ever used.
Worst because it's incredibly cheaply made. The control surface itself - the
buttons, knobs & sliders - require a very light touch to keep from breaking.
The mixer section of mine lasted a year before it started to bleed sound. The
computer in the device is underpowered. Even the jacks seem flimsy.
Which is a shame, because the SCS.4DJ does something truly great:
it plays two mp3 files simultaneously, through seperate outputs, with pitch
and transport control, in a small and lightweight package. I run one "deck" on
the SCS.4DJ out the headphone output and the other out the main, with both
plugged into my DJ mixer. And there it becomes one of the best: feed it good
data, use fast USB drives, handle it carefully and it'll run all night no problem.
The dj software the device runs seems to be called, appropriately, "djapp".
It uses GTK2 for its UI and runs Xfbdev(1)
to display graphics. It keeps its database in SQLite 3.x format. For it to
operate smoothly, feed it good data. I've tried both FLAC and MP3 files, and
FLAC has always caused problems. (I suspect because my USB media devices don't
have the throughput to stream that much data). I've never had any issues
with MP3 files I've encoded myself with LAME.
Maybe I'm being a little unfair with respect to the hardware. As
DJWorx noted in their
review, the jogwheels are very good. They easily make up for the lack of
resolution available with the pitch slider. And while the device always feels
like it wants to break, it has not done so yet. Just... don't press anything
I plan to write a companion to this post about Quickgrid - what it is, how it
works, and how to re-implement it using bourne shell, WINE, and parts of the
Quickgrid package. That post will come once I clean up my script.
Some of the information in this post is based on the blog post Stanton SCS.4DJ - Under The Hood
by Kris Sum at Switch Systems. The rest I gleaned myself from running strings(1)
against binaries packed in the SCS.4DJ software update. If my SCS4 ever
becomes unusable for DJing, or if I pick up a second one, I'll try to continue
Kris' line of exploration (network connectivity, SSH).
So yeah. Apologies if that rambled a bit. I don't recommend this thing to other
DJs, as it's too cheaply made and a bit too particular about its data. But if
you're a Linux/Unix person this thing is fascinating.
Renoise 3.1 (Linux x86 Build) running on FreeBSD 11:
It's been known for
that Renoise runs under the FreeBSD Linux compatibility layer. However, no-one
(to my knowledge) had gotten audio to work. With the release of FreeBSD 11 and
changes, I decided to give it a shot, and got it to work - with
- Install linux-c7 metaport.
- Procure a JACK server built for linux-c7 (find a binary or build it yourself
in a VM).
- Install the Linux JACK server in /compat/linux .
- Edit $HOME/.jackdrc so it includes the full path of the Linux JACK server.
- Run Renoise.
I used the linux-c7 meta-port
to install CentOS 7.2.1511 compatibility. At this point Renoise Linux x86 runs,
but without audio. Renoise Linux x64 didn't work, but I don't remember for what
I tried to get ALSA sound working and simply could
not. Then I tried getting Renoise (Linux) to connect to a FreeBSD native JACK
server, and that didn't work either. It turns out that JACK clients won't
connect to a JACK server built on a different operating system. So you have to
run a JACK server compiled for Linux.
I built a 32bit CentOS VM, installed the necessary development tools, compiled
the JACK server, packaged it and deployed it into my FreeBSD system's
There are a few things to be aware of when building this Linux JACK server.
First, make sure you enable the OSS driver (so it can talk to FreeBSD's OSS
devices). Second, JACK requires a memory filesystem (tmpfs(5))
mounted at /dev/shm, or at another location configured at compile-time. Make
sure to set that up. Finally be sure to compile JACK 1 and not 2; I used
Now JACK, and by extension Renoise, has to be made aware of the location of
this alternate server. The standard method for this is $HOME/.jackdrc; see
In my case, I added the line:
/compat/linux/usr/bin/jackd -r -d oss -C /dev/dsp2 -P /dev/dsp6
and that worked. dsp2 for capture, dsp6 for playback.
Unfortunately there is no MIDI support with this setup. I tried
jack_umidi, but of course
that program wouldn't talk to the JACK server compiled for Linux. Unless I can
hack a version of jack_umidi that compiles in CentOS 7, or some kind of
jack_umidi-like program that simulates an alsa midi device, then I think MIDI
is simply off the table.
I think that's everything. It's been several months since I did this, so I
may have forgotten a step. Hopefully this helps someone.