electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Articles  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links  |  Store
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
 Forum index » Instruments and Equipment » WREN
Randomize selected modules?
Post new topic   Reply to topic
Page 1 of 2 [33 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Goto page: 1, 2 Next
Author Message
lamptablecomputer



Joined: Jun 02, 2016
Posts: 12
Location: USA

PostPosted: Tue Jul 19, 2016 12:13 pm    Post subject: Randomize selected modules? Reply with quote  Mark this post and the followings unread

here's a little feature request, one of my favorite things digital modular has to offer is presets and randomize functions. I know making something like the G2's patch mutator would require a decent amount of time, but just wondering if it would be possible to implement a function to randomize params on selected modules, like the nomad G1 editor does. simply select a few modules and hit ctrl - R and boom you find all the sounds you missed while trying to make "that one sound" : )
Back to top
View user's profile Send private message
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Tue Jul 19, 2016 12:26 pm    Post subject: Reply with quote  Mark this post and the followings unread

I don't think it to be too hard to implement, will have a look at it - and will add it to the feature request list. Thanks for your suggestion :-)
_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Tue Jul 19, 2016 1:22 pm    Post subject: Reply with quote  Mark this post and the followings unread

Heh .. that was easy indeed.

But now I end up with all automatable knobs / sliders and selectors to be randomized. This means that mute buttons will be randomized as well, which may not be a good idea.

Now I could easily exclude everything that has 'mute' in it's name .. but it raises a question or two ... should there be an exclustion mechanism, and if so .. what would be handy.

Let me have a look at the NMG2 editor ... IIRC tuning stuff can be excluded there ... which means knobs should be categorized .. which in a way they already are, but there is a large amount of categories currently. Hmm .. the Mac needs a reboot for that - it lost the Nords it seems.

I'll be back.

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Tue Jul 19, 2016 4:28 pm    Post subject: Reply with quote  Mark this post and the followings unread

I think I can make something decent out of this.

What I did for now is that I excluded the mute controls from randomization by default.

I've made it possible for the 60 or so different kind of control types to enable or disable randomization - but have no user interface for that yet. I may want to add some categories for this to group stuff a bit.

I've made it possible for individual controls to enable or disable randomization, and these settings will be saved with the patch. There is no user interface for this yet.

Old patches will be read OK, applying default settings for randomization allowance.

New patches will be read OK by old Wren versions as well, but the patches will loose all randomization allowance settings when saved.

This would give reasonable patch compatibility between old and new versions I think.

I'm planning on adding a randomization allowance option for modules, which by default will be on for most modules but for a couple of types it better is disabled by default probably (like the Volume module).

I will implement some user interface elements where they are currently missing, but not quite sure how yet - I would like categories for control types maybe. This user interface should allow for enabling randomization on mute controls too.

Currently the action menu has a randomize entry which will randomize controls on all selected modules (Shift + Ctrl + R, Ctrl + R was in use already). Also I made an entry on the module popup menu. When the module the menu is called from is selected it will do the same as randomization from the action menu. When that module is not currently selected it will be selected uniquely (deselecting all other modules) and then do the same as the action menu entry.

It still is pretty damn hot here in the home after a hot day, but I better try to get some sleep now - especially as tomorrow will be hotter even :-)

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Thu Jul 21, 2016 11:38 am    Post subject: Reply with quote  Mark this post and the followings unread

I've made it possible to exclude certain modules from randomization too - this unfortunately needed the patch format to be changed a bit, sot that's upped to version 5 now. There will be backwards compatibility still, but no longer forward compatibility - as in new Wrens can read old patches, Old Wrens can not read new patches.

Implemented some popup menu items to control all of it, and exclusion settings will be saved in the patch.

Decided to exclude all I/O modules from randomization by default.

A control can be randomized when :

- it is on a randomizable module (this is under user control).

- it is automatable (this is not under user control).

- it is not locked (this is under user control).

- it allows for randomization (this is under user control).

- it is not of a type for which randomization currently is disabled (this is not currently under user control, but will work on that).

- it has more than one possible value (this excludes the momentary buttons, this is not under user control).

I've made a randomize menu item for knob and selector popup menus to allow for a single control to be randomized (instead of all controls on the module).

On the todo list is to make something for exclusion categories. Currently mute controls can not be randomized, but working on a way to make that user settable (this will probably not be saved into the patch).

Soo .. still a little work to do on that.

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Lfohead



Joined: Jul 29, 2009
Posts: 288
Location: Sweden
Audio files: 6
G2 patch files: 28

PostPosted: Thu Jul 21, 2016 2:33 pm    Post subject: Reply with quote  Mark this post and the followings unread

Oi Jan! Wonderful work as always! Smile i've had thoughts about this also, glad to see it was raised.. Not to complicate things as i usually tend to do ...

However instead of exclude module, include module seems or even better "include parameter" seems to give more predictable or good of both worlds chaos and order.

I like to think i am complicating things to be more careful, although who knows might be simplifying it. You are the genius not me Very Happy Cheers
Back to top
View user's profile Send private message
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Thu Jul 21, 2016 3:15 pm    Post subject: Reply with quote  Mark this post and the followings unread

Yeah well ... included is all minus excluded .. and as its just a few clicks to exclude all it does not matter much ... but will add an 'exclude all controls' to make it even easier :-)
_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Fri Jul 22, 2016 5:42 pm    Post subject: Reply with quote  Mark this post and the followings unread

Ok, it basically all works .. ended up with:

Posted Image, might have been reduced in size. Click Image to view fullscreen.

Where excluded stuff is marked in red in the patch - click on the image to see a larger version.

Some details to fix still, like I would like to be able to set the amount of random to be applied maybe.

Also would like something like:

Posted Image, might have been reduced in size. Click Image to view fullscreen.

Laughing

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Sat Jul 23, 2016 6:34 am    Post subject: Reply with quote  Mark this post and the followings unread

Well ... this is it for now :

Posted Image, might have been reduced in size. Click Image to view fullscreen.

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Sat Jul 23, 2016 7:06 am    Post subject: Reply with quote  Mark this post and the followings unread

To clarify a bit ...

The randomizer window holds the defaults for any new modules added to the patch, and it can change the random settings in a patch for categories.

The Module categories only act to control the Randomizable module types - these settings are not saved, and they should probably be buttons instead if checkmarks (except that there is a somewhat nice standard component in Delphi to automagically build a set of checkboxes and not one to do the same for buttons - or so it seems).

Apart from that, at design time some controls that can not be randomized will be excluded from randomization.

Apart from all that, it is always possible to override settings on a module by module and on a control by control basis from the patch itself.

When a patch is saved the actually excluded stuff is saved with the patch, and this will be used again when the patch is loaded (regardless of what may be set in the randomizer window at that time).

The randomizer window settings are not saved with the patch, they are saved with other Wren settings in the main Wren ini file.

The Randomization amount is saved with the Wren settings as well, the default value will be 0.5. Lower values make the randomization less jumpy, but it will also cause controls that do not have many positions to not change anymore.

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Sat Jul 23, 2016 9:21 am    Post subject: Reply with quote  Mark this post and the followings unread

Ok, published a version @ http://bluehell.electro-music.com/modules/forums.html

note that the randomizer alt+ctrl+r shortcut only works when there are modules selected. Maybe I'll later make a none=all option for that, was not sure there.

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Sat Jul 23, 2016 5:33 pm    Post subject: Reply with quote  Mark this post and the followings unread

Still ...

Posted Image, might have been reduced in size. Click Image to view fullscreen.

Anyway, not today - still some issues with it.

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Mon Jul 25, 2016 5:00 pm    Post subject: Reply with quote  Mark this post and the followings unread

Made the randomizer work on the XY type controls and on the DataGraph thingie too.

Also the mutator seems to be working OK now, it works on XY thingies and data graphs even when inserting or deleting data points and it seems to survive module insertions and deletions as well.

Some more testing is needed, but it will be in the next release I guess.

it now looks more like :

Posted Image, might have been reduced in size. Click Image to view fullscreen.

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
lamptablecomputer



Joined: Jun 02, 2016
Posts: 12
Location: USA

PostPosted: Tue Jul 26, 2016 11:31 am    Post subject: Reply with quote  Mark this post and the followings unread

Wow, i was away for work for only a week. this looks great! Fantastic Job
Back to top
View user's profile Send private message
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Tue Jul 26, 2016 12:13 pm    Post subject: Reply with quote  Mark this post and the followings unread

Heh, was wondering already if the work would be all for myself ... thanks!

Had another idea agai. Added a morph source and target and a knob to fade between those, calling it 'Live Morph' .. now it would be nice to have a module in the patch to control that knob Shocked

Posted Image, might have been reduced in size. Click Image to view fullscreen.

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Tue Jul 26, 2016 2:45 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hah, it works Cool

Click on attached image to see it move as a larger image.

Here is a smaller one:

Posted Image, might have been reduced in size. Click Image to view fullscreen.


2016-07-26---21-39-17---836.gif
 Description:
The morpher morphed
 Filesize:  3.11 MB
 Viewed:  71 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

2016-07-26---21-39-17---836.gif



_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Lfohead



Joined: Jul 29, 2009
Posts: 288
Location: Sweden
Audio files: 6
G2 patch files: 28

PostPosted: Tue Jul 26, 2016 9:44 pm    Post subject: Reply with quote  Mark this post and the followings unread

Blue Hell wrote:
Hah, it works Cool

Click on attached image to see it move as a larger image.

Here is a smaller one:

Posted Image, might have been reduced in size. Click Image to view fullscreen.


Exciting! Smile With a constant module manual morphing possible which is amazing.. Another fun thing is i am working also got 2 done, think i could get all of them done before end of month.. Cheers Smile
Back to top
View user's profile Send private message
MusicMan11712



Joined: Aug 08, 2009
Posts: 990
Location: Out scouting . . .

PostPosted: Wed Jul 27, 2016 9:37 am    Post subject: Reply with quote  Mark this post and the followings unread

New developments look intriguing. Is there any chance someone who understands (1) what's going on and (2) how to make use of these features can write a manual and some easy-to-do, progressive tutorials for those of us who find wren counter-intuitive?*

*Since wren is too CPU intensive for even the newest of my PCs (approx 2-3 year old dual-core device with win 10) to produce clean audio, if someone can write low-cpu tutorial examples, that would be helpful.
Back to top
View user's profile Send private message
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Wed Jul 27, 2016 4:58 pm    Post subject: Reply with quote  Mark this post and the followings unread

I've published a version, so you can try ... http://bluehell.electro-music.com/modules/forums.html#top

manuals Shocked sorry Steve - I already have customers at work Shocked

Apart from that:

The mutator implements a primitive genetics tool. The idea is that the parameters of the patch form a genome. This genome can be altered by the mutator in a sexual and in some asexual ways.

The graphic images are a visual interpretation of the parameters present in the patch. Every parameter is represented by an angle, and then a line is drawn under that angle to the next parameter - which forms the worms. Worms are then scaled to fit the cage they are in.

Asexual reproduction can be plain random .. which does not really reproduce anything (as all information is lost), or a mutation (which does keep some information and looses some as well). Mutations can be controlled with a probability and a range. The probability sets the chance that a a change occurs, and the range determines how much of a change can occur.

Sexual reproduction picks parts of one genome and parts of another and makes a mix of that. The crossover probability determines how often a parameter pick switch is made from the first to the second 'parent'. Also in sexual reproduction there is some mutation involved.

In the randomizer window the parents are in the breeder bit, the leftmost one being one parent and the rightmost one the other.

The mutate button just mutates the existing worms between the left and the right parent. The randomize button sets random genomes for the same six and the mate button performs the sexual thing with both parents leading to a a sixling .. erm .. if that is a word.

And then you can drag around stuff, like drag a worm onto the patch worm to make the patch have the dropped params. Or drop something on the left morph and something else on the right one, and then you can do a live morph between those.

The scratch area is just that - drag stuff there for later use in one of the active squares.

Clicking on a worm will copy it to the patch, this happens for the morph and scratch things in the same way ... but you can also drag worms to the patch square.

Then when you have a left and a right morph the live morph control can fade between the two. This can also be automated by using a LiveMorph module in the patch, with a checkbox to enable or disable the function.

That's about it ....

_________________
Jan

Last edited by Blue Hell on Wed Jul 27, 2016 5:13 pm; edited 1 time in total
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Wed Jul 27, 2016 5:04 pm    Post subject: Reply with quote  Mark this post and the followings unread

... when done recursively .. that is, pick a nice genome for one parent and another nice one for the other .. and breed and repeat ... you can do some manual eugenics on patches. And the scratch area can hold a smallish population. Oh and you can kill too of course - that's what the eraser is for - drag drop the eraser on a worm and it ceases to exist (which can be done on the scratch area only).

Nice in this case meaning that you like the sound.

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Wed Jul 27, 2016 5:15 pm    Post subject: Reply with quote  Mark this post and the followings unread

As for low CPU intensive .. you could try a sequencer making a melody and try to find a nice melody with the mutator.
_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
MusicMan11712



Joined: Aug 08, 2009
Posts: 990
Location: Out scouting . . .

PostPosted: Wed Jul 27, 2016 7:14 pm    Post subject: Reply with quote  Mark this post and the followings unread

Blue Hell wrote:
As for low CPU intensive .. you could try a sequencer making a melody and try to find a nice melody with the mutator.

Actually to save CPU, I was thinking maybe I could make a template that could be used to render randomized samples that could then be performed polyphonically either on a hardware or a software sampler or rompler--assuming I could understand it enough to generate the samples.
Back to top
View user's profile Send private message
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Thu Jul 28, 2016 1:19 am    Post subject: Reply with quote  Mark this post and the followings unread

Great idea, I'd just do it :-)
_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 22291
Location: The Netherlands, Enschede
Audio files: 212
G2 patch files: 319

PostPosted: Thu Jul 28, 2016 4:59 pm    Post subject: Reply with quote  Mark this post and the followings unread

I've made a FAQ entry for this on the Wren page to get a basic start on all this. Like what is where and what is it supposed to do. Most info is here in this thread already but added a couple of details there.

http://bluehell.electro-music.com/modules/forums.html#faqmorpher

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
MusicMan11712



Joined: Aug 08, 2009
Posts: 990
Location: Out scouting . . .

PostPosted: Fri Jul 29, 2016 6:44 am    Post subject: Reply with quote  Mark this post and the followings unread

Blue Hell wrote:
I've made a FAQ entry for this on the Wren page to get a basic start on all this. Like what is where and what is it supposed to do. Most info is here in this thread already but added a couple of details there.

http://bluehell.electro-music.com/modules/forums.html#faqmorpher

Thanks for the link to the randomizer section. I took a quick look and it will serve as a handy getting-started manual. I am already overwhelmed with so many tasks, I really wanted something that would help me get into as quickly as possible to see if it would be worth my while spending time relearning wren just to use the randomizer.

I just rebuilt my desktop pile of hardware (mainly E-Mu gear) and am now thinking it might be fun to generate some wren-based randomized presets that would work with my gear and which I could try to compile into banks that would work with E-Mu's free Proteus VX softsynth. So, that has now been added to my list of possible tasks.

Again, thanks for the link.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic
Page 1 of 2 [33 Posts]
View unread posts
View new posts in the last week
Goto page: 1, 2 Next
Mark the topic unread :: View previous topic :: View next topic
 Forum index » Instruments and Equipment » WREN
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum
e-m mkii

Please support our site. If you click through and buy from
our affiliate partners, we earn a small commission.


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use