The Omenie Synth Collection
The Omenie Synth Collection represents 4 man-years of focussed effort to craft 3 high-quality, ultra-efficient music synthesis engines, optimized for low-performance embedded Linux / RTOS platforms, along with a powerful sequencing engine and delay / reverb / vibrato chorus effects.
All technology has been developed from the ground up, is IP clean, is owned 100% by omenie and the technologies and source codes are not shared with any other projects.
The 3 synth engines are VAsynth, a powerful and flexible Virtual Analog synthesizer, SRsynth, an extremely fast sample replay synth, and WTsynth, a Wavetable Trajectory synthesizer, offering flexibility and performance inbetween that of VAsynth and SRsynth. A wrapper application acts as a demo vehicle for the engines, providing an OpenGL ES accelerated waveform / oscilloscope display as a proxy for a User Interface, plug-in MIDI controller mapping via dynamicaly linked MIDI filters, voice and preset loading, a sequencing language interpreter, delay / reverb / vibrato-chorus effects, and on Linux platforms connects the engines to an ALSA virtual MIDI channel to allow third party applications to drive the engines.
The synth engines have been tuned on a Raspberry Pi Zero, the lowest cost version of the Raspberry Pi educational computer, which is a notoriously slow platform (1GHz ARM11). On the Pi Zero up to 10 VAsynths may be executed concurrently, with the sequencer and OpenGL ES display running at 720p resolution. WTsynth performance is some 3-4x higher than this in terms of achievable polyphony. SRsynth is approximately 6x faster than WTsynth depending on configuration.
The synth engines are suitable for implementation on a fixed-point platform. Currently SRsynth and WTsynth are completely fixed-point, which is architecturally the best solution as both engines use 16-bit integers as their underlying audio representation. VAsynth is currently implemented in floating point since floating-point maths is very efficient on the Raspberry Pi, and on this particular platform floating-point is faster than fixed-point. VAsynth was originally implemented, tuned and tested in fixed-point, and could be very simply reverted back to exclusively fixed-point implementation. Of particular interest, the filter is extremely well-behaved in fixed-point, and is sonically indistinguishable from the floating-point implementation.
Synthesis within all engines is presently hard-wired to 44.1kHz
Omenie Synth Collection in action