Helm - a free polyphonic synth with lots of modulation

Overview

Helm

Helm is a free, cross-platform, polyphonic synthesizer that runs on GNU/Linux, Mac, and Windows as a standalone program and as a LV2/VST/AU/AAX plugin. Release is in beta so there are outstanding bugs. Please send any bugs found to [email protected]

Installing:

Go to tytel.org/helm for builds.

Building:

If you want to build AAX plugins You'll need its SDK located in ~/srcs
For AU on the Mac you'll want to put the CoreAudio SDK in /Applications/Xcode.app/Contents/Developer/Extras/CoreAudio
Nothing extra is needed for building VST/LV2 plugins

Linux

To build and install the standalone, lv2 and vst plugin:

make
sudo make install

Other make commands:

# Build just the Linux standalone executable:
make standalone

# Build just the Linux LV2 plugin:
make lv2

# Build just the Linux VST plugin
make vst

# Install just the Linux standalone executable:
sudo make install_standalone

# Install just the Linux LV2 plugin:
sudo make install_lv2

# Install just the Linux VST plugin
sudo make install_vst

The standalone executable is built to standalone/builds/linux/build and installed to /usr/bin The LV2 plugin is built to builds/linux/LV2 and installed to /usr/lib/lv2 The VST plugin is built to builds/linux/VST and installed to /usr/lib/lxvst

OSX

Open /standalone/builds/osx/Helm.xcodeproj for standalone version
Open /builds/osx/Helm.xcodeproj for plugin versions

Windows

Open /standalone/builds/vs15/Helm.sln for standalone version
Open /builds/vs15/Helm.sln for plugin versions

Features:

  • 32 voice polyphony
  • Interactive visual interface
  • Powerful modulation system with live visual feedback
  • Dual oscillators with cross modulation and up to 15 unison oscillators each
  • Sub oscillator with shuffle waveshaping
  • Oscillator feedback and saturation for waveshaping
  • 12 different waveforms
  • Blending between 12 or 24dB low/band/high pass filter
  • Low/Band/High Shelf filters
  • 2 monophonic and 1 polyphonic LFO
  • Step sequencer
  • Lots of modulation sources including polyphonic aftertouch
  • Simple arpeggiator
  • Effects: Formant filter, stutter, delay, distortion, reverb

alt tag

Comments
  • ARM support

    ARM support

    I was hoping to try Helm out under Arch Linux on my Banana Pi. I realise its only got a (dual-core) 1 Ghz ARMv7 CPU so I think I'll be lucky to get more than a couple of instances of Helm running on it, if that. It'd be cool if I can just use 1 instance of Helm as then I could then potentially use it as a live instrument. A more realistic ARM platform would be something like one of the 64 bit AArch64 Nvidia Shield devices - they compete quite well with i3 machines I believe.

    I can probably (hopefully) just hack the current makefiles to remove the sse2 flags but if Helm can't get ARM NEON support any time soon then it would be nice if it could detect non-x86 CPUs and disable sse2 and any other x86-specific automatically.

    Thanks!

    opened by danboid 41
  • GUI size problem on 1920x1080 monitor

    GUI size problem on 1920x1080 monitor

    On 1920x1080 displays using Linux, the helm gui appears to be very oversized (as if it were zoomed in) with the result that most of the parameters cannot be accessed.

    It displays fine on another laptop with a different (lower) screen resolution which makes me wonder whether this is something to do with this specific resolution setting.

    opened by asbaklm 13
  • Envelope pre-attack / hold / decay issues

    Envelope pre-attack / hold / decay issues

    Using Helm v0.7.0 on OSX 10.11.5, in Bitwig Studio 1.3.9.

    This is easy to reproduce: load the synth with whatever init patch, change OSC 1 to saw, drop Formant X to 0, map Mod Envelope to Formant X, increase amount to the right most of the way. Hold a whole note: observe the envelope jumps back to some random spot in the middle instead of behaving like a normal ADSR envelope, almost like there's a random pre-delay. It's a little sporadic, but seems to happen 80% of the time or more for me. Oddly, it seems that mapping to the Filter Envelope to the Cutoff in a similar manner (leaving the Env Amount at 0) has a similar behavior for the visual display but does not affect the sound audibly. Other mappings seem to have similar issues like OSC pitch, etc..

    One other note: it seems after loading the 2nd preset and the 1st preset again, the issue is no longer present. Maybe it's something as simple as fixing the init values? I hope it could be fixed pretty easily. The init patch having this issue is a non-starter for using it with the One-Synth-Challenge -- which I hope, one day will happen -- because people have to design patches from scratch a considerable amount.

    opened by kzantow 10
  • feature request: more stereo options.

    feature request: more stereo options.

    A synth typically sounds much bigger when it's not just the effects that make it stereo.

    On the top of my list are: -stereo spread for unison, like ZynAddSubFX. -phase offset for LFOs: in many chorus plugins, you can set the phase offset between the LFO modulating the left signal, and the one modulating right. Combined with Helms flexible modulation options, this would lead to some awesome sound-design possibilities.

    I realize this would probably double the dsp load, but IMHO that's worth it.

    opened by magnetophon 10
  • Modulation is sometimes not saved in Ardour

    Modulation is sometimes not saved in Ardour

    I don't have a reproducible recipe (yet), but I've noticed that sometimes after re-opening a .ardour file, the modulation destinations and amounts are not saved, so the patch comes up without modulation.

    opened by magnetophon 9
  • Aftertouch responds to velocity instead

    Aftertouch responds to velocity instead

    I'm using Mac OS X 10.5.7 on a refurbished Mac Pro, Cubase 7.5 and Helm 0.6.0 downloaded from the official site.

    I tested aftertouch capabilities of my keyboard and NI Massive reacts as expected, but Helm seems to only get the first aftertouch message that comes after note on, then all the rest is ignored. No motion with aftertouch.

    Can anybody confirm this behavior?

    opened by unfa 8
  • The i3 window manager cannot drag the Helm window.

    The i3 window manager cannot drag the Helm window.

    In i3, windows can be floating, and when they are, you can drag them around by pressing a modifier key. Helm simply ignores this. I've never seen another window do this in i3.

    opened by magnetophon 8
  • Feature: add wavetable oscillator

    Feature: add wavetable oscillator

    Possibly not an easy to implement feature but it would be nice to additionally have arbitrary waves for oscillators/LFOs. I guess something like libsamplerate or libresample could be used for the resampling.

    opened by kjyv 7
  • Feature Request - More Filters

    Feature Request - More Filters

    I was recently doing some sound design thingies when I discovered that Massive has two filters. (Or, rather, I realized that this fact was actually quite important - more important than I had believed it to be before then.) I had already known for some time that Serum has lots of filter options. I thought that this feature was very useful, and so I wanted to suggest that multiple filters be added to Helm.

    https://cloud.githubusercontent.com/assets/20910668/21546276/c1d22986-cdab-11e6-9ab8-48f2d7409490.png

    Sorry if the picture looks a bit sloppy. :/

    I suggest that the user is given the option to add as many "sub filters" as they need, that an "overall filter" is added so that the user can see what all of the sub filters add up to, and that the sub filters' influence on the overall filter can be modulated. It would also be absolutely incredible if sub filters could multiply, subtract, and divide each other instead of only being able to add to each other. To do this properly, the adding/subtracting/multiplying/dividing should be done in order from the first sub filter to the last filter. The order of the sub filters should be able to be changed very easily.

    opened by BiRD4 7
  • Automation via Ardour unreliable

    Automation via Ardour unreliable

    Automating parameters like arpeggio-frequency only works sometimes and is ignored most of the time. Since automating other plugins works, I assume it's an issue with Helm.

    There's no obvious trigger, but it maybe have to do with initial playhead position and cycle-boundaries (rgareus's suggestion, I'm clueless in that regard).

    I have a fairly minimal test session, but can't attach it here :/

    opened by thorwil 7
  • Freezes in Cubase 8.0.10 64bit, Windows 8.1

    Freezes in Cubase 8.0.10 64bit, Windows 8.1

    Hi,

    When using Helm 64bit in Cubase 8.0.10 64bit, on Windows 8.1 Pro, if I make a few changes (play with) the "A" attribute of the Amplitude Envelope, it often freezes the VST plugin and the whole of Cubase. I then have to End Task on Cubase.

    Regards, Nikos

    bug 
    opened by ntsarb 7
  • Not require admin rights to install in Windows

    Not require admin rights to install in Windows

    I was able to extract the Windows installer into a folder and run the executable to use Helm; while running the installer required admin rights which I do not have in my work computer.

    Any chance that installation is made to not require admin rights?

    opened by kbasaran 0
  • #299 Juce compiling error on ubuntu - fixed.

    #299 Juce compiling error on ubuntu - fixed.

    Just applied a patch I got from rncbc (author of qtractor and other QT-based Linux audio applications) in the context of https://github.com/rncbc/qtractor/issues/357, who himself got it from some LA mailing list and suggested I'd just post it here.

    opened by tcrass 0
  • Helm stuck when having no Internet access?!

    Helm stuck when having no Internet access?!

    Hi there,

    Tried to use your plugin on Linux with Reaper. Whenever I first add it into a session it asks for Internet access. If I don't let it, it freezes my DAW and just sits there for a few minutes before showing the GUI. But if I allow it access, even just once, it loads without any issues. After that first load with or without/blocked acess, it still loads immediately in new instances.

    Why is this the case?

    opened by 6-AND-9 2
  • Size is out of proportion - Studio One

    Size is out of proportion - Studio One

    I installed this just now and the interactive elements are in the wrong space compared to the PNG behind it. I tried resetting the window size using the option in the VST but it didnt fix the issue.

    Im using 1920 x 1080 monitor, Windows 10, Studio One

    https://imgur.com/a/nkBGhAS

    opened by VenomRaven 1
  • Fixes #217 - Use correct MIDI channel when reactivating previous note

    Fixes #217 - Use correct MIDI channel when reactivating previous note

    This patch uses the correct MIDI channel so that releasing a note whilst others are held will assert pitch bend (and other controllers) to the next asserted note. Fixes bug #217.

    opened by riban-bw 0
Releases(v0.9.0)
  • v0.9.0(Jul 9, 2017)

    • New OpenGL interface for lower CPU usage and faster frame rate  - New slider/knob style  - Better oscilloscope  - Added peak meter  - Added graphical feedback for envelopes and poly lfo  - Added tooltip popup when changing value  - Fully resizable GUI  - Allow poly modulation sources to modulate global settings!  - Better waveform interpolation  - More filter types!  - Added low/band/high pass filter blending  - Added distortion section  - Normalized unison volume  - Added random modulation source  - Fixed effect wet/dry mixing levels  - Distributing VST for Linux build  - Better performance (~50%!)  - Fixed some crashing bugs for format/stutter/delay  - Fixed some crashing bugs for dynamic buffer sizes  - Fixed some realtime hazards  - Created a manual (work in progress)  - Added DAW/MIDI automation to buttons  - ARM Support  - Raspberry (armhf) support  - New patches  - Easy import/export for patch banks  - Added patch exporting  - Faster launching for VST and LV2 plugins  - Added 'Init Patch' option  - Can open raw .helm files now  - Added "headless" standalone option
    Source code(tar.gz)
    Source code(zip)
  • v0.8.6(May 17, 2017)

  • v0.8.0(May 17, 2017)

    • Fixed crash/loud noise/silence when opening a project back up in some DAWs
    • Normalized all factory patches!
    • Better volume range to reduce distortion
    • Fixed audio "blipping" that occurred sometimes when playing low notes, then high notes
    • Fixed polyphonic modulation bugs in formant filter and stutter
    • Modulation meters show last note played instead of (jumpy) average
    • New stutter format with tempo syncing
    • Stutter responds better to modulation and changing parameters
    • Helm now responds to midi learn when GUI is closed
    • Prioritized audio thread reduces the possibility of glitches at high CPU usage
    • Fixed author not saving to patch
    • Added modulation highlighting so you can see what sources are modulating a control
    • Performance improvements for some features
    • Oscilloscope now is note aligned for better viewing
    • Fixed audio glitch when loading a patch with lots of saturation then one with little saturation
    Source code(tar.gz)
    Source code(zip)
  • v0.7.0(May 17, 2017)

    • Performance improvements!
    • Fixed crash when deleting and recreating a plugin
    • Fixed saved state not loading correctly when opening project in DAW
    • Fixed some Windows installation problems that caused patches not to appear
    • Fixed some buffer size issues that caused audio glitches in some DAWs
    • Way better sounding Formant Filter
    • Per channel pitch bend
    • Microtonal pitch bend support
    • Added randomized waveforms to LFO sections
    • Better oscilloscope scale in plugin version
    • Added enable/disable animation flag
    Source code(tar.gz)
    Source code(zip)
  • v0.6.0(Dec 30, 2015)

    • Performance improvements!
    • Added a graphical keyboard!
    • Added third envelope
    • Reorganized layout and new colors, what do you think?
    • Replaced oscillator "Mix" parameter with a full oscillator mixer
    • Added update checking
    • Added patch changing through MIDI
    • Added some more patches
    • Fixed 'zippering' and 'buzzing' with weird buffer sizes and bouncing audio
    • Fixed portamento still affecting sound when off
    • Fixed some problems with presets in different DAWs
    • Fixed automation issues on tempo parameters
    • Fixed unison phasing at beginning of note
    • Fixed latency when reverb was enabled
    • Fixed some Windows 64bit patch loading/saving problems
    • Fixed Windows missing MSVCP110.dll problem
    • When reopening the plugin GUI, Helm now shows the current patch and folder
    • JACK MIDI input is now labeled "Helm"
    • Better starting phases for unison voices
    • Fixed some other small bugs no one probably (hopefully) noticed
    Source code(tar.gz)
    Source code(zip)
  • v0.5.0(Sep 11, 2015)

    • New patch browser!
    • Added a bunch of patches submitted by Cris Owl Alvarez
    • Finally fixed AAX plugin on OSX ( Windows AAX still broken :( )
    • Fixed latency when playing monophonically with legato off
    • Portamento now always uses the last note pressed to slide from
    • Saving dialog shows up over synth now
    • Saving now allows to specify author
    • Fixed freeze when quickly loading patches
    • JACK inputs are now labeled "Helm"
    • Tooltip shows better names for controls
    • Fixed audio breaking bug when first note is played with formant filter on
    • Fixed setting new parameters with old patches
    • Added configuration file where users can customize the keyboard layout
    • Added --version [-v] flag for GNU/Linux
    • Fixed clipped text on GNU/Linux
    Source code(tar.gz)
    Source code(zip)
  • v0.4.1(Aug 3, 2015)

    • Add Audio/MIDI settings page under Helm logo button
    • Fixed occasional hang when using MIDI learn/automation
    • JACK support for GNU/Linux!
    • Better MIDI default device connection.
    • Reduced aliasing in sub oscillator a bit
    • Added DC blocker
    • Added retrigger to monophonic LFOs and step sequencer
    • Added playhead sync to monophonic LFOs and step sequencer
    • Improved portamento slide function
    • Change white noise LFO to Sample and Hold
    • Added Sample and Glide to LFO waveforms
    • Fixed unintentional automation cancelling in some DAWs
    • Fixed zippering when modulating some parameters
    Source code(tar.gz)
    Source code(zip)
InsNet Runs Instance-dependent Neural Networks with Padding-free Dynamic Batching.

InsNet documentation InsNet (documentation) is a powerful neural network library aiming at building instance-dependent computation graphs. It is desig

Chauncey Wang 62 Jan 3, 2023
Cinder is a community-developed, free and open source library for professional-quality creative coding in C++.

Cinder 0.9.3dev: libcinder.org Cinder is a peer-reviewed, free, open source C++ library for creative coding. Please note that Cinder depends on a few

Cinder 5k Jan 7, 2023
A collective list of free APIs

Public APIs A collective list of free APIs for use in software and web development Status The Project Contributing Guide • API for this project • Issu

null 222.9k Jan 5, 2023
Wasserstein Inverted Frequency Modulation Synthesizer

Wasserstein Inverted Frequency Modulation Synthesizer 発表資料: https://speakerdeck.com/fadis/wassersteinni-fmyin-yuan 発表動画: https://youtu.be/VF9VX01QYs0

Fadis 11 Nov 24, 2022
Wonderful library with lots of useful functions, algorithms and data structures in C, link it with -l9wada

Lib9wada Wonderful library with lots of useful functions, algorithms and data structures in C, link it with -l9wada Usage Compile the library with mak

Lprogrammers Lm9awdine 53 Nov 21, 2022
Real-time 2D fluid simulator with lots of visualization options.

Fluid Simulator Building Start by cloning the program and all submodules using the following command: git clone --recursive https://github.com/linusmo

Linus Mossberg 28 Dec 14, 2022
Wonderful library with lots of useful functions, algorithms and data structures in C, link it with -l9wada

LibC+ Wonderful library with lots of useful functions, algorithms and data structures in C, link it with -lC+ Better than C, not as much as c++ Usage

BnademOverflow 53 Nov 21, 2022
A basic infrastructure for a polyphonic synthesiser, written with the JUCE framework.

JuceSynthBase This JUCE module is a complete infrastructure for a polyphonic synthesizer, providing voice management, MIDI management, and some more a

Ben Vining 14 May 28, 2021
synthv1 - an old-school polyphonic synthesizer

synthv1 - an old-school polyphonic synthesizer

Rui Nuno Capela 32 Jan 8, 2023
Arduino polyphonic synthesizer project (not a Moog) for ESP32 - STM32 - Teensy and more

ml_synth_basic_example Arduino polyphonic synthesizer project (not a Moog) for ESP32 - STM32 - Teensy and more link to the video My intention was to m

Marcel 18 Dec 7, 2022
Jeannie 8-voice polyphonic open source synthesizer

Jeannie 8-voice polyphonic open source synthesizer Jeannie is an 8-voice polyphonic open source synthesizer kit with digital sound synthesis and digit

Rolf Degen 38 Dec 28, 2022
Spectral warping wavetable synth

Vital Vital is a spectral warping wavetable synthesizer. This is the source. Code Licensing If you are making a proprietary or closed source app and w

Matt Tytel 1.1k Dec 29, 2022
SynthLab is a synth plugin framework for developing software synthesizers.

SynthLab SynthLab is a synth plugin framework for developing software synthesizers.

willpirkleaudio 77 Dec 7, 2022
A library for using real OPL2 synth chips via ALSA's hwdep interface.

oplhw: A library for using real OPL2 synth chips via ALSA's hwdep interface ==========================================================================

David Gow 1 Nov 30, 2021
C/C++ library for converting a stream of OPL FM synth chip commands to the OPB music format

OPBinaryLib C/C++ library for converting a stream of OPL FM synth chip commands to the OPB music format Basic usage Store your OPL commands as a conti

Emma Maassen 10 Feb 2, 2022
Single file synth + demo song

P.S. is a music track written from scratch using the C programming language. All sounds and notes were entered manually without using any music progra

NightRadio 44 Nov 26, 2022
A bounded single-producer single-consumer wait-free and lock-free queue written in C++11

SPSCQueue.h A single producer single consumer wait-free and lock-free fixed size queue written in C++11. Example SPSCQueue<int> q(2); auto t = std::th

Erik Rigtorp 576 Dec 27, 2022
Forkpool - A bleeding-edge, lock-free, wait-free, continuation-stealing scheduler for C++20

riften::Forkpool A bleeding-edge, lock-free, wait-free, continuation-stealing scheduler for C++20. This project uses C++20's coroutines to implement c

Conor Williams 129 Dec 31, 2022
Awesome-lockfree - A collection of resources on wait-free and lock-free programming

Awesome Lock-Free A collection of resources on wait-free and lock-free programming. ?? ?? ?? Even better resource from MattPD: C++ links: atomics, loc

Erik Rigtorp 1.4k Jan 1, 2023
A collection of hash tables for parallel programming, including lock-free, wait-free tables.

Hatrack Hash tables for parallel programming This project consisists of fast hash tables suitable for parallel programming, including multiple lock-fr

null 62 Dec 13, 2022