Pilot is a UDP synthesizer designed to be controlled externally. It was created as a companion application to the livecoding environment ORCA.
You can download builds for Windows and Linux, or if you wish to build it yourself, follow these steps:
git clone https://github.com/BernardoFPereira/Pilot
cd Pilot/desktop/
npm install
npm start
Pilot has 16 voices, and 8 effects. Commands can be entered directly with the input bar, or through UDP via the port 49161
. You can send multiple commands at once by using the ;
character. For example, 03C;13E
will play a C3
and E3
chord.
The Play commands allows you to play synth notes.
Command | Channel | Octave | Note | Velocity | Length |
---|---|---|---|---|---|
04C |
0 | 4 | C | 64 | 1/16 |
04Cf |
0 | 4 | C | 127 | 1/16 |
04Cff |
0 | 4 | C | 127 | 1bar |
The Settings commands allow you to change the sound of the synth. The settings command format is a channel value between 0-G
, a 3 characters long name, followed by four values between 0-G
. The possible waveforms are si
, 2i
, 4i
, 8i
, tr
, 2r
, 4r
, 8r
, sq
, 2q
, 4q
8q
, sw
, 2w
, 4w
and 8w
.
Command | Channel | Name | Info |
---|---|---|---|
0ENV056f |
0 | Envelope | Set Attack:0.00, Decay:0.33, Sustain:0.40 and Release:1.00 |
1OSCsisq |
1 | Oscilloscope | Set Osc1:Sine, Osc2:Square |
The Effects are applied to all channels. The effect command format is a 3 characters long name, followed by one value between 0-G
for wet and depth.
Command | Channel | Operation | Info |
---|---|---|---|
BITff |
All | Bitcrusher | .. |
DISff |
All | Distortion | .. |
WAHff |
All | AutoWah | .. |
CHEff |
All | Chebyshev | .. |
FEEff |
All | Feedback | .. |
DELff |
All | Ping Pong Delay | .. |
TREff |
All | Tremolo | .. |
REVff |
All | Reverb | .. |
PHAff |
All | Pashor | .. |
VIBff |
All | Vibrato | .. |
CHOff |
All | Chorus | .. |
STEff |
All | StereoWidener | .. |
EQUff |
All | EQ3 | .. |
COMff |
All | Compressor | .. |
VOLff |
All | Volume | .. |
LIMff |
All | Limiter | .. |
TODO
Add the ability to change the mastering effects like compressor and volume. Coming soon!
bpm140
, sets the BPM to140
. This command is designed to apply to effects like feedback.renv
, randomizes envelopes.rosc
, randomizes oscillators.refx
, randomizes effects.reset
, reset all.
Press cmd/ctrl+r to record, and press it again to stop.
Just use ffmpeg.
~/Documents/ffmpeg -i last.{ogg,mp3}
You can save .pilot
files with Presets for later use or sharing.
Presets only save Voice data, if you want to save effect data there are instructions in the code, but that can have unexpected results on loading depending on the effect and value you saved.
- This application supports the Ecosystem Theme.
- Support this project through Patreon.
- See the License file for license rights and limitations (MIT).
- Pull Requests are welcome!