Skip to content
/ synthz0r Public

Simple synth engine that can be controlled over WebSockets

License

Notifications You must be signed in to change notification settings

aalin/synthz0r

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

synthz0r

Simple synth engine. The goal is to have something that is easily controlled via Websockets, so that UIs can be made for browsers, or whatever that supports it.

Check out synthz0r-web-ui for a web based UI.

Dependencies

  • gcc (9.3.0)
  • PulseAudio (13.0)
  • websocketpp (0.8.2)
    • (depends on boost (1.72.0))
  • protobuf (3.11.4)

Building

make

Usage

Start the server (defaults to port 5555)

./synthz0r

Start the client

node client/index.js 5555

While developing, it can be useful to quickly test instrument devices:

./synthz0r -test WavetableSynth -notes 60,62,64,65,67,69,71 -params amplitude=128,envelope.decayMs=500,envelope.releaseMs=500,waveformIndex=15

Todo

  • MIDI-messages
  • More instruments
  • More effects
  • More filters
  • More controllers (sequencers etc)

Contributing

Pull requests are welcome. Please try to follow the existing coding style as much as possible.

License

MIT

About

Simple synth engine that can be controlled over WebSockets

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages