Method and apparatus for reading selected waveform segments from memory
First Claim
1. A method of changing stops played on an electronic musical instrument comprising the sequential steps of:
- storing in a memory at sequential addresses samples of a waveform, the waveform having a plurality of waveform segments, each waveform segment having at least one cycle and being representative of a predetermined musical registration, and there being at least a first waveform segment representative of a first musical registration and a second waveform segment representative of a second musical registration different than the first musical registration;
where a location of a stored sample relative to an other stored sample is in a forward direction if the direction is consistent with the sequence of addresses of the waveform samples and is in a reverse direction if the direction is opposite to the sequence of addresses of the waveform samples and the instrument is unable to move directly from one waveform segment to another waveform segment different than the one waveform segment, which other waveform segment is located in one of the forward or reverse directions in memory from the one waveform segment reliably without producing undesired noise in the resulting sound and is able to move from the other waveform segment to the one waveform segment reliably without producing undesired noise; and
wherein the step of storing includes storing the second waveform segment in a location that is in the one direction in memory from the first waveform segment, and storing a third waveform segment at a location that is in the other direction from the first waveform segment, with the third waveform segment being the same as the second waveform segment;
inputting a first instruction selecting the first musical registration;
identifying in response to the first instruction the first waveform segment;
reading from the memory stored samples of the identified first waveform segment;
inputting, during reading of the first waveform segment, a second instruction selecting the second musical registration;
identifying in response to the second instruction the second waveform segment;
reading from the memory stored samples of the third waveform segment; and
reading from the memory stored samples of the identified second waveform segment;
whereby movement from the first waveform segment to the third waveform segment and movement from the third waveform segment to the second waveform segment are without noise.
1 Assignment
0 Petitions
Accused Products
Abstract
An electronic musical instrument having fewer note generators than notes stores in a sequentially addressable memory different waveform segments corresponding to different sounds. The note generators are time multiplexed by a processor, and use end addresses of current waveform segments to determine whether each current sample to be read is within the desired waveform segment. This limits the ability to noiselessly and rapidly move between segments. It is accommodated by storing a copy of the waveform segments in a readily shifted direction for immediate playout and subsequent shift to the destination waveform segment while reading the copy. This allows for cluster switching and scanning of waveform cycles to control a modulation of the base note, such as attack or tremulant, independently of the base note pitch.
-
Citations
21 Claims
-
1. A method of changing stops played on an electronic musical instrument comprising the sequential steps of:
-
storing in a memory at sequential addresses samples of a waveform, the waveform having a plurality of waveform segments, each waveform segment having at least one cycle and being representative of a predetermined musical registration, and there being at least a first waveform segment representative of a first musical registration and a second waveform segment representative of a second musical registration different than the first musical registration;
where a location of a stored sample relative to an other stored sample is in a forward direction if the direction is consistent with the sequence of addresses of the waveform samples and is in a reverse direction if the direction is opposite to the sequence of addresses of the waveform samples and the instrument is unable to move directly from one waveform segment to another waveform segment different than the one waveform segment, which other waveform segment is located in one of the forward or reverse directions in memory from the one waveform segment reliably without producing undesired noise in the resulting sound and is able to move from the other waveform segment to the one waveform segment reliably without producing undesired noise; and
wherein the step of storing includes storing the second waveform segment in a location that is in the one direction in memory from the first waveform segment, and storing a third waveform segment at a location that is in the other direction from the first waveform segment, with the third waveform segment being the same as the second waveform segment;inputting a first instruction selecting the first musical registration; identifying in response to the first instruction the first waveform segment; reading from the memory stored samples of the identified first waveform segment; inputting, during reading of the first waveform segment, a second instruction selecting the second musical registration; identifying in response to the second instruction the second waveform segment;
reading from the memory stored samples of the third waveform segment; andreading from the memory stored samples of the identified second waveform segment; whereby movement from the first waveform segment to the third waveform segment and movement from the third waveform segment to the second waveform segment are without noise. - View Dependent Claims (2)
-
-
3. A method of producing an audio signal having an audio dominant frequency and a time-varying characteristic independent of the audio dominant frequency comprising the steps of:
-
sampling sequentially a waveform having a waveform dominant frequency at a sampling rate, which waveform has a characteristic that varies at a first characteristic frequency less than the waveform dominant frequency; storing the waveform samples sequentially; reading samples of segments of the stored waveform at a reading rate appropriate for producing an audio signal having an audio dominant frequency different from and with a predetermined relationship to the waveform dominant frequency such that the characteristic varies at a second characteristic frequency not equal to the first characteristic frequency times the ratio of the audio dominant frequency to the waveform dominant frequency; and producing from the read samples an audio signal having the audio dominant frequency and the characteristic varies at the second characteristic frequency. - View Dependent Claims (4)
-
-
5. A method of reading selected waveform segments from a waveform stored in a memory of an electronic musical instrument having address registers for storing, during reading, a start address and an end address of a waveform segment, the method comprising the sequential steps of:
-
storing in the memory at sequential addresses a first copy and a second copy of a waveform segment having a plurality of cycles of a tone having a dominant pitch, with the cycles of the waveform segment being modulated at a frequency less than the dominant pitch; putting into the electronic musical instrument an instruction selecting the waveform segment for playing at a pitch different than the dominant pitch; selectively reading from the memory ordered cycles of at least one of the first and second copies of the selected waveform segment at a rate corresponding to the different pitch, such that the resulting read waveform segment is modulated at a frequency different than the modulation frequency multiplied by the ratio of the different pitch and the dominant pitch. - View Dependent Claims (6, 7)
-
-
8. A method of reading selected waveform segments from a waveform stored digitally as ordered addressable samples in a memory of an electronic musical instrument having fewer oscillators than selectable sounds, which oscillators are controlled serially by a processor, wherein a sample is positioned in memory relative to another sample in a first direction corresponding to the order of the associated addresses, and the processor does not sequentially read the first sample of a waveform segment positioned in one of the first direction or in a second direction reverse to the first direction in memory from the last sample of another waveform segment reliably without producing undesired noise in the resulting sound, the method comprising the steps of:
-
storing in a first region of the memory one plurality of waveform segments with each segment having a predetermined characteristic and being stored between respective known start and end addresses; storing in a second region of the memory, which region is located in the second direction from the first region, another plurality of waveform segments, with each waveform segment of the other plurality of waveform segments being stored between respective known start and end addresses that are different than the addresses of the one plurality of waveform segments, and being associated with and having the same predetermined characteristic as at least a predetermined one of the one plurality of waveform segments; putting into the electronic musical instrument an instruction selecting a first one of the one plurality of waveform segments; selecting the respective start and end addresses of the first waveform segment; reading the first selected waveform segment by reading samples stored between the selected start and end addresses of the first waveform segment and progressing toward the end address of the first waveform segment; putting into the electronic musical instrument an instruction selecting a second one of the one plurality of waveform segments, which second waveform segment is in the first direction in memory from the first waveform segment; selecting the respective start and end addresses of the waveform segment of the other plurality of waveform segments associated with the selected second waveform segment; terminating the reading of the first selected waveform segment; reading from the memory of the waveform segment of the other plurality of waveforms associated with the selected second waveform segment by reading samples stored between the selected respective start and end addresses of the waveform segment of the other plurality of waveform segments associated with the selected second waveform segment and progressing toward the respective end address of the waveform segment of the other plurality of waveform segments associated with the selected second waveform segment; during reading from the memory the waveform segment associated with the second waveform segment, selecting the respective start and end addresses of the second waveform segment; terminating the reading of the waveform segment of the other plurality of waveform segments associated with the selected second waveform segment; and reading from the memory the second waveform segment by reading samples stored between the selected respective start and end addresses of the second waveform segment and progressing toward the respective end address of the second waveform segment. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A method of reading selected waveform segments from a waveform stored digitally as addressable samples in a memory of an electronic musical instrument having fewer oscillators that selectable sounds, which oscillators are controlled serially by a processor, wherein a sample is positioned in memory relative to another sample in a direction corresponding to the order of the associated addresses, and the processor does not sequentially read the first sample of a waveform segment positioned in a first direction in memory from the last sample of another waveform segment reliably without producing undesired noise in the resulting sound, the method comprising the steps of:
-
storing in a portion of the memory a plurality of waveform segments with each segment having a predetermined characteristic and being stored between known respective start and end addresses, which addresses are unique in the plurality of waveform segments and include a known common bit that has a common value for all addresses associated with the stored waveform segments and also has a complementary value; putting into the electronic musical instrument an instruction selecting a first one of the waveform segments; selecting respective start and end addresses in the first waveform segment with a predetermined value of the common bit such that movement to a position in memory that is in a direction reverse to the first direction corresponds to a change of the value of the common bit from the predetermined value to the complement of the predetermined value; reading the first waveform segment by reading samples stored between the selected respective start and end addresses; putting into the electronic musical instrument an instruction selecting a second one of the waveform segments, which second waveform segment is in the first direction in memory from the first waveform segment; selecting respective start and end addresses of the second selected waveform segment having a common bit value the complement of the predetermined value; terminating the reading of the first selected waveform segment; reading from the memory the second waveform segment by reading samples stored between the selected respective start and end addresses using a common bit value that is the complement of the predetermined value; during reading from the memory the second wave form segment using a common bit value that is the complement of the predetermined value, changing the common bit value to the predetermined value; terminating the reading of the second waveform segment using a common bit value that is the complement of the predetermined value; and reading from the memory the second wave form by reading samples stored between the selected respective start and end addresses having a common bit with the predetermined value.
-
-
14. An electronic musical instrument for reading waveform segments of a waveform stored in a memory of an electronic musical instrument having address registers containing, during reading, the start address and end address of a waveform segment for producing an audible sound, the waveform segments being representative of different musical registrations, the instrument comprising:
-
waveform memory means for storing a plurality of waveform segments sequentially at sequential addresses with each waveform segment having at least one cycle and being representative of a predetermined musical registration, with each cycle having a plurality of addressable samples and there being at least a first waveform segment representative of a first musical registration and a second waveform segment representative of a second musical registration different than the first musical registration; and
a sample is positioned in memory relative to another sample in a direction corresponding to the order of the associated addresses;input means for inputting sequentially first and second instructions selecting, respectively, a first musical registration and a second musical registration corresponding to the first and second waveform segments stored in the memory means; means responsive to input instructions for identifying the waveform segments corresponding to the selected musical registrations; means responsive to the identified waveform segments for reading from the memory means the identified waveform segments, the reading means being unable to read sequentially the first sample of a waveform segment positioned in a first direction in memory from the last sample of another waveform segment reliably without producing undesired noise in the resulting sound; and
said memory means stores a third waveform segment at selected addresses that are at addresses in a direction reverse to the first direction relative to addresses of the first and second waveform segments, with the third waveform segment representing a sound the same as the second waveform segment;
whereby the reading means reads the first waveform segment in response to the first instruction until the second instruction is input, and then terminates the reading of the first waveform segment, reads the third waveform segment, and then reads the second waveform segment; andmeans coupled to the memory means for producing sounds representative of the corresponding waveform segments. - View Dependent Claims (15)
-
-
16. An electronic musical instrument comprising:
-
input means for inputting sequentially an instruction selecting a first sound and an instruction selecting a second sound; processor means responsive to the input instructions for serially controlling production of the selected sounds; memory means for storing waveform segments corresponding to the selectable sounds, each waveform segment being stored digitally as sequentially addressable samples, including storing in a first region of memory one plurality of waveform segments, including a first waveform segment having a predetermined characteristic associated with the first sound and being stored at a first position between known respective start and end addresses, and a second waveform segment having a predetermined characteristic associated with the second sound which second waveform segment is stored between known respective start and end addresses in memory at a second position that is in a known one direction from the first position of the first waveform segment; and
storing in a second region of the memory, located in a direction reverse to the one direction from the first region, another plurality of waveform segments, with each waveform segment of the other plurality of waveform segments being stored between known respective start and end addresses that are different than the addresses of the one plurality of waveform segments, and being associated with and having the same predetermined characteristic as at least a predetermined one of the one plurality of waveform segments;means coupled to the processor means for selecting the respective start and end addresses of waveform segments corresponding to selected sounds; means coupled to the selecting means and to the memory means for reading waveform segments corresponding to selected respective start and end addresses, the reading means being unable to move directly from one waveform segment to another waveform segment located at a position that is in the one direction in memory reliably without producing undesired noise in the resulting sound; the reading means reading a first waveform segment corresponding to the first selected sound by reading samples stored between the selected respective start and end addresses; and
after the instruction selecting the second sound is input, the selecting means selecting the respective start and end addresses of the waveform segment of the other plurality of waveform segments associated with the selected sound;
the reading means terminating the reading of the first selected waveform segment and reading the waveform segment of the other plurality of waveform segments associated with the selected sound by reading samples stored between the corresponding selected respective start and end addresses;
the selecting means, during reading of the waveform segment of the other plurality of waveform segments, selecting the respective start and end addresses corresponding to the second waveform segment; and
the reading means terminating the reading of the waveform segment of the other plurality of waveform segments, and reading from the memory the second waveform segment by reading samples stored between the selected corresponding respective start and end addresses, whereby a move in memory to a waveform segment located in the one direction occurs by first reading the associated waveform segment located in the reverse direction. - View Dependent Claims (17, 18, 19, 20)
-
-
21. An electronic musical instrument comprising:
-
input means coupled to the processor means for inputting sequentially an instruction selecting a first sound and an instruction selecting a second sound; processor means responsive to the input instructions for serially controlling production of the selected sounds; memory means for storing a plurality of waveform segments corresponding to the selectable sounds, each waveform segment being stored digitally as sequentially addressable samples between known respective start and end addresses and being representative of a sound having a predetermined characteristic, the addresses of each waveform segment being unique and including a known common bit that has a predetermined value for all addresses associated with the stored waveform segments, which predetermined value is one of two complementary values; means coupled to the processor means for selecting the respective start and end addresses of waveform segments corresponding to selected sounds, which addresses selectively may have either one of the two complementary values for the common bit; means coupled to the selecting means and to the memory means for reading waveform segments corresponding to selected respective start and end addresses by using the predetermined value for the common bit regardless of the selected value of the common bit, the reading means being unable to move directly from one waveform segment to another waveform segment located at a position that is in a known one direction in memory reliably without producing undesired noise in the resulting sound; the reading means reading a first waveform segment corresponding to the first selected sound by reading samples stored between the respective selected start and end addresses; and
after the instruction selecting the second sound is input, the selecting means selecting the respective start and end addresses of the waveform segment associated with the second selected sound using the value of the common bit that is the complement of the predetermined value;
the reading means terminating the reading of the first selected waveform segment and reading the second selected waveform segment associated with the second selected sound by reading samples stored between the corresponding selected respective start and end addresses;
the selecting means changing the value of the common bit to the predetermined value during reading of the second selected waveform segment using the value of the common bit that is the complement of the predetermined value; and
the reading means terminating the reading of the second waveform segment using the value of the common bit that is the complement of the predetermined value, and completing reading from the memory the second waveform segment using the predetermined value of the common bit.
-
Specification