Awesome
tida1vm
A complete Tidal musical live coding and audio streaming environment inside Docker
Getting started
Branches for each TidalCycles version
Currently, there's a branch for:
TidalCycles 0.6 + MIDI
TidalCycles 0.7 + MIDI
TidalCycles 0.7 + Dirt
TidalCycles 0.8 + MIDI
TidalCycles 0.8 + MIDI (Volca Beats + Volca Bass only)
TidalCycles 0.8 + MIDI + EspGrid
TidalCycles 0.8 + SuperDirt
TidalCycles 0.9 + SuperDirt
TidalCycles 1.0
TidalCycles 1.6.1
All of them are equally stable (ie: run at your own risk :neckbeard:)
So, let's say, you want to run the 0.9
version, simply:
$ git clone https://github.com/lvm/tida1vm
$ cd tida1vm
$ git checkout 0.9
$ docker build -t tida1vm-0.9 .
$ docker run -ti --rm --net=host --name tida1vm lvm23/tida1vm:0.9
or just:
$ docker pull lvm23/tida1vm:0.9
$ docker run -ti --rm --net=host --name tida1vm lvm23/tida1vm:0.9
MIDI Ports
See the README
for each branch.
Custom tidal-midi
Synths
For 0.6
, there's a forked version of tidal-midi
here, removing most of the synths (which I don't have) and added GM1Drums.hs
configured after GM1 standards for percussion in GM soundfonts. Uses gdrum
(works with drum
too, but won't recognize all GM1 values).
For 0.7
, since it has MIDI integrated, I created a repo for FluidSynth here with two exposed modules: GMDrums.hs
and GMInst.hs
, one for Drums and other for the rest of the instruments.
For 0.8
, it should be integrated within tidal-midi
.
midithru-connect
There's a small script in the helper
directory called midithru-connect
which connects clients to "Midi Through".
usage: midithru-connect [-h] [-v] [-a] [-c CONNECT] [-d DISCONNECT]
optional arguments:
-h, --help show this help message and exit
-v, --version shows the current version
-a, --all auto connects all clients available
-c CONNECT, --connect CONNECT
connects a client to midi through
-d DISCONNECT, --disconnect DISCONNECT
disconnects a client off midi through
Extra docs
For more info, take a look at the wiki.
What's the difference with Tidebox?
This container has configurations which are probably useful to me only, such as:
tidebox
uses tidal+dirt andtida1vm
uses tidal+tidal-midi.- Runs
Debian Jessie
instead ofFedora
- A particular midi-port <-> tidal-stream config
- Uses
tmux
instead ofscreen
- Doesn't use
Dirt
- Doesn't use
jack
directly (though thehost
might) - Doesn't use
ffserver
(so I dropped dependencies onffmpeg
,lame
and its libs) - Doesn't use
supervisor
- Doesn't use
sshd