Obscure Audio Software: Wren (Modular soft synth for Windows)

This edition of Obscure Audio Software will focus on another piece of virtual modular gear, though this time the object of our attention is slightly less complex. Today we’re going to look at Wren, which is a free and open-source standalone-only modular soft synth (Windows only). It is made by a person known as “bluehell” on the electro-music.com forums.

[Note: there have been multiple new major versions of Windows released since the original publication of this article, as well as several updates to Wren. I had some issues getting it running on a newer machine recently, and I have added a section at the end of this article describing the steps I had to take to get a more recent version of Wren running on a Windows 10 machine.]

screenshot 1
Main interface window with some modules patched up.

 

What kind of bird is this?

Wren is basically a software version of a modular synthesizer. It is similar in many ways to pretty much any other modular-type synth, though it includes many unusual modules. According to the author: “Wren is not a product, but a hobby project that got out of control a bit. This software ain’t good for anything and it will crash your PC too.” I wouldn’t agree with the first part of that second sentence, nor have I experienced any crashes, but ymmv, as they say. There are a few “known issues” posted on the website, but I wouldn’t say any of them are really game-ending.

Those minor foibles aside, Wren is truly fantastic in my opinion, especially for freeware. The modules include all of the stuff you might expect as standard for modular synths: oscillators, filters, envelopes, VCA’s, etc., but even among those there are some interesting entries, such as the “Attractor” oscillator, which uses a “strange attractor” formula based on either the Lorenz or Rössler function to generate sound (or LFO signals), or the “Tod” LFO, which gives the current time of day as a value ranging from zero to one in hour, minute, second, or millisecond increments (so basically a sawtooth LFO with a frequency of 24 hours). There are also several types of random and algorithmic generators and sequencers, such as a couple types of cellular automaton, a sequencer based on Conway’s Game of Life, and a logistic map module. Some other highlights include speech synthesis, granulator effects, and a convolution-based vocoder. These are just some examples, there is a full list with descriptions on the website (link below).

Modules are loaded either from icons in the top menu bar, or by right-clicking and choosing from a drop-down menu. You connect them together using virtual wires, which are color-coded by function (audio signal, control signal, logic signal, etc.). You can even use custom colors for the wires. Some modules are “rate smart”, meaning they can tell whether they are recieving audio-rate or control-rate (or whatever) signals, and adjust automatically. Connection points are marked with either a circle or a square, to denote inputs and outputs, respectively. You can disconnect single wires or whole “wire trees” with a right-click on the connector.

Other than the modules/synthesis features, Wren also includes some other nice touches, such as a built-in audio recorder, a patch randomizer, morphing features, and a search function to find modules by name in case you have a large or otherwise hard-to-follow patch. I’m quite impressed with the “quality of life” features like this that are included, again, especially for freeware.

screenshot 2
The radomization/mutator window.

 

There are a couple of features that don’t seem to be implemented yet, though they appear in the interface, one being recording and playback for parameter automation. Another is “abstractions”, which according to the website is some sort of “patch as a module” thing. Perhaps some type of sub-patch kind of thing? Both of those would be nice, but it doesn’t ruin the experience not having them. Development seems to be fairly active for a one-man labor of love though, so these features may be implemented before long. There is a note on the website that the automation recorder is being rewritten, so that at least is definitely in the works.

Wren can use PortAudio for low-latency audio performace, or “legacy” wave in/out, and supports multiple channels of audio I/O (fun for patching in external hardware gear). It supports MIDI using NetMIDI. Wren also supports OSC.

screenshot 3
Settings page.

 

Free bird

All in all, I think Wren is worth a try for anyone with a Windows machine who is interested in modular synthesis, and since it’s free, what do you have to lose? Even if you already have other modular stuff to play with, Wren has enough unusual features that I think it would be a valuable addition to your arsenal.

Website: http://bluehell.electro-music.com/wren/index.php

 

Addendum: running Wren on Windows 10

Both Windows and Wren have received several updates since the original publication of this article, and I recently experienced some issues getting it to run on my Windows 10 machine. In case others have had similar problems, I’m recounting the steps I followed to get it running here.

The first problem I ran into was with the new installer for Wren, which connects to the internet to download files. I use a second user account for my music/audio stuff for various reasons, and even though this account does have Administrator access, apparently the Wren installer still didn’t like it. I tried several times, making sure it wasn’t something to do with my connection, leaving the install directory as the default entry, etc., but the installer kept hanging when it started the process of retrieving files. On a whim, I tried running the installer from my main account, and it worked without a hitch.

The second problem I encountered was that the program would crash on startup, after displaying the splash screen. I decided to see if there might be something wrong with the settings in the “wren.ini” file, and found references to non-existent files under both the [settings] and [RecentFiles] headings. I don’t remember exactly what the filenames were, but they appeared to be dates/timestamps. The first was in the “SourceFileName” entry under [settings], and there were two more under the [RecentFiles} heading. Since I wasn’t sure what would happen if I just deleted the entries, and there happened to be a file called “__l__a__t__e__s__t__.wren” in the main Wren directory, I pointed the erroneous entries there. So, under [settings], the “SourceFileName” entry was “SourceFileName=D:\synths\wren\__l__a__t__e__s__t__.wren” without the quotation marks. Obviously, the drive/folder names will likely be different on your system. Under the [RecentFiles] heading, I changed the “Count” entry to “Count=1” and pointed the “item0” entry to the same file (so “item0=D:\synths\wren\__l__a__t__e__s__t__.wren”), and deleted the “item1” entry. After this, I was able to run Wren with no issues.