tutorials

MIDI and the Lemur


Sensors and Device Control

By ddg, Section Tutorials, Topic Sensors and Device Control
Posted on Mon Dec 26, 2005 at 03:12:15 PM EST

The JazzMutant Lemur is an incredibly versatile control surface for media applications. It allows you to create an interface match your performance needs, and communicates with your computer through an Ethernet connection (using the Open Sound Control messaging system). Unfortunately, there are relatively few software packages that speak OSC natively, so “bridge” software has been required to interface between OSC and the more common MIDI communication path.

Recently, JazzMutant updated their editor software to act as that bridge – taking OSC messages from a connected Lemur and converting them into MIDI messages. This opens a number of options for software and synthesizer control, and makes the Lemur a viable control surface in many new situations.

(859 words in story) Full Story

Writing Externals with Xcode 2.2


Developer

By tim, Section Tutorials, Topic Developer
Posted on Wed Oct 05, 2005 at 11:23:41 AM EST

Xcode is becoming increasing popular as an IDE to develop external objects for Max and MSP (Jitter support for Xcode is not yet supported, but is forthcoming). It offers several benefits over using Code Warrior, not least of which is that Xcode is free. However, if you've gotten used to the comforts of CodeWarrior, then Xcode can seem rather bizarre and alien.

In this article we will take a step-by-step approach on how to write externals from scratch using Apple's latest developer tools. We will not discuss the source code itself very much, as that information is well covered in the MaxMSP Software Development Kits. We will also approach this topic in a tutorial-like style. That means that we will let a few things slip in order to see what some common errors look like and how we can go about solving them.

Update [2006-1-26 8:53:54 by tim]: This article was originally written for Xcode 2.1, it has now been updated for Xcode 2.2. TAP.

Here we go:

(2353 words in story) Full Story

inVeSTigations (part 4)


MaxMSP

By gtaylor, Section Tutorials, Topic MaxMSP
Posted on Mon May 02, 2005 at 12:00:01 PM EST

The third installment in the inVeSTigations series added effects crossfading to our VST instrument/audio effect hosting possibilities, and demonstrated the use of the disable message that lets us load an effect and save on CPU cycles.

(1 comment, 1647 words in story) Full Story

inVeSTigations (part 3)


MaxMSP

By gtaylor, Section Tutorials, Topic MaxMSP
Posted on Thu Apr 28, 2005 at 12:00:01 PM EST

In inVeSTigations part 2, we looked at how we can load VST instruments using the vst~ object to load VST audio plug-ins in Max, and how to format and send MIDI messages to a virtual synth.

In this tutorial, we'll look at a new message to the vst object that lets us load plug-ins without interrupting our audio, and take a look at a novel way to mix the outputs of several VST plug-ins.

(968 words in story) Full Story

inVeSTigations (part 2)


MaxMSP

By gtaylor, Section Tutorials, Topic MaxMSP
Posted on Thu Apr 21, 2005 at 12:00:01 PM EST

One quick way to start having fun with Max is to use the vst~ object to host audio plug-ins or VST instruments; you can load plug-ins you already have (or find some free plug-ins) and get a little experience with using Max to send messages to them while you gather the courage to write your own audio processing patches or virtual synths.

I've written the patch you see below to help you get started. It should let you explore working with audio plug-ins.

(2557 words in story) Full Story

inVeSTigations (part 1)


MaxMSP

By gtaylor, Section Tutorials, Topic MaxMSP
Posted on Thu Apr 14, 2005 at 12:00:01 PM EST

One quick way to start having fun with Max is to use the vst~ object to host audio plug-ins or VST instruments; you can load plug-ins you already have (or find some free plug-ins) and get a little experience with using Max to send messages to them while you gather the courage to write your own audio processing patches or virtual synths.

I've written the patch you see below to help you get started. It should let you explore working with audio plug-ins.

(2340 words in story) Full Story

How do I turn that text stuff into a patch?


MaxMSP

By gtaylor, Section Tutorials, Topic MaxMSP
Posted on Mon Apr 04, 2005 at 12:00:01 PM EST

As you read the Max list, you'll probably see something that looks like this:

(367 words in story) Full Story

The Poly Papers (part 1)


MaxMSP

By ddg, Section Tutorials, Topic MaxMSP
Posted on Mon Mar 28, 2005 at 12:00:01 PM EST

- by Darwin Grosse

One of the more difficult things for many beginning Max/MSP users is dealing with polyphony. So I thought I'd write up a few articles about the poly~ object, and help take some of the heat off of a new user's head.

One thing that is important to understand about the MSP portion of Max/MSP is the creation of a DSP chain. When you create a patch containing audio functions, all of the signal-rate objects are used to create a chain of DSP functions that will execute once audio is activated. In order to maintain a stable audio path, this set of functions, called the DSP chain, is compiled at runtime, and cannot be changed without interrupting the signal path.

(2113 words in story) Full Story

Things OTHERS wish people had told THEM


MaxMSP

By gtaylor, Section Tutorials, Topic MaxMSP
Posted on Mon Mar 21, 2005 at 12:00:01 PM EST

When I started this series of short "advice" pieces to Max/MSP/Jitter beginners, I also decided to ask a number of my friends and colleagues about what their ideas of what good advice might be so that you won't be left with just my admittedly biased advice set.

(529 words in story) Full Story

Things I wish HAD existed (so that people could have told me about them)


MaxMSP

By gtaylor, Section Tutorials, Topic MaxMSP
Posted on Mon Mar 14, 2005 at 12:00:01 PM EST

You, the beginner, are living in a golden age.

(473 words in story) Full Story

Things I wish people had told me, continued


MaxMSP

By gtaylor, Section Tutorials, Topic MaxMSP
Posted on Mon Mar 07, 2005 at 12:00:01 PM EST

I learned Max, MSP, and Jitter as a non-student, which meant that I pretty much taught myself by reading and making patches and then trying to make them work. That means that my following two pieces of advice may not pertain to you if you're taking a course that involves you needing to learn Max/MSP/Jitter. But I think they're useful to consider anyway, even if they might seem a trifle odd at first glance:

(563 words in story) Full Story

Things I wish people had told me (part zero)


MaxMSP

By gtaylor, Section Tutorials, Topic MaxMSP
Posted on Mon Feb 28, 2005 at 12:00:01 PM EST

I qualify as a beginner because I've been one. Three times, in fact.

If you really are a beginner, then you'll never have to face learning Max, then learning MSP a bunch of years later, and then learning Jitter after that. You get to learn them all at once, and since they all have a lot more in common with each other than not, you needn't endure what seemed to me to be paradigm shifts with the introduction of each new bit.

I envy you, actually. And I'm about to envy you even more, since it occurs to me that I can tell you some of the things I wish people had told me that might have made my life easier.

In fact, I asked a few friends and acquaintances and some of the people whose names you see often on the Max list what they wish they'd known early on. And you'll be seeing those things periodically appearing in bite=sized chunks. There were a few bits of advice I got from other people that I don't agree with, but will pass along anyway.

Okay. The first one (drum roll):

(675 words in story) Full Story

welcome


Education

By gtaylor, Section Tutorials, Topic Education
Posted on Mon Feb 21, 2005 at 12:00:01 PM EST

Welcome to the beginner's corner. I will be your designated beginner for the duration of this journey. At the conclusion of your journey, I will be telling you really boring things you already know.

I have been carefully selected for this task because um...well, there are a couple of reasons. First, I have a lousy memory, so I tend to forget the things that clever people know as easily as you know your own phone number. Secondly, I've been involved in documentattion stuff for Cycling '74 for a while. As you may know, the skills required to document something and the skills necessary to use it are often very different. So I tend to know where things are rather than knowing what they are. If you're a beginner, then knowing where things are is the best place to start.

Finally, although I have forgotten a lot about using Max/MSP (stuff I'll have to figure out again in order to talk to you about, incidentally), I have a pretty clear memory of what it felt like to be staring at the big white space in a new patcher window and wondering what to do first/next, to stare at someone else's Max patch like a cow at a passing train, or to wonder if I would ever spend any of my Maxing life making something of my own rather than cadging patches from other people and feeling like I only knew enough to add one patch cord here or there.

I hope I can be of some assistance to you in overcoming that fear of white space, in learning how to "read" the work of others, and in helping you to escape a lifetime of dreary dependence on the work of other Max/MSP/Jitter programmers (you know, that old saw about giving someone a fish (so they've got a meal) versus teaching them how to fish (thusguaranteeing the promise of dinners to come)).

As a beginner, you can comfort yourself with the thought that everyone stood where you now stand (although they didn't have this set of articles to read). What is it that those whizzy power user types have that you don't?

A little good advice, some hours of experience, and the knowledge of where to look or who to ask.

Some of that good advice takes the form of a patch. Some of it appears as a list of URLs, and some of it is plain old text. I hope that what's to come will take all of those forms, and be of some assistance.

If you've got any questions you'd like me to consider discussing, you can email me and ask. It'd be easiest if you labeled your email so that I can spot it (e.g., Beginner's question) so that I can spot it easily--often, despite my overzealous spam filter. HINT: do not include the words, Rolex, Viagra, Teens, or Refinance in your email title.

Well... so much for introductions. I think that I'll start next time by telling you the things I wish people had told me when I started. See you then.

Comments >>

New Article: Max Networking Basics


MaxMSP

By bbn, Section Tutorials, Topic MaxMSP
Posted on Tue Sep 14, 2004 at 01:55:01 AM EST

In order to maximize the potential of the built-in networking classes that are new with version 4.5 of Max, it's helpful to understand a few things about the way that modern network protocols operate. This article is intended to help you get off the ground by answering some basic networking questions.

Comments >>

New Article: Event Priority in Max (Scheduler vs. Queue)


MaxMSP

By jkc, Section Tutorials, Topic MaxMSP
Posted on Fri Sep 10, 2004 at 01:44:02 AM EST

"The following article is designed to shed some light on the different priority levels of Max events. We will cover low priority events, high priority events, threading issues related to these two priority levels, and when it is important and/or useful to move events from one priority level to the other. We will also cover the MSP audio thread and how it can interact with low and high priority events. And finally, we will touch on some additional threading issues that will be of interest to Javascript, Java and C developers."

Comments >>

<< Previous 15 Next 15 >>
Navigate the Articles

To navigate the articles:

  • sort by Topic or Section by clicking on the Topic/Section link at the top of any article
  • sort by Author's name to get a complete list of his/her articles

We are always open to new ideas and potential contributions for the site. If this interests you, please contact us.

Events Calendar

October 2008

M T W T F S S
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
Submit Your Event