Forums > MaxMSP

Max, Reason and Program Change

October 20, 2006 | 3:28 pm

Dear all,
I’m writing a Max patch that sends Midi messanges to Propellerhead Reason 3.0, through a Midi virtual port.

I need to use Malstrom and NN-XT sampler, and I need to change, through Max, their presets.
That’s because I need to play more that 16 Reason’s instruments from Max…

So, I would need to send a Program Change to Malstrom and to NN-XT.

But I notice that Reason doesn’t understand Program Changes!

So, how may I change a Reason preset from Max?

Regards,
Bruno

————————————————-
- http://www.brunozamborlin.com -
————————————————-


October 21, 2006 | 1:46 pm

I’m thinking there’s no solution to this problem…

I really can’t understand why Propellerhead took this decision…

Bruno

————————————————-
- http://www.brunozamborlin.com -
————————————————-


October 24, 2006 | 7:38 am

I just looked into what you’re talking about and yeah, it seems like there’s not an easy way to change the presets — which is pretty lame! I mean, you could use controller (or other) data from Max and control any of Malstrom’s 90-or-so controls that are automatable, but you can’t just change the main patch?

There’s gotta be a way, we may be missing something here. In the meantime, though, being able to alter all those controls has a lot of potential too. You *could*, with some doing, write something that gathered all the Malstrom’s settings once you change a particular patch, store it in a big ugly *coll*, then re-send the info back out when you want to switch presets. The name of the patch in Reason, I suppose, wouldn’t change. But if all the settings are what make up a preset, that would work…

Actually… I don’t know exactly how you’d get the MIDI control info back out of Reason into Max. Could take some fiddling….

–CJ


October 24, 2006 | 8:41 am

" with some doing, write something that gathered all the Malstrom’s
settings once you change a particular patch, store it in a big ugly
*coll*, then re-send the info back out when you want to switch
presets. The name of the patch in Reason, I suppose, wouldn’t change.
But if all the settings are what make up a preset, that would work…"

this is a nice idea!
still, i don’t know if in this way you could also change the wave type
of the various oscillators etc…
let me know if you have any hint
luca


October 24, 2006 | 9:56 am

Well, I can’t seem to figure it out. However, the CD video tutorial for Reason claims that with the updated *file browser* in 3.0, patch changes can now be controlled via MIDI messages. (Don’t know how, precisely.)

I’m on 2.5 at school, but will try and check it out on the demo … unless the ReWire portion is disabled, which I think it is. ach…

–CJ


October 24, 2006 | 10:20 am

Seejay James wrote:
> You *could*, with some doing, write something that
> gathered all the Malstrom’s settings once you change a particular
> patch, store it in a big ugly *coll*, then re-send the info back out
> when you want to switch presets.

Better to use a not so ugly pattrstorage, much easier to set up…

Stefan


Stefan Tiedje————x——-
–_____———–|————–
–(_|_ —-|—–|—–()——-
– _|_)—-|—–()————–
———-()——–www.ccmix.com


October 26, 2006 | 8:13 pm

Indeed.
But your solution would works only with Malstrom and Substractor, but how can I load a new XX-NT sampler Sound Bank?
I mean, if in the sampler I loaded a "piano" and I want to load a "violin", I can do that only with a Program Change or a Bank Selected message, and not editing some XX-NT parameter.

seejayjames, you told you read that with the updated *file browser* in 3.0, patch changes can now be controlled via MIDI messages.
If this is true, the problem would be solved… where did you read that?

Thanks,
Bruno

————————————————-
- http://www.brunozamborlin.com -
————————————————-


October 26, 2006 | 10:23 pm

ah. unfortunately I didn’t read it, I heard it in a video tutorial. I didn’t get to the part (if it’s actually there) that explained how to do it. I may get a chance to check it out again tonight and will let you know if there’s anything there.

I don’t know if a *program change* is actually "it" — is loading a new file from a hard drive the same as a Program Change? I mean, I know it is in theory, but in practice? How would you direct the computer / instrument to different folders then?

Little foggy for me… wondering if the instruments in Reason behave like the synths of old, where their patches were dedicated, or at least "banked" and their locations more or less fixed. Seems like Reason ought to have (perhaps) a bank limit of 128 files per bank, then just to selections thru program changes. But I don’t know if it does it like that.

-CJ


October 26, 2006 | 10:55 pm


October 27, 2006 | 9:07 am

Thank you Francisco. Yes, this solution works, but it is not so good… I mean, if you are at the first preset and you have to go to the 50th, there would be a little trouble…

I think I should use same other virtual sampler, like Native Instruments Kontakt 2 for instance. With Kontakt I think I will be able to send Program Change and Bank Selected messages…I hope.


October 27, 2006 | 10:14 am

I’m still using Reason 2.5 because version three can’t do some of the things 2.5 does, and this makes it incompatable with my patches. I wish I could switch over, though.
I have often encountered the same problem that you described, and (at least in 2.5) have found no MIDI-based solution. For sampling purposes, I have long since abandoned Reason in favor of my own Max/MSP sampler, which can interact much better in live situations (I based it largely on Ableton’s Live) but I never had the necessity to polish the program enough to share it. Of course, when I want to use a software-based piano or the like, then I use a commercial software sampler.

Solutions:
Instead of using Rewire, which has several restrictions in terms of controlling Reason, I opted for a rather messy but functional workaround. (As I stated: since then, I have largely been able to replace the things I did with Reason with Max/MSP patches, but a couple of older pieces I still do with Reason.) Using a shell object, I can open .rns files, switch between songs, focus on Reason, etc. Using a sendkeys object I can emulate keypresses (start, stop, record, goto beginning, etc.) Using a mouse emulation object, I can imitate a sequence of mouse manipulations. This is how I changed programs in the Reason devices. There are several ways to do this. The first time I tried, I used VBScript connected to MIDI through COM (MidiOx). This worked fine and allowed rapid prototyping, and led to a self-standing program written in VB. I then did my homework and wrote the same thing in C++, and later found the time to start making Max objects which led to the same programming nicely encapsulated in the Max-environment. Although I seldom use Reason anymore when working with Max, the shell, sendkeys and mouse-emulation objects have allowed me to communicate nicely with a number of other programs.

Good luck.


October 28, 2006 | 12:14 am

On 27-oct.-06, at 11:07, Bruno Zamborlin wrote:

> I think I should use same other virtual sampler, like Native
> Instruments Kontakt 2 for instance. With Kontakt I think I will be
> able to send Program Change and Bank Selected messages…I hope.

Beware, I think that it’s not possible in MOTU’s MachFive to send
Program Change neither. Well, I didn’t find a way when I tried and
finally used different midi channels instead.
Maybe a feature in MachFive v2, which is announced since almost 2
years…

p


October 28, 2006 | 1:13 pm

Ok, I’m using Halion 3 inside Max and it works fine, also Program Changes.

The only, little troble is that I have to show the Halion’s user interface when I want to add samples to a preset.
But it’s ok.

Bruno

————————————————-
- http://www.brunozamborlin.com -
————————————————-


Viewing 13 posts - 1 through 13 (of 13 total)