Anyone tried porting their max patcher to C++/Objective-C?

    Dec 07 2012 | 9:03 am
    I'm thinking of doing it because efficiency and more complex DSP.
    Or is it simpler to just write a specific external? Are there some tutorials to get you going on externals?

    • Dec 07 2012 | 10:10 am
      hi, it's obviously possible, you will find some tutorials if you search on google or in the forum search. for example : (a lot of references here).
      PS : you may post your message on the DEV section of the forum for better results. Good luck ;) Cheers.
    • Dec 07 2012 | 10:17 pm
      thanks mate. I'll come to play with the big boys when I feel ready. :)
    • Dec 07 2012 | 10:48 pm
      Porting an entire patcher to «procedural/oo language of your choice» is a lot of work, particularly if you're going to implement your own MIDI/DSP/network drivers, UI handlers, drawing code, etcetc. It's not quite as hard as it used to be 10-20 years ago because development tools are making this less tedious. Still, a lot of work.
      Developing an external isn't hard at all once you've got the hang of it. And it means you can leave the tedious stuff to the Max engine.
      Analyze your patch to see where the heavy-duty stuff is going on: heavy message passing between Max objects; DSP with long chains of filters; etc. I've written custom externals for complex sections of DSP chain and managed to shave off a bit of CPU usage. Don't expect miracles, but you can improve efficiency with judicious use of custom externals. I have seen some pretty big performance enhancements in the Max world when moving from a lot of [if]s and [expr]s to hand-coding, but I daresay on modern hardware the difference is no longer quite as striking.
      In addition to the Max/MSP SDK itself, have a look at Ichiro Fujinaga's tutorials . Also, Eric Lyon has a book which I think is out now.
    • Dec 08 2012 | 11:01 am
      thanks for the tips! Searched for eric lyon and found an analysis he did on Aphex Twin. Great!