Variable-rate looping sample playback
| Name | Type | Opt | Description |
|---|---|---|---|
| buffer-name | symbol | Obligatory. Names the buffer~ object containing the sample to be used by groove~ for playback. | |
| number-of-outputs | int | opt | A second argument may specify the number of output channels: 1, 2, or 4. The default number of channels is 1. If the buffer~ being played has fewer channels than the number of groove~ output channels, the extra channels output a zero signal. If the buffer~ has more channels, channels are mixed. |
| int | sample-playback-position (milliseconds) [int] | In all inlets: Converted to . |
| float | sample-playback-position (milliseconds) [float] | In left inlet: Sets the sample playback position in milliseconds. sets the playback position to the beginning. In middle inlet: Sets the sample playback start position in milliseconds. In right lnlet: Sets the sample playback start position in milliseconds. |
| list | loop-start/end (milliseconds) [list] | In middle and right inlets: A list may be used to specify time in one of the Max time formats. |
| anything | loop-start/end (milliseconds) [list] | In middle and right inlets: Equivalent to list. |
| (mouse) | Double-clicking on a groove~ object opens the sample display window of the buffer~ object associated with the groove~ object. | |
| loop | behavioral-flag (0 or 1) [int] | The word , followed by , turns on looping. turns off looping. By default, looping is off. |
| loopinterp | behavioral-flag (0 or 1) [int] | The word , followed by , enables interpolation about start and end points for a loop. turns off loop interpolation. By default, loop interpolation is off. |
| set | behavioral-flag (0 or 1) [int] | The word , followed by a symbol, switches the buffer~ object containing the sample to be used by groove~ for playback. |
| reset | Clears the start and end loop points. | |
| setloop | start and end-points (milliseconds) [list] | The word , followed by two numbers, sets the start and end loop points in milliseconds. |
| signal | In left inlet: Defines the sample increment for playback of a sound from a buffer~. A sample increment of 0 stops playback. A sample increment of 1 plays the sample at normal speed. A sample increment of -1 plays the sample backwards at normal speed. A sample increment of 2 plays the sample at twice the normal speed. A sample increment of .5 plays the sample at half the normal speed. The sample increment can change over time for vibrato or other types of speed effects. The groove~ object uses the buffer~ sampling rate to determine playback speed. If a loop start and end have been defined for groove~ and looping is turned on, when the sample playback reaches the loop end the sample position is set to the loop start and playback continues at the current sample increment. In middle inlet: Sets the starting point of the loop in milliseconds. In right inlet: Sets the end point of the loop in milliseconds. |
|
| startloop | Causes groove~ to begin sample playback at the starting point of the loop. If no loop has been defined, groove~ begins playing at the beginning. | |
| stop | The word will cause groove~ to stop playback until the next , , or message is received. |
| Name | Type | g/s | Description |
|---|---|---|---|
| loopend | atom | Sets the loop end point. The end point time can be specified in any of the Max time formats. | |
| loopstart | atom | Sets the loop start point. The start point time can be specified in any of the Max time formats. | |
| transport | symbol | The name of a transport object with which to associate. By default the global transport is used. |
| Name | Description |
|---|---|
| 2d.wave~ | Two-dimensional wavetable |
| buffer~ | Store audio samples |
| play~ | Position-based sample playback |
| record~ | Record sound into a buffer |
| transport | control a master clock and report time values. |
| MSP Tutorial 14: Sampling - Playback with loops | MSP Tutorial 14: Sampling - Playback with loops |
| MSP Tutorial 20: MIDI control - Sampler | MSP Tutorial 20: MIDI control - Sampler |