Harmonize a single MIDI note
This example demonstrates how to harmonize a single MIDI note with multiple pitches.
This example demonstrates how to harmonize a single MIDI note with multiple pitches.
This example demonstrates how to dynamically alter probability.
Any message that consists of a single word is a message of type symbol (as opposed to int or float or list or some other word followed by other items). The coll object explicitly puts the word symbol ahead of its output if the output is a single word. The advantage of that is that you can detect single-word outputs as being different from all other outputs, by using a route symbol object.
Here’s an example patch that takes MIDI pitch and velocity information, runs it through borax and stores time-tagged note information in a coll, which you can then look up and play later.
To slow the flow of OSC messages, store the most recent value for each parameter using the combine object, but only send it out as an OSC message at the desired rate.
This example demonstrates how to visually alter a numbox when it receives a value. This is particularly useful to detect when the value hasn't changed but is still received.
This example demonstrates how to dynamically hide or show objects (patch must be locked) by sending a "hidden" message. The message is followed by either a 1 or a 0 indicating hidden or shown.
To detect a certain period of inactivity from a data source, you can use the delay object. The delay object can only delay one bang at a time, and if it receives another bang before the first one is sent out, it discards the first one and delays the second one. Thus, each time an event occurs, you can simply bang the delay to schedule a bang for some time in the future.
To use floating point numbers with the poly object separate the integer portion and the fractional portion. Then recombine them after the poly object, as in the example.
To schedule timepoints in straight clock time, it’s easy enough to do, and if I want transport to report the current time to me in straight clock time, that’s easy enough to do, too. In the following example, when you start the transport with the toggle, it rewinds to time 0 and schedules a timepoint to occur at time 5.5 seconds. By default the transport’s tempo is 120 bpm, so we would expect that timepoint to happen 11 beats later, i.e., after 5280 ticks, i.e.