MC Recipe 03: MultiPan

    The main patch.

    The pandraw subpatcher.
    All recipes in this series: Recipe 00, Recipe 01, Recipe 02, Recipe 03

    MC Concepts

    • Using mc.mixdown~ for complex panning
    • Animated deviation using a metro
    • Using mc.slide~ to slow down movement


    Using the deviate message is fast becoming "the sound of MC". In this recipe, we use deviate to generate two different audio functions: deviation of the playback rate of the instances of an mc.groove~ object, and automated pan movement of each voice.
    The mc.mixdown~ object offers signal-based panning location based on the pancontrolmode in use. You can learn more about mc.mixdown~ options, including this attribute, in the Mixing and Panning in MC documentation guide.


    • mc.groove~ : an MC-wrapped version of the groove~ object for looped playback.
    • mc.mixdown~ : an object that mixes MC input to multiple output channels based on MC location signals.
    • mc.slide~ : slows the change in a signal

    Things to Note

    1. The deviate message can be used to generate different values for the playback rate of the each voice in an mc.groove~ object. This produces a cloud of sound from the simplest of sounds.
    2. Each time that mc.sig~ receives the deviate message, a new set of values will be created. By banging the deviate message with a metro, we get a new set of pan values every second.
    3. Using mc.slide~ with up- and down-values equal to the sample rate, it will take one second to move from the current values to a new set of values. This matches the one second interval of the metro object. We send the values to mc.mixdown~ using pancontrolmode 1, which places the stereo outputs at values of 0.0 and 1.0. This allows us to easily visualize the pan values using a multislider.