cents cents | [Function] |
Converts cents to frequency scaler 10^cents * (log10(2) / 1200).
Example:
? (cents 100) 1.0594631 ? (note (* (pitch 'c4) (cents 1200))) C5
See Also:
centify, defscalecentify scaler | [Function] |
Converts scaler to cent value (1200 / log10(2)) * log10(scaler)
Example:
? (centify (expt 2 1/24)) 50.0
See Also:
cents, defscalechanges {start value}* {end value}* {step value}* | [Macro] |
Returns one or more values suitable for the rotation pattern's change option. start, end, step, and width may be numbers or lists of numbers. These values are "spread" across as many changes as necessary to represent the longest list of values.
Example:
? (setf x (items a b c d in rotation change (changes start '(0 1) width 2))) #<ROTATIONAL-ITEM-STREAM 123424> ? (loop repeat 8 collect (read-items x)) ((A B C D) (C D A B) (C B A D) (A D C B) (A B C D) (C D A B) (C B A D) (A D C B))
See Also:
rotationchord &rest items | [Macro] |
[{item}+] | [Read Macro] |
Creates a chord of items. Each item may be a note, pitch, degree, or item stream. Algorithms count chords as single events but still produce output for each chord member. The unless-chording macro is useful for evaluating forms once per chord, rather than once per chord member.
Example:
? (algorithm foo midi-note (length 10) (setf note (item (notes [c e g] d [e f g] f [g b d] in random))) (unless-chording (setf rhythm (between .1 .5)) (setf duration (* rhythm 1.5)))) #<ALGORITHM: Foo>
See Also:
unless-chording, when-chording*chromatic-scale* | [Variable] |
The standard chromatic scale defined over 10 octaves, from C00 to B8. Note names are constructed from a pitch class name, accidental and octave number: {c}{s}*{o}, where {c} is one of the pitch class characters A B C D E F G or the rest (silence) character R; {s}* is one of the optional accidental characters N S F denoting natural, sharp and flat, respectively, and {o} is one of the octave signs 00 0 1 2 3 4 5 6 7 8. For example, C4 and CN4 both denote Middle C, or scale degree 60 at 261.625 Hz. The system variable *standard-scale* is normally bound to *chromatic-scale*.
Example:
? *standard-scale* #<EQUAL-TEMPERED-SCALE Chromatic-Scale> ? (degree 'c00) 0 ? (pitch 'an4) 440.00018
See Also:
defscale, degrees, in-scale, notes, pitches, *standard-scale*CLM | [Syntax] |
The CLM syntax implements score file and sound file output for Common Lisp Music, a sound synthesis language developed by William Schottstaedt at CCRMA, Stanford University. Common Lisp Music translates Lisp instrument definitions into C runtime code for efficient sound computation. Visit the CLM home page.
See Also:
clm-score-file, clm-sound-file, clm-note, definstrument, Working with CLMclm-note | [Class] |
An event class that automatically produces CLM sound file and score file events for all subclasses. Subclasses are automatically declared using the definstrument macro.
clm-note declares the following slots:
See Also:
CLM, definstrumentclm-score-file | [Class] |
An event stream class implementing CLM score files. This class is automatcally chosen when you specify a file with a .clm extension.
clm-score-file shares the slots of clm-sound-file. Additional slots are inherited from event-stream.
See Also:
CLM, clm-sound-fileclm-sound-file | [Class] |
An event stream class implementing CLM sound files. This class is automatcally chosen when you specify a file with a .snd extension.
clm-sound-file declares slots for all keywords supported by CLM's with-sound macro. The following slots are most commonly used:
See Also:
CLM, clm-score-fileclock-mode &optional mode | [Function] |
Returns the system's current clock mode, or sets the clock mode if mode is specified. mode may be specified as :seconds, :milliseconds, or the integer number of divions per second: 1 or 1000.
The system clock mode determines how time is managed during event processing, and what type of values are returned by rhythm and rhythms. Two clock modes are currently supported, :seconds and :milliseconds. When the clock mode is :seconds (the default), values for rhythm, start, duration, etc. may be expressed as rational or floating point time values, where 1.0 equals 1 second. If the clock mode is :milliseconds, time must be expressed in integer millisecond values, where 1000 milliseconds equals 1 second. :milliseconds time mode is slightly less intuitive but results in "consless" time calculations. This is critical if the scheduler is run in real time since "garbage collection" may cause dropouts during music processing if eohemeral consing occurs. In addition, :milliseconds time mode may run significantly faster than floating point :seconds in some ports of Common Music.
Example:
? (clock-mode) :seconds ? (clock-mode :milliseconds) :milliseconds ? (rhythm 4) 500 ? (clock-mode 1) :seconds ? (rhythm 4) 1.0
See Also:
in-tempo, rhythm, rhythms, tempo*cm-state* | [Variable] |
The random state object used by Common Music.
See Also:
random, *random-range*CMix | [Syntax] |
The CMix syntax implements score file output for CMix, a sound synthesis and mixing language implemented in C that runs on a number of different computers.
CMN | [Syntax] |
The CMN syntax produces music manuscript output using Common Music Notation, a notation language developed by William Schottstaedt at CCRMA, Stanford University. Common Music Notation translates its Lisp notation expressions into manuscript images saved as Postscript (.eps) files. Visit the CMN home page.
See Also:
Working with CMNcmn | [Class] |
An event class holding one or more CMN manuscript directives.
cmn declares the following slots:
Example:
? (object cmn data '((meter 2 4))) #<CMN ((meter 2 4)) 140044131>
See Also:
CMNcmn-eps-file | [Class] |
An event stream class implementing CMN generated Postscript files containing musical manuscript output. This class is automatcally chosen when you specify a file with a .eps extension.
clm-eps-file shares the slots of cmn-source-file. Additional slots are inherited from event-stream.
See Also:
CMN, cmn-source-filecmn-source-file | [Class] |
An event stream class implementing CMN source files. This class is automatcally chosen when you specify a file with a .cmn extension.
Slots declared by cmn-source-file:
See Also:
CMN, cmn-eps-fileCMusic | [Syntax] |
The CMusic syntax produces score file output for CMusic, a sound synthesis language implemented in C that runs on a number of different computers.
*command-prompting* | [Variable] |
Enables command argument prompting in Stella. The default setting t means that Stella prompts for missing or illegal command line arguments. Set to nil if you prefer terser command interaction.
compile-algorithm algorithm | [Function] |
Compiles the internal runtime code of algorithm, if possible. Depending on the Lisp implementation, an algorithm may execute many times faster if it is compiled before it performs. MCL compiles algorithms automatically and CLISP uses a byte compiler, so compilation in these Lisp implementations will have little or no effect. Algorithms that depend on lexical closures in order to execute may not be able to be compiled using compile-algorithm. To compile a lexically defined algorithm, place its source definition in a file and compile/load it using the cl command.
See Also:
Lexical Closurescontainer | [Class] |
An abstract class implementing aggregate musical structure. Subclasses of container produce musical events in different, class specific ways.
See Also:
algorithm, generator, heap, merge, thread, Describing Music Algorithmicallycrescendo {from amplitude} {to amplitude} {in integer} {beat amplitude}* | [Macro] |
Creates a cyclic amplitude stream that moves from the minimum value from amplitude to the maximum value to amplitude in in number of beat type of beats. from, to and in must be specified but may occur in any order.
Example:
? (setf x (crescendo from p to fff in 12)) #<CYCLIC-ITEM-STREAM 131666241> ? (read-items x) (0.4 0.44545457 0.4909091 0.53636366 0.58181816 0.6272727 0.6727273 0.7181818 0.76363635 0.80909085 0.8545454 0.9)
See Also:
amplitude, amplitudes, diminuendoCSound | [Syntax] |
The CSound syntax implements writing and importing CSound (.sco) score files. CSound is a sound synthesis language developed by Barry Vercoe at MIT that runs on a variety of different computers. Visit the CSound home page.
See Also:
csound-note, csound-score-filecsound-note | [Class] |
An event class that implements CSound score file output for all subclasses. csound-note declares the following slots:
See Also:
CSound, defobject, i1.lispcsound-score-file | [Class] |
An event stream class that implements writing and importing CSound score files. This class is automatcally chosen when you specify a file with a .sco extension.
csound-score-file declares the following slots:
Stella's import command supports the following options for CSound score files:
See Also:
CSound, event-stream, Importingcycle | [Pattern] |
Enumerates items in a continuous loop. cycle is the default pattern type.
Example:
? (setf x (rhythms q h e for 6 in cycle)) #<CYCLIC-RHYTHM-STREAM 132666571> ? (read-items x) (1.0 2.0 0.5 1.0 2.0 0.5)
See Also:
Item Streams