2022-05-30
And now as a full release 2022.5.30.0 too
Published as release version 2022.5.30.0
This can be installed from a recent Wren version - or alternatively download the installer (see the wiki for more info on updating or installing Wren).
The source code releases were not updated yet.
Some fixes and stuff
Published as pre-release version 2022.5.30.0
This can be installed from a recent Wren version - or alternatively download the installer (see the wiki for more info on updating or installing Wren).
- There was a bug in the XY Scope module causing occasional audio artifacts - fixed that.
- When the mouse is over a knob pressing the zero key will cause the control to move to it’s default position.
- Added range selection to the OscPerc mdule - much longer decay times can now be set (it was limited to 12s).
- Fixed a bug in the LFO global rate setting. LFO’s were running way too slow - fixed this, but it will affect all patches whch used a global rate setting other than 1.
- Fixed a tiny table lookup error - lookup of the value at the very end would behave a little odd. Also made the tables two bytes smaller to have an actual size of a power of two. And then removed a couple of tables that were never used..
- Revisited the grain control modules, the RndGranulator was not working at all and the GrainDelay module was a mess. Made the RndGranulator work and added smoothness control for the random values. Totally redid the GrainDelay mdule.
- Removed about 2000 lines of unused code - not that this affects anything though.
- Made Wren run marginally faster by inlining some more code, a couple of procents or so.
The GrainDelay module works differently now, it was redocumented in the module help.
The RndGranulator did not produce any sound at all, this was fixed with the functionality only being changed by addeding smoothness control for the randomization. When smoothness is set to full all randomness will be frozen.
The other two grainy modules were behaving like intended (Granulator and SimpleGranulator).
The global rate setting was applied twice, meaning that when it was set to 0.5 the modules would display half the normal value (which is ok) while they would run at one quarter of their nominal speed instead of one half.
2022-05-22
Installer bug
There was a bug in the installer where it would not properly use a user selected installation folder (but would use the pre-programmed default folder instead).
I’ve updated the installer for this to 2022.5.22.0 and also repackaged the full Wren and the pre-release installations (as those contain the installer program as well, no version updates there).
I hope the issue to be fixed with this.
Sped Wren up a bit, and some small things
Published as pre-release version 2022.5.22.0
This can be installed from a recent Wren version - or alternatively download the installer (see the wiki for more info on updating or installing Wren).
- I Think patch execution was sped up by about 25% trough various code changes and eliminations - debugging got somewhat harder by this … and the changes did unmask some bugs :’)
- The lights and wire status can be saved into the ini file now - these options are off by default but can be turned on from the settings screen (F3).
- And so .. wires, lights and sound can now be turned on by clicking the action item - when actively shown (for in case the Ctrl+W, Ctrl+L or Ctrl+D shortcuts were forgotten).
- Added an ‘all’ mode to the XY scope module, it will listen to the sum of all voices when active.
- Added automatic gain control to the XY Scope module.
- Added a correlation indicator to the XY Scope module.
With the changes on the XY Scope it can now function as a gonio meter module. When put in vector mode the vertical line shows the left / right (or X / Y) similarity while the horizontal line shows the difference, the bottom bar quantizes the left / right correlation; -1 indicates anti-phase, 0 indicates non-similarity and +1 stands for equalness.
It is interresting to see how the Mambi module is displayed on this, ambiophonics works by adding R inverted and delayed to L and likewise for L and R - the XY vector plot will widen from this and be less high, while the gonio indicator will show more anti phase.
Regarding the lights and wires … with this, when lights or wires were turned off when Wren was quit, they will also be off on the next Wren start - the action items will show this. (also - when wires are off at startup, the startup is faster - soo .. that will need some more changes later on).
And .. the Wiki says this .. but to restate: Ctrl+L will toggle lights on/off, Ctrl+W will toggle wire visibility on/off and Ctrl+D toggles sound on/off. Status for these is shown in the top pane.
2022-05-15
Fresh pre-release
Published as pre-release version 2022.5.14.0
This can be installed from a recent Wren version - or alternatively download the installer (see the wiki for more info on updating or installing Wren).
- Made a Mambi module for ambiophonics output.
- The XYScope module got a correlation display, see it’s internal help for more info.
- Another fix on the ProbGraph module, the left- and right-most points were not always properly glued. .
- Made Wren startup a little bit faster.
- Made Wren shutdown a lot faster.
- Improved and streamlined some non-audio timing code.
The removal of the ambiophonics plugin from the electro-music.com store made me see the old ambiophonics thread again and decided to implement that one for Wren. The module blurb says:
Mosc’s ambiophonics module, or Mambi.
See https://electro-music.com/form/topic-27871.html for Mosc’s original idea.
The delay maxes at about 320 us, the default delay setting of 0.25 makes the delay ab out 80us which is what the original uses.
The width parameter can be modulated, the modulation input is 1.0 when unconnected and it will be multiplied with the knob set value once connected.
As the module is strictly monophonic, the width modulation only works on the first voice. The inputs are summed though over all voices and the ouputs are distributed over all voices.
Tried to make some center filling code for it - but I was not convinced and left it out in the end.
2022-05-02
RIP Klaus Schulze
Klaus Schulze’s music was one of the reasons, decades ago, for me wanting to do things with synthesizers - may he float on eternal waves; I’m glad he pressed record so often!
Here is a little patch I did after re-listening some of his work. It also demonstrates the use of the latest two new modules and the analog trigger mode of the envelopes - as I happened to be working on those things when the news reached me.
download the patch - it needs Wren version 2022-.5.2.0 or later (see previous post).
A new release
Published as pre-release version 2022.5.2.0
Published as release version 2022.5.2.0
Source code published as 2022.5.2
All can be installed from a recent Wren version - or alternatively download the installer (see the wiki for more info on updating or installing Wren).
- There were two new module types added, a keyboard (Keyboard - it is on the Utility tab) and a new random generator (ProbGraph - it is on the Ctrl2 tab)..
- Also I’ve removed clicks from the analog trigger mode for various envelope modules (being described in the previous post).
- And then a bug in the spline lookup for the DataGraph module got fixed - not all point changes were resulting in changed behaviour.
The keyboard module:
The module is mouse controlled. To get a note click on it, to freeze a note (or latch it) control click on it.
The mouse over highlight is just for orientation and does not affect the sound.
Whenever a note starts the trig output will go active, and it will stay active for as long as the note is active.
When multiple notes are active they are assigned to successive voices.
On every incomoing arp pulse the note pattern will shift right for all voices, or left when the dir input is less than 0.5. This will make the module behave like an arpeggiator (with each voice being shifted as in a canon).
The mix input is just added to the output value, it can be used for shifting the pitches.
The probablity graph:
With the graph tool a cumulative random distribution function (crf) can be set up - with a little twist.
The distribution is being used by an internal uniform random generator (all values of 0.0 to 1.0 being equally probable), the looked up value will then have the distribution as laid out by the graph. This gives graphical control over how likely output values will be.
On every trig (sync) input pulse a new value will be output and when the value changed a trigger out puslse is being generated as well.
For the graph the leftmost point is fixed at the bottom left corner and the rightmost point hangs in the top right corner - external scalling can always be applied with a mixer or amplifier module.
The twist is that the X and Y axis are being swapped from what woud be expected for a crf, so the uniform random is distributed along the X axis and the Y axis represents the output values.
Output polarity can be set with the selector button ([-1,1], [-1,0] or [0,1] and the inversions thereof), the shape of the graph can be linear, splines, steps or dots. For conveniance the grid marks can be set to several values.