Skip to content

maxlib

Contributors

People who contribute to this project.

Objects

  • allow allow filters incoming floats or symbols, passing a value only when it appears in its argument list.
  • arbran maxlib/arbran generates random floating-point values conforming to a piecewise probability density defined by two arrays: a value array and a probability array.
  • arraycopy arraycopy copies data from a source array to a destination array, either copying the whole array or a selected range.
  • beat beat is a beat tracker that analyzes incoming note-number events and reports the interval in milliseconds and the estimated tempo in beats per minute, with a bang indicating an “on beat” event.
  • beta beta generates beta-distributed random numbers for control use, outputting a float each time its left inlet receives a bang.
  • bilex bilex generates bilinearly exponentially distributed random numbers for control use.
  • cauchy cauchy generates Cauchy-distributed random numbers for control use, outputting a float each time it receives a bang.
  • chord chord tries to detect chords from MIDI note numbers and note velocities, such as those supplied by notein.
  • delta delta calculates and outputs the first- or second-order difference between control values, making it useful for analyzing changes in a numeric stream.
  • deny deny filters floats or symbols, blocking values listed in its creation arguments and passing values that are not listed.
  • dist dist sends incoming data, including arbitrary messages, to a configurable list of receive objects.
  • divide divide is like Pd’s / object but outputs a floating-point result when either the leftmost or second inlet changes.
  • divmod divmod calculates integer division and modulo for a dividend and divisor, outputting the quotient and remainder.
  • edge maxlib/edge analyzes incoming floats and outputs a bang when the values cross zero.
  • expo expo generates exponentially distributed random control values.
  • fifo fifo is a first-in, first-out buffer for storing floats.
  • gauss gauss generates Gaussian-distributed random numbers for control use, outputting the next value as a float when it receives a bang.
  • gestalt gestalt detects changes in the gestalt of monophonic melodies from note number, note velocity, and a positive reference duration in milliseconds.
  • history history calculates an average of float values received within the last N milliseconds and outputs their tendency as 1 for rising or -1 for falling.
  • ignore ignore delays an input value and outputs it only if no new value arrives during the specified interval, making it a control-message filter.
  • iso iso queues lists of note pitches and attack points for playback, outputting floats that can drive objects such as makenote.
  • lifo lifo is a last-in, first-out buffer for storing floats.
  • linear linear generates linearly distributed random numbers for control use.
  • listfifo listfifo is a first-in, first-out buffer for storing lists.
  • maxlib maxlib is the Music Analysis eXtensions Library, a collection of Pd objects for music and MIDI analysis, math, timing, routing, filtering, buffering, random distributions, and experimental processes.
  • minus minus performs chained subtraction, outputting the result as inlet 0 minus the values in the other inlets.
  • mlife mlife is a cellular automaton object that calculates the next generation on a bang and outputs a bang for each displayed cell whose value is 1.
  • multi multi multiplies the values of all its inlets and outputs the result when its leftmost or second inlet receives a value; a bang calculates and outputs the current result.
  • nchange nchange is a change detector for floats, symbols, and lists: it outputs an input value only when it differs from the previous value.
  • nroute nroute routes an evaluated list according to whether the element at a specified list index matches a given float or symbol value.
  • pitch pitch analyzes a MIDI note number and outputs the MIDI note number, note name, pitch class, interval from the previous note, and note register.
  • plus plus adds the values supplied to its inlets and outputs the result as a float.
  • poisson poisson generates Poisson-distributed random numbers for control use, outputting a float when it receives a bang.
  • pwrap pwrap performs parameterized wrapping of floats into a range, providing an alternative to clipping values at the limits.
  • remote remote sends data to any receive object, providing nonlocal control-message routing.
  • rewrap rewrap wraps input floats back and forth within a range, using lower and upper limits.
  • rhythm rhythm detects the beat of rhythmic note patterns from note-number and velocity inputs.
  • step step outputs a sequence of numbers, similar to line, for creating a control ramp.
  • subst subst performs self-similar substitution or diminution on rows supplied as lists of note numbers, outputting the processed row and its substitution order.
  • temperature temperature outputs the number of input changes that occur within a specified time interval in milliseconds.
  • tilt tilt measures the tilt of a stream of float input values and outputs a bang when the configured trip point is exceeded.
  • timebang timebang outputs bangs at specified times of day, with one outlet corresponding to each configured hour-minute-second triplet.
  • triang triang generates triangularly distributed random control values and outputs each result as a float.
  • unroute unroute merges messages from all of its inlets into one list outlet, prepending the creation argument that corresponds to the inlet where each message arrived.
  • velocity velocity measures the velocity of incoming numeric values in digits per second.
  • weibull weibull generates Weibull-distributed random floating-point numbers for control-rate use.