Old 11-02-2010, 08:02 AM   #1
Bernstraw
Human being with feelings
 
Join Date: Sep 2010
Posts: 388
Default JS MIDI plugin : Vmorph

Vmorph is a midi plugin made in collaboration with Reflected :
https://stash.reaper.fm/7063/Vmorph

[IMG]http://img229.**************/img229/3294/vmorph.png[/IMG]

This is a JS adaptation of AudioMulch's Metasurface.
It stores parameter values of instruments and effects in patch dots, and interpolates between these dots while dragging the cursor on the XY pad or following time based vectors.
Short demo

Setup :
1) In a track insert Vmorph then Jeffo's MIDItoReaControlPath then instruments and effects.
2) Use midi learn in your plugins to control their parameters from Vmorph (60 parameters maximum).
3) Use parameter modulation In Vmorph to link it back and store values from plugins.

update v1.01 (04-16-2011) :
* CTRL click a CC row to activate "snap" mode :
value snaps to the nearest dot (thanks caseyjames)

Watch this video tutorial to learn the basics of Vmorph :

[IMG]http://img688.**************/img688/3372/videothumb.png[/IMG]

Read the file description for complete documentation (or click the JS edit button)
Have fun with it and please tell me if you find any bug.

How to record the movement of the cursor :
[IMG]http://img408.**************/img408/8808/recordmvt.th.gif[/IMG]
Quote:
5) AUTOMATION :
* You can record the target position with X-Y envelopes.
* Set "edition : read envelopes" to read or render your project.
Please note that you must not change the view to read the correct coordinates !
Quote:
Originally Posted by Jeffos View Post
for another sort of "automation", you can also record the CCs outputed by this JS in a standard MIDI item: track in "MIDI output" mode, then, when playing the item back, MIDItoReaControlPath will also push those recorded CCs to the control path. For better timing accuracy, when playing, "Anticipative FX processing" should be disabled for that track (there are actions for that).
Quote:
Originally Posted by Veto View Post
i did a track-template for almost every control of Synth1 (v1.12).
(...) Its completly routed/named and ready to go.
MorphingSynth1.RTrackTemplate

Last edited by Bernstraw; 04-16-2011 at 06:12 AM.
Bernstraw is offline   Reply With Quote
Old 11-02-2010, 08:48 AM   #2
terence
Human being with feelings
 
Join Date: Aug 2007
Posts: 73
Default

im speechless!
thanks a lot for sharing.
terence is offline   Reply With Quote
Old 11-02-2010, 09:44 AM   #3
Guido
Human being with feelings
 
Join Date: Nov 2007
Posts: 674
Default

Holy Crap Batman!!!! I didnt know this kinda thing was possible in JS...wow...thanks much!

Guido
Guido is offline   Reply With Quote
Old 11-02-2010, 09:52 AM   #4
NoiseMan
Human being with feelings
 
NoiseMan's Avatar
 
Join Date: Jan 2008
Location: Switzerland
Posts: 522
Default



Only downside: it's going to be Thursday night until I will have some serious bit of quality time with this gem.


(Little, little nitpick: Why didn't you consider to use REAPER "more or less standard" modifier keys? Like <ALT> for deleting things, for example?)
NoiseMan is offline   Reply With Quote
Old 11-02-2010, 10:12 AM   #5
carbon
Human being with feelings
 
carbon's Avatar
 
Join Date: Feb 2008
Location: Eesti
Posts: 2,358
Default

Impressive!

Would it also be possible in JS, the plugin to record the movements of the square?

Like - when you click and drag the square, it records and when you let go, it plays back.
__________________
KasparTORN
carbon is offline   Reply With Quote
Old 11-02-2010, 10:21 AM   #6
nofish
Human being with feelings
 
nofish's Avatar
 
Join Date: Oct 2007
Location: home is where the heart is
Posts: 8,574
Default

Wow.
Thanks.
nofish is offline   Reply With Quote
Old 11-02-2010, 10:51 AM   #7
musicbynumbers
Human being with feelings
 
musicbynumbers's Avatar
 
Join Date: Jun 2009
Location: brighton, uk
Posts: 12,602
Default

This looks like the perfect partner for my p5 glove, wacom and my wii controllers!

Thanks!
musicbynumbers is offline   Reply With Quote
Old 11-02-2010, 10:55 AM   #8
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 22,623
Default

ReaMorph!


Amazing!
EvilDragon is offline   Reply With Quote
Old 11-02-2010, 11:20 AM   #9
musicbynumbers
Human being with feelings
 
musicbynumbers's Avatar
 
Join Date: Jun 2009
Location: brighton, uk
Posts: 12,602
Default

Only little thing I have just found is that reaper has to either have the track armed or be playing to edit it, it's because I have the preference set to NOT run fx when stopped.

Oh well, I can live with that!

..(but wish that could be turned off per track)
musicbynumbers is offline   Reply With Quote
Old 11-02-2010, 12:15 PM   #10
Reflected
Human being with feelings
 
Reflected's Avatar
 
Join Date: Jul 2009
Posts: 2,004
Default

You guys really owe us for this one. :X


To Schwa and Justin, it will be really helpful if you can help us with the following feature requests in order to make drastic improvments with the precision and speed up the workflow in Vmorph:


'Link from parameter' vs 'MIDI learn', behaviour improvements.

Link from parameter -= Touch Mode =- ... Mockup
Reflected is offline   Reply With Quote
Old 11-02-2010, 12:22 PM   #11
lowellben
Human being with feelings
 
lowellben's Avatar
 
Join Date: Aug 2010
Location: In a home
Posts: 2,864
Default

Quote:
Originally Posted by carbon View Post
Impressive!

Would it also be possible in JS, the plugin to record the movements of the square?

Like - when you click and drag the square, it records and when you let go, it plays back.

So wait, you can't automate this plugin at all? how can you record it's movement then?

I'm lost -
__________________
47.8% of statistics are made up.
lowellben is offline   Reply With Quote
Old 11-02-2010, 12:30 PM   #12
musicbynumbers
Human being with feelings
 
musicbynumbers's Avatar
 
Join Date: Jun 2009
Location: brighton, uk
Posts: 12,602
Default

Indeed would be great to get those two requests in!

Quote:
Originally Posted by Reflected View Post
You guys really owe us for this one. :X


To Schwa and Justin, it will be really helpful if you can help us with the following feature requests in order to make drastic improvments with the precision and speed up the workflow in Vmorph:


'Link from parameter' vs 'MIDI learn', behaviour improvements.

Link from parameter -= Touch Mode =- ... Mockup
musicbynumbers is offline   Reply With Quote
Old 11-02-2010, 12:31 PM   #13
musicbynumbers
Human being with feelings
 
musicbynumbers's Avatar
 
Join Date: Jun 2009
Location: brighton, uk
Posts: 12,602
Default

Quote:
Originally Posted by lowellben View Post
So wait, you can't automate this plugin at all? how can you record it's movement then?

I'm lost -
You should be able to since there are envelopes for X and Y.
musicbynumbers is offline   Reply With Quote
Old 11-02-2010, 12:37 PM   #14
lowellben
Human being with feelings
 
lowellben's Avatar
 
Join Date: Aug 2010
Location: In a home
Posts: 2,864
Default

Quote:
Originally Posted by musicbynumbers View Post
You should be able to since there are envelopes for X and Y.
How is that different than movements of the squares?
__________________
47.8% of statistics are made up.
lowellben is offline   Reply With Quote
Old 11-02-2010, 01:20 PM   #15
Bernstraw
Human being with feelings
 
Join Date: Sep 2010
Posts: 388
Default

How to record the movement of the cursor :
[IMG]http://img408.**************/img408/8808/recordmvt.th.gif[/IMG]
Quote:
5) AUTOMATION :
* You can record the target position with X-Y envelopes.
* Set "edition : read envelopes" to read or render your project.
Please note that you must not change the view to read the correct coordinates !
Thanks for other comments ! As for modifier keys I go by what I like - haven't used Reaper enough yet to know the "standard" behaviour
Bernstraw is offline   Reply With Quote
Old 11-02-2010, 01:24 PM   #16
lowellben
Human being with feelings
 
lowellben's Avatar
 
Join Date: Aug 2010
Location: In a home
Posts: 2,864
Default

Awesome, thanks for the GIF!

What theme are you using, is that available at the Stash? I really like it

Ben
__________________
47.8% of statistics are made up.
lowellben is offline   Reply With Quote
Old 11-02-2010, 01:40 PM   #17
Bernstraw
Human being with feelings
 
Join Date: Sep 2010
Posts: 388
Default

Quote:
Originally Posted by lowellben View Post
What theme are you using, is that available at the Stash?
Yes, here you go :
https://stash.reaper.fm/6668/cReam.ReaperThemeZip
That's the first I did with reaper (instead of actually learning how to use it ^^).
Bernstraw is offline   Reply With Quote
Old 11-02-2010, 02:45 PM   #18
DarkStar
Human being with feelings
 
DarkStar's Avatar
 
Join Date: May 2006
Location: Surrey, UK
Posts: 17,791
Default

... it's added to the Third-Party JS FX Library.
__________________
DarkStar ... interesting, if true. . . . Inspired by ...

Last edited by DarkStar; 11-02-2010 at 03:01 PM.
DarkStar is offline   Reply With Quote
Old 11-02-2010, 03:12 PM   #19
captain caveman
Human being with feelings
 
Join Date: Feb 2008
Posts: 1,616
Default

Wow, this is great!
captain caveman is offline   Reply With Quote
Old 11-02-2010, 07:42 PM   #20
audioguytodd
Human being with feelings
 
audioguytodd's Avatar
 
Join Date: Mar 2008
Location: Atlanta, GA
Posts: 1,050
Default

Wow!! That looks very interesting. I will give it a go tomorrow.
Thanks
__________________
Comp Specs: WIN XPSP3, Q6600, ASUSP5K, 3 GB PC6400 RAM, Focusrite Saffire, AlphaTrack, lots of plugins and hardware.
audioguytodd is offline   Reply With Quote
Old 11-02-2010, 08:21 PM   #21
dub3000
Human being with feelings
 
dub3000's Avatar
 
Join Date: Mar 2008
Location: Sydney, Australia
Posts: 3,813
Default

whoa. very impressive.
dub3000 is offline   Reply With Quote
Old 11-02-2010, 08:23 PM   #22
strunkdts
Human being with feelings
 
Join Date: Jun 2009
Posts: 2,565
Default

awesome work guys!!!

MetaSurface in AudioMulch is the absolute bomb! and the main reason I use AM so much.

very cool.
strunkdts is offline   Reply With Quote
Old 11-03-2010, 09:47 AM   #23
Jeffos
Mortal
 
Jeffos's Avatar
 
Join Date: Dec 2008
Location: France
Posts: 1,969
Default

isn't it beautifull !? I love JS. I love these forums.
Also, I like the old school text edit control à la "Hardware front panel". ha ha!

Kudos Bernstraw!

for another sort of "automation", you can also record the CCs outputed by this JS in a standard MIDI item: track in "MIDI output" mode, then, when playing the item back, MIDItoReaControlPath will also push those recorded CCs to the control path. For better timing accuracy, when playing, "Anticipative FX processing" should be disabled for that track (there are actions for that).
Jeffos is offline   Reply With Quote
Old 11-03-2010, 09:57 AM   #24
DarkStar
Human being with feelings
 
DarkStar's Avatar
 
Join Date: May 2006
Location: Surrey, UK
Posts: 17,791
Default

Maybe it's just me, but I'm having trouble following the tutorial video. (I've never seen or used MetaSurface.) Iis there a way to download it and play if "offline"?

Or, how about a step-by-step guide for dummies?
__________________
DarkStar ... interesting, if true. . . . Inspired by ...
DarkStar is offline   Reply With Quote
Old 11-03-2010, 10:44 AM   #25
musicbynumbers
Human being with feelings
 
musicbynumbers's Avatar
 
Join Date: Jun 2009
Location: brighton, uk
Posts: 12,602
Default

Quote:
Originally Posted by DarkStar View Post
Maybe it's just me, but I'm having trouble following the tutorial video. (I've never seen or used MetaSurface.) Iis there a way to download it and play if "offline"?

Or, how about a step-by-step guide for dummies?
If you can't get anything to work AND have "run fx when stopped" un-ticked then you have to make sure you have the track armed or playing with an item on it or nothing will work.

Found that out after a few mins
musicbynumbers is offline   Reply With Quote
Old 11-03-2010, 10:49 AM   #26
carbon
Human being with feelings
 
carbon's Avatar
 
Join Date: Feb 2008
Location: Eesti
Posts: 2,358
Default

Quote:
Originally Posted by carbon View Post
Impressive!

Would it also be possible in JS, the plugin to record the movements of the square?

Like - when you click and drag the square, it records and when you let go, it plays back.
What I meant was this:
https://stash.reaper.fm/oldsb/433340/white_grains.avi

EDIT: The gif didn't play very well - uploaded an *.avi instead
__________________
KasparTORN

Last edited by carbon; 11-03-2010 at 11:10 AM.
carbon is offline   Reply With Quote
Old 11-03-2010, 02:25 PM   #27
Bernstraw
Human being with feelings
 
Join Date: Sep 2010
Posts: 388
Default

Quote:
Originally Posted by Jeffos View Post
Also, I like the old school text edit control à la "Hardware front panel". ha ha!
JS FR : get_string() dialog + string variables + gfx_drawstring

Quote:
Originally Posted by Jeffos View Post
for another sort of "automation", you can also record the CCs outputed by this JS in a standard MIDI item: track in "MIDI output" mode, then, when playing the item back, MIDItoReaControlPath will also push those recorded CCs to the control path.
Thanks for this ! Much better than X-Y envelopes, I find that most envelopes recorded from sliders/knobs/pads are very imprecise (maybe an option I missed somewhere).

Quote:
Originally Posted by DarkStar View Post
I'm having trouble following the tutorial video. (I've never seen or used MetaSurface.) Iis there a way to download it and play if "offline"?
Or, how about a step-by-step guide for dummies?
You can register to Vimeo and download the video but maybe others can answer your questions too...
If I find some time, I'll try to make an easy guide in html with snapshots.

Quote:
Originally Posted by carbon View Post
Cool, free hand loops ! Not possible in Vmorph, but would be an interesting feature.
Bernstraw is offline   Reply With Quote
Old 11-03-2010, 03:09 PM   #28
J Reverb
Human being with feelings
 
Join Date: Jul 2009
Posts: 637
Default

Super cool ! this just completely rocks, with sugar on top Thanks !
J Reverb is offline   Reply With Quote
Old 11-03-2010, 03:22 PM   #29
IXix
Human being with feelings
 
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,354
Default

Kinky!
IXix is offline   Reply With Quote
Old 11-03-2010, 07:01 PM   #30
caseyjames
Human being with feelings
 
caseyjames's Avatar
 
Join Date: Jul 2009
Posts: 628
Default

I'm looking forward to testing this tonight.

What a stupendous machine!
caseyjames is offline   Reply With Quote
Old 11-04-2010, 05:07 AM   #31
Jeffos
Mortal
 
Jeffos's Avatar
 
Join Date: Dec 2008
Location: France
Posts: 1,969
Default

Quote:
Originally Posted by Bernstraw View Post
JS FR : get_string() dialog + string variables + gfx_drawstring
LOL! I dare you're dreaming a bit but on the other hand, as I noticed some sort of "love for fresh faces": enter the FR, will vote!
In case the dream doesn't come true, this other FR might interest you (would indirectly allow us defining our own gfx_drawstring, and given your code I think you could like it)

Quote:
Originally Posted by Bernstraw View Post
Thanks for this ! Much better than X-Y envelopes, I find that most envelopes recorded from sliders/knobs/pads are very imprecise (maybe an option I missed somewhere).
Yeah, very handy: we're just talking about "automation items", here
Jeffos is offline   Reply With Quote
Old 11-06-2010, 04:41 PM   #32
Bernstraw
Human being with feelings
 
Join Date: Sep 2010
Posts: 388
Default

Quote:
Originally Posted by Jeffos View Post
LOL! I dare you're dreaming a bit but on the other hand, as I noticed some sort of "love for fresh faces": enter the FR, will vote!
More realistically, I made the request to have a keyboard_char variable to read keystrokes (when plugin has keyboard focus) :
http://forum.cockos.com/showthread.php?t=68291

Quote:
Originally Posted by Jeffos View Post
In case the dream doesn't come true, this other FR might interest you (would indirectly allow us defining our own gfx_drawstring, and given your code I think you could like it)
Voted. Gave me instant MO5 nostalgia

Quote:
Originally Posted by Jeffos View Post
we're just talking about "automation items", here
We're "just" talking multiple takes, easy looping, stretching, mute, etc... awesome !
Bernstraw is offline   Reply With Quote
Old 11-08-2010, 07:57 PM   #33
Mr. Data
Human being with feelings
 
Mr. Data's Avatar
 
Join Date: Sep 2008
Location: Location
Posts: 5,281
Default

This is simply amazing!!!



-Data
__________________
German Language Pack for REAPER? Get it here! ... Donate? Yeah!! | Are you nuts? | Maybe
Deutsche Sprachdatei für REAPER? Hier zu haben! ... Spenden? Klar! | Spinnst wohl!? | Vielleicht
Mr. Data is online now   Reply With Quote
Old 11-25-2010, 12:14 PM   #34
Bernstraw
Human being with feelings
 
Join Date: Sep 2010
Posts: 388
Default

I love Synth1, thanks !
In the template the plugin is named "Vmorph.txt" (I think Opera f.e. adds ".txt" to JS files) so I had to replace it by "Vmorph" (line 28) to make it work
Quote:
Originally Posted by Veto View Post
I was a bit limited due to the max number of controls in Vmorph (60) so no arp controls, amp env and some on/off controls.
You can link 2 Vmorph together with param mod for X and Y (select read envelopes in the 2nd Vmorph) and then set up the rest of Synth1's parameters in the 2nd Vmorph... well it's a bit hardcore, I wish JS plugins had more parameters available too !

Last edited by Bernstraw; 11-25-2010 at 12:25 PM.
Bernstraw is offline   Reply With Quote
Old 01-16-2011, 05:01 AM   #35
Joystick
Human being with feelings
 
Joystick's Avatar
 
Join Date: Jul 2008
Location: Athens / Greece
Posts: 439
Default

This plugin is just great for Sound Design, thanks people!
__________________
Animating the air with sound. Using science, art, design, engineering and intuition.
www.soundfellas.com
Joystick is offline   Reply With Quote
Old 01-27-2011, 03:22 PM   #36
caseyjames
Human being with feelings
 
caseyjames's Avatar
 
Join Date: Jul 2009
Posts: 628
Default

Is there anyway to save parameters of this plugin as a preset? I want to set up cc's for a synth so that I can reuse the same ccmap but reapers preset save doesn't capture anything.

Thanks
Casey
caseyjames is offline   Reply With Quote
Old 01-27-2011, 03:33 PM   #37
Bernstraw
Human being with feelings
 
Join Date: Sep 2010
Posts: 388
Default

Quote:
Originally Posted by caseyjames View Post
Is there anyway to save parameters of this plugin as a preset? I want to set up cc's for a synth so that I can reuse the same ccmap but reapers preset save doesn't capture anything.

Thanks
Casey
If you use Reaper V3, you shouldn't have any pb.
With V4, I think you're better off using fx chains since saving presets is broken for plugins such as sequencer baby, vmorph and others (when saved variables are not actual sliders).
I did make a bug report in the pre-release forum, but it must have been lost in the flow.
If you have time, please report it again.
__________________
JS plugin : Vmorph
V4 theme : GrayMatter
Bernstraw is offline   Reply With Quote
Old 04-16-2011, 06:10 AM   #38
Bernstraw
Human being with feelings
 
Join Date: Sep 2010
Posts: 388
Default

A small update :
https://stash.reaper.fm/7063/Vmorph

* (v1.01) CTRL click a CC row to activate "snap" mode :
value snaps to the nearest dot (thanks caseyjames)

Ex :
Link a CC to the filter mode of synth1, set one dot to LP12 another one to BP12.
Morph between the two dots and synth1 will cycle through all the intermediate modes (LP12, LP24, HP12 to BP12).
This is unwanted most of the time for this type of "switch" parameters.
Instead, Ctrl click on the CC row and its value will snap to the nearest dot : synth1 will directly switch between LP12 and BP12.
__________________
JS plugin : Vmorph
V4 theme : GrayMatter
Bernstraw is offline   Reply With Quote
Old 04-16-2011, 07:02 AM   #39
Arnar
Human being with feelings
 
Arnar's Avatar
 
Join Date: Jan 2007
Location: Smokie Bay.
Posts: 796
Default

Very nice , trying this out.
__________________
In Music We Trust.
http://soundcloud.com/hazar
http://soundcloud.com/ifthenrun
Arnar is offline   Reply With Quote
Old 04-16-2011, 07:42 AM   #40
Arnar
Human being with feelings
 
Arnar's Avatar
 
Join Date: Jan 2007
Location: Smokie Bay.
Posts: 796
Default

Would it be possible to hook up a chaos pad X/Y controller for this ?
__________________
In Music We Trust.
http://soundcloud.com/hazar
http://soundcloud.com/ifthenrun
Arnar is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 09:21 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.