[ANN] Synthex - a signal synthesis library

66 views
Skip to first unread message

Michele Balistreri

unread,
Dec 10, 2015, 12:39:42 PM12/10/15
to elixir-lang-talk
Hello all!

today, I released version 0.0.1 of synthex, a signal synthesis library. It provides oscillators generating the classic waveforms (sine, triangle, square/pulse, sawtooth, reverse sawtooth), noise generators (white, pink, brown) as well as some filters (moog-like, first-order low/high pass, lo-fi "bitcrusher").

Currently, output to WAV files (8/16/24/32 bit integers or 32-bit float) and direct audio output (through SoX player) are supported.

You can find it on hex and on Github at https://github.com/bitgamma/synthex. Have a look at the examples to see how to use it. As a bonus, if you run the binaural.exs script with your headphones on, you may feel relaxed!

In the next days/weeks I will be adding more filters and probably a sequencer. The architecture might change, even radically, so do not depend on it for any serious project yet.

Since the project is at a very early stage, and since I am not totally sure I am going in the correct direction regarding the architecture, I would really appreciate your feedback about possible improvements. Harsh critic, as long as it is constructive is also welcome.

Regards,
Michele Balistreri

Louis Pilfold

unread,
Dec 10, 2015, 2:29:04 PM12/10/15
to elixir-lang-talk
Hey Michele

This is super cool, I'm a huge fan of both Elixir, and mucking about
with music/audio with code.

Given that Elixir isn't exactly the fastest when it comes to number
crunching, how do you see this project being used?

Cheers,
Louis
> --
> You received this message because you are subscribed to the Google Groups
> "elixir-lang-talk" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to elixir-lang-ta...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/elixir-lang-talk/e61ab0c6-f929-4f70-a779-23be5def9d57%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

Michele Balistreri

unread,
Dec 10, 2015, 2:49:06 PM12/10/15
to elixir-lang-talk, lo...@lpil.uk
To be honest, it is an experiment also for me. Performance so far are sufficient for what I am doing, but I am playing with the idea to parallelize computations of separate "blocks" by using processes and see if it can make up for "raw" computing power.
Reply all
Reply to author
Forward
0 new messages