AbstractA method and apparatus for the creation and playback of music, audio and sound; such that each time a composition is played back, a different sound sequence is generated in the manner previously defined by the artist. During composition creation, the artist’s definition of how the composition will vary from playback to playback is embedded into the composition data set. During playback, the composition data set is processed by a playback device incorporating a playback program, so that each time the composition is played back a unique version is generated. Variability occurs during playback per the artist’s composition data set, which specifies: the spawning of group(s) from a snippet; the selection of snippet(s) from each group; editing of snippets; flexible and variable placement of snippets; and the combining and/or mixing of multiple snippets to generate each time sample in one or more channels. MIDI-like variable compositions and the variable use of segments comprised of MIDI-like command sequences are also disclosed.Claims
I claim:
1. A method for generating music or sound, comprising: providing at least one group of alternative sound segments; providing at least one initiating sound segment, wherein aninitiating sound segment designates one or more of said groups; processing said sound segments such that responsive to selection of an initiating sound segment, a subset of the sound segments in said at least one group designated by the initiatingsegment is selected and used to generate a sound sequence; wherein said selection of segments from a group varies each time said processing is initiated; whereby the generated sound sequence can vary each time said processing is initiated.
2. A method as in claim 1 wherein said processing further includes: combining a selected alternative segment with an initiating segment in a sound channel.
3. A method as in claim 1 wherein during said processing, at least one alternative segment overlaps at least part of an initiating segment or another segment, in the same channel; wherein the overlapping portions of the segments in the samesound channel will be mixed together.
4. A method as in claim 1 further including: providing a rate-buffer wherein said processing provides digital samples to the input side of said rate-buffer at a non-uniform rate; while the output side of said rate-buffer provides digitalsamples to an output sound channel at a substantially uniform rate.
5. A method as in claim 1 wherein said selecting of a subset of the segments in a group, includes selecting “y” segments from the “z” segments in a group, wherein the numbers “y” or “z” can be fixed or can vary each time a subset is selectedfrom a group or each time said processing is initiated.
6. A method as in claim 1 further including: providing placement locations for said sound segments, wherein said placement locations were defined on a visual display.
7. A method as in claim 1 further including: providing placement-locations associated with said sound segments or said groups; wherein during said processing, sound segments are utilized at said placement locations.
8. A method as in claim 1 wherein at least one segment selected from a group is utilized in a different sound channel from its initiating segment; whereby the generated sound sequence can vary in a plurality of sound channels.
9. A method as in claim 1 further including: providing placement-locations associated with said sound segments or said groups, wherein said placement-locations occur in a plurality of sound channels; wherein during said processing, soundsegments are utilized at said placement-locations in a plurality of channels; whereby the generated sound sequence can vary in a plurality of sound channels.
10. A method as in claim 1 wherein, during said processing, some of said initiating or alternative sound segments are automatically generated, by variable effects editing of another sound segment.