Karlheinz Essl
RTC-lib 8.3 for Max8 - Universal Binaryfor macOS and Windowsreleased: 16 May 2022
Now runs natively on Apple Silicon processors
Download library... |
Content of the RTC-lib 8.3
copyleft 1993-2022
The library consists mainly of "abstractions" (Max patches that appear as objects) and a few so-called externals programmed in C. Most of them have been written by myself, with some contributions from other authors like Gerhard Eckel (IEM Graz) and Serge Lemouton (IRCAM, Paris), James McCartney (namely his generic list objects), and Peter Elsea's (UCSC) selected list objects from his Lobjects library. Other contributions came from Gary Lee Nelson, Les Stuck, Chris Dobrian, Timothy Place, Orm Finnendahl, Trond Lossius and jasch. Because the library objects are highly dependent on each other, it is recommended not to take them apart.
16step-seq | Abstraction | rhythmical sequencer |
@ | Abstraction | Scales a standard slider (ranging from 0 to 127) between min and max |
add% | Abstraction | Adds a certain percentage <int, float> to values <int, float> in left inlet |
alea | Abstraction | random based object |
alea-rhythm | Abstraction | rhythm generator |
anti-bis | Abstraction | Filters out immediate repetitions of integers. Right output sends a bang whenever this occurs |
anti-bis&osc | Abstraction | Filters out direct repetitions and when a number has occured the penultimate time |
anti-interval | Abstraction | Filters out a certain interval |
anti-octave | Abstraction | Filters out octaves between two consecutive notes |
anti-octave&prime | Abstraction | Filters out octaves and primes |
anti-osc | Abstraction | Filters out an integer which has occured the penultimate time |
banger | External | An object to bang outlets sequentially |
between | Abstraction | random based object |
between-lin | Abstraction | random based object |
between-lin-urn | Abstraction | random based object |
between-log | Abstraction | random based object |
between-log-urn | Abstraction | random based object |
block-bang | Abstraction | Filters out bangs that arrive before a certain time span ("blocking time") is over |
BPM2ms | Abstraction | Converts beats per minute (BPM) into milliseconds |
brown-melody | Abstraction | Generates a brownian-mouvement-like melody |
brown-rhythm | Abstraction | Generates a brownian-movement-like rhythm |
brownian | Abstraction | random based object |
butfirst | Abstraction | Outputs the input list without its first element |
butlast | Abstraction | Outputs the input list without its last element |
check-octaves | Abstraction | Checks whether an interval list sums up to an octave |
check-row | Abstraction | dodecaphonic based object |
choice-rhythm | Abstraction | rhythm generator |
choose-intervals | Abstraction | Chooses a supply between one to five different intervals |
collect | Abstraction | Collects numbers |
contrario | Abstraction | A number <int, float> in left inlet outputs a complimentary number |
cos-slider | Abstraction | Transforms a linear slider into a cosine function |
count-bang | Abstraction | Counts the number of received bangs |
countdown | Abstraction | countdown object |
cp-pan~ | Abstraction | constant power panner |
cresc-decresc | Abstraction | crescendo / decescendo generator |
crossfade~ | Abstraction | Crossfades two input signals according to a sine function which guarantees that loudness of the result is constant |
dB2lin | Abstraction | Converts dB into linear values |
DblBang | Patch | Detects single or double bang |
del-fb~ | Abstraction | Delay line with feedback |
divmod | Abstraction | divmod is the same as / and % for positive left operands. |
dur-from-ED | Abstraction | Calculates note durations from entry delays (ED) and a duration factor |
ED-rhythm | Abstraction | rhythm generator |
ED-trans | Abstraction | produces a ritardando or an accelerando |
ED2EP | Abstraction | Converts ED (= entry delays) into EP (= entry points) |
first | Abstraction | Outputs the first element of a list |
first-bang | Abstraction | Outputs only the first bang of a stream of bangs |
first-shot | Abstraction | Outputs only the first message of a stream of messages (bangs, ints, floats, symbols, lists) until the right inlet receives a (reset) bang |
frq2note | Abstraction | Converts frequency into a note |
geom | Abstraction | Int in right inlet outputs the nth member of a geometrical row. |
grid-rhythm | Abstraction | rhythm generator |
group | Abstraction | groups numbers received in succession into a list |
group-rhythm | Abstraction | rhythm generator |
group-rhythm2 | Abstraction | rhythm generator |
groups | Abstraction | random based object |
inc-dec | Abstraction | Functional implementation of the graphical user interface object Inc-Dec |
infinity-row | Abstraction | pitch generator |
insert | Abstraction | Inserts an element after a position (= index) in the list |
integ | Abstraction | Accumulates input values <int, float> until a bang (or any input) is sent to the right inlet |
intv2ratio | Abstraction | Converts an interval into a ratio |
inv | Abstraction | Calculates the inversion of a number |
join | Abstraction | Joins two lists together |
key-bang | Abstraction | Sends out a bang whenever a certain key is pressed |
Ladd | External | An object to add two lists, member by member |
last | Abstraction | Outputs the last element of a list |
Ldiv | External | An object to divide one list by another, member by member |
lin2dB | Abstraction | Converts linear values into dB |
listreg | Abstraction | this is for lists what the int object is for integers |
listlen | Abstraction | listlen - outputs the length of a list or anything arriving at its inlet |
Lmult | External | An object to multiply two lists, member by member |
loop-sf~ | Abstraction | Loops a selected sndfile |
Lpow | External | An object to raise the members of a list to the powers set in another list |
Lrem | External | An object to divide one list by another, member by member and output a list of the remainders |
Lround | External | Rounds off members of a list to desired precision |
Lsub | External | An object to subtract two lists, member by member |
make-choice-list | Abstraction | random based object |
make-choice-list | Abstraction | random based object |
make-ED-scale | Abstraction | list generator |
make-scale | Abstraction | list generator |
make-trans-scale | Abstraction | list generator |
markov | Abstraction | probability based object |
markov-harmony | Abstraction | pitch generator |
markov-rhythm | Abstraction | rhythm generator |
matrix12 | External | dodecaphonic row manipulations |
max-cursor | Abstraction | 1 or 0 send to the inlet (or given as an argument) shows or hides the mouse cursor |
max-menubar | Abstraction | 1 or 0 send to the inlet (or given as the argument) switches MAX's menubar on or off |
max-overdrive | Abstraction | 1 or 0 send to the inlet |
max-quit | Abstraction | Quits MAX immediately - BEWARE! |
member | Abstraction | list based object |
metro-dev% | Abstraction | rhythm generator |
minus | Abstraction | Simply makes the negative of an int sent to the input |
ms2sec | Abstraction | Converts milliseconds into seconds |
MSP-iovs~ | Abstraction | select I/O vector size |
MSP-sigvs~ | Abstraction | select signal vector size |
MSP-sr~ | Abstraction | Sets the sampling rate of MSP |
MSP-takeover~ | Abstraction | MSP takeover |
multiple | Abstraction | list based object |
neutral-harmony | Abstraction | pitch generator |
normalize-row | Abstraction | Normalization of a twelve-tone row |
note2cents | Abstraction | Shows how many cents a microtonal note <float> is deviating from a tempered one |
note2frq | Abstraction | Converts a note into frequency |
note2pitch | Abstraction | Outputs the pitch class of a note |
note2st | Abstraction | Outputs the intervals of an incoming stream of notes |
nth | Abstraction | outputs the nths element of a list |
panning | Abstraction | Equal power panning based on John Chowning's paper "Simulation of Moving Sound Sources" |
pass | Abstraction | Let a certain percentage of bangs pass |
pass-bang | Abstraction | Let every nth bang pass |
per2pass | Abstraction | Converts a periodicity factor <float between 0 and 1> into a percentage value <int between 0 and 100> for the pass-object |
periodic | Abstraction | random based object |
permutate | Abstraction | random based object |
permutate-row | Abstraction | dodecaphonic based object |
permute | External | returns the nth permutation of a list |
piece | Abstraction | list based object |
pitch-from-intervals | Abstraction | pitch generator |
pitch-from-row | Abstraction | pitch generator |
pitch-from-row | Abstraction | pitch generator |
pitch-from-row-mod | Abstraction | pitch generator |
pitch-from-row-mod | Abstraction | pitch generator |
pitch2note | Abstraction | Combines pitch class and register into a note |
play | Abstraction | Plays a note whenever a key number is sent to the left inlet |
play-samp~ | Abstraction | Plays one sample |
play2 | Abstraction | Plays a note whenever a key number is sent to the left inlet |
position | External | position - sorts a list in the left inlet using the index numbers in the right inlet |
QT-PercPlayer | Abstraction | Plays General MIDI percussion instruments directly from Quicktime |
QT-SndPlayer | Abstraction | Plays General MIDI instruments directly from Quicktime |
random-norep | Abstraction | random based object |
random-pan~ | Abstraction | random pan |
random-ramp | Abstraction | Generates randomly fluctuating envelope shapes of a given dynamic scale |
random-row | Abstraction | random and dodecaphonic based object |
RandomSeeder | Abstraction | random based object |
ratio | Abstraction | Chooses elements from a supply <int list> which are repeated according to a multiple list <int list> by using the "series" selection principle |
ratio2intv | Abstraction | Converts a ratio into an interval |
reanimate | Abstraction | Sends out a bang on right outlet after x miliseconds if there has been no input bang in left inlet during x miliseconds |
remove | Abstraction | Removes the nth element of a list |
remove-dc~ | Abstraction | Removes the DC offset of an audio signal |
repchord-rhythm | Abstraction | rhythm generator |
repeat-ED | Abstraction | sends out a certain number of rhythm bangs |
replace | Abstraction | Replaces an element of a list |
reverse | Abstraction | reverses a list of numbers |
rit-acc | Abstraction | Generates a ritardando or an accelerando |
rota | Abstraction | random based object |
rotate | Abstraction | cyclically rotate a list |
round | Abstraction | round to next higher integer |
roundto | Abstraction | A number sent to right inlet is rounded onto a certain "grid" <int, float> sent to right inlet |
row-modus | Abstraction | dodecaphonic based object |
rtc.fullscreen | Abstraction | toggles between full screen and window view |
samp10~ | Abstraction | Allows a polyphony of up to 10 samples at the same time |
scale-changer | Abstraction | scale changer |
schweller | Abstraction | decrescendo-crescendo envelopes generator |
scramble | Abstraction | scrambles the order of a list of numbers |
sect | Abstraction | outputs a list which contains only atoms that appear in both input lists |
sel-princ | Abstraction | random based object |
sequence | Abstraction | outputs the next element of a list |
serial-rhythm | Abstraction | rhythm generator |
series | Abstraction | random based object |
show | Abstraction | Displays a list in a message box |
showchord | Abstraction | Shows the pitch of a chord of MIDI note numbers |
shownote | Abstraction | Shows the pitch of a MIDI note number |
slice | Abstraction | divides a list in two |
smooth-line | Abstraction | Interpolates smoothly between successive input values |
sneak | Abstraction | random based object |
sneak-random | Abstraction | random based object |
sneak-rhythm | Abstraction | rhythm generator |
sort | Abstraction | sorts a list |
sqrt-pan~ | Abstraction | square root panner |
st2pitch | Abstraction | Accumulates incoming intervals and outputs pitch classes |
sum | Abstraction | Sums up a numerical list containing integers and/or floats |
super-rhythm | Abstraction | rhythm generator |
trans | Abstraction | transition |
trans-exp | External | exponential transition |
trans-lin | Abstraction | linear transition |
trans-log | Abstraction | logarithmical transition |
transp-pitch | Abstraction | Transposes pitch classes by a certain interval |
transpose-row | Abstraction | dodecaphonic based object |
union | Abstraction | outputs a list which contains all atoms that appear in either or both input lists |
unique | Abstraction | unique puts out a list comprised of those items in the left input list that are not contained in the right input list |
VolAmb | Abstraction | Controls the ambitus between minimum and maximum dynamic by a single controller |
xrandom | Abstraction | random based object |
This tutorial shows how selected compositorial issues such as harmony, rhythm, and random can be mastered with the aid of the RTC-lib. Furthermore it contains several especially adapted and documented structure generators from Karlheinz Essl's Lexikon-Sonate such as Trill, MeloChord, and Esprit.
Random
- Random-Generators
- Selection-Principles
Harmony
- Brownian-Melodies
- Harmony-by-Intervals
- Row-Permutation
Rhythm
- Brownian-Rhythm
- Super-Rhythm
- Rhythm-Scales
Structure Generators
- Esprit-Demo
- MeloChord-Demo
- Triller-Demo
RTC-lib Tutorial: Random Generators
RTC-lib Tutorial: Harmony by Intervals
RTC-lib Tutorial: Rhythm Scales
RTC-lib Tutorial: Esprit Demo
Lecture on Realtime Composition
Karlheinz Essl talking to music students of the University of Montana
Essl Museum, Klosterneuburg/Vienna (10 Jun 2010)
RTC-lib 8.3 for macOS and Windows - Universal Binary for Max8 for macOS and Windows released 16 May 2022: ZIP archive for Mac and Windows (1.4 MB) |
RTC-lib 8.2 for macOS and Windows - 64bit for Max8 for macOS and Windows released 3 Apr 2021: ZIP archive for Mac and Windows (1.2 MB) |
RTC-lib 1.0 for Pd
uploaded 15 Nov 2010: ZIP archive (172 kB) Thanks to Frank Barknecht for porting to Pd! |
RTC-lib 8.0 for macOS - 64bit for Max8 & Max7 under macOS 10.10 or later released 13 Nov 2019: ZIP archive for Mac (1.5 MB) |
RTC-lib 7.1 for macOS - 32bit for Max8 & Max7 under macOS 10.7 or later released 21 Sep 2016: ZIP archive for Mac (1.4 MB) |
RTC-lib 7.1 for Windows - 32bit & 64bit for Max8 & Max7 under Windows 7 (or later) released 26 Sep 2016: ZIP archive for PC (1.0 MB) |
RTC-lib 6.0.1 for Mac OS X for Max5/Max6 under Mac OS X 10.6 or later; Intel processors released 19 Mar 2014: ZIP archive for Mac (1.2 MB) |
RTC-lib 5.0 for Mac OS X for Max5 under Mac OS X 10.4 or later; PPC or Intel processors released 10 Jan 2010: ZIP archive for Mac (940 kB) |
RTC-lib 4.7 for Mac OS X (Universal Binaries)
for MaxMSP 4.6 under Mac OS X 10.4; PPC or Intel processors released 2 Apr 2008: ZIP archive for Mac (740 kB) |
RTC-lib 4.6.1 for Mac OS X (Universal Binaries)
for MaxMSP 4.6 and Mac OS X 10.4; PPC or Intel processors released 6 Jan 2007: ZIP archive for Mac (690 kB) |
RTC-lib 4.0.2 for Mac OS X for MaxMSP 4.5 under Mac OS X 10.2 (or higher); PPC processors only released 26 Jan 2004: binhexed stuffit archive (636 kB) |
Home | Works | Sounds | Bibliography | Concerts |
Updated: 5 Sep 2024