Music – Instruments – Electrical musical tone generation
Reexamination Certificate
2000-11-24
2002-09-10
Fletcher, Marlon T. (Department: 2837)
Music
Instruments
Electrical musical tone generation
C084S609000, C084S622000, C084S625000, C084S649000
Reexamination Certificate
active
06448484
ABSTRACT:
TECHNICAL FIELD
The present invention relates to methods and apparatus for processing data, and more particularly, to methods and apparatus for processing data representing a time history.
BACKGROUND OF THE INVENTION
Music programs that are produced from audio sources (especially digital sources, such as CDs and computer files) generally include a series of selections that are played in sequence without a break. As a consequence, it is desirable to make the transition from one selection to the next to be as smooth as possible so as not to draw the attention of those who are listening or dancing to the music.
Those music mixers who can accomplish such unnoticed transitions are in great demand because it requires a great deal of practice and technique. An important aspect of this talent is that the mixers can, in some way, match the beat of a first selection with the beat of the next selection,
It is, therefore, desirable to have a method to process the data in a series of time histories so as to automate this process as well as possible. This is particularly desirable where the source of the time histories is a digital source of recorded music.
SUMMARY OF THE INVENTION
According to one aspect, the invention is a method for processing data representing a time history of a sonic waveform to create a plot of the energy contained in the sonic waveform as a function of time. The method includes the steps of: a) establishing a window that contains a portion of the time history of the sonic waveform, b) transforming the portion of the time history of the sonic waveform to a frequency domain, the frequency domain being divided into two or more frequency bands, c) determining phase and frequency vectors for each frequency band, d) combining the phase and frequency vectors to produce an energy vector for each frequency band and e) summing the energy vectors to create a single energy level for the window. The method also includes the steps of f) repeating steps a)-e) for different windows to completely cover the time history, and g) displaying the energy levels as a function of time.
According to another aspect, the invention is a method for processing data representing a time history of a sonic waveform to identify the largest transients contained in the sonic waveform as a function of time. The method includes the steps of a) establishing a window that contains a portion of the time history of the sonic waveform, b) transforming the portion of the time history of the sonic waveform to a frequency domain, the frequency domain being divided into two or more frequency bands, c) determining phase and frequency vectors for each frequency band, d) combining the phase and frequency vectors to produce an energy vector for each frequency band, and e) summing the energy vectors to create a single energy level for the window. The method also includes the steps of f) repeating steps a)-e) for different windows to completely cover the time history, g) displaying the energy levels as a function of time, and h) processing the energy levels to identify all portions of the displayed energy levels whose slopes exceed a predetermined value.
According to a still another aspect, the invention is a method for processing data representing a time history of a sonic waveform to identify a tempo contained in the sonic waveform as a function of time The method includes the steps of a) establishing a window that contains a portion of the time history of the sonic waveform, b) transforming the portion of the time history of the sonic waveform to a frequency domain, the frequency domain being divided into two or more frequency bands, c) determining phase and frequency vectors for each frequency band, d) combining the phase and frequency vectors Lo produce an energy vector for each frequency band, and e) summing the energy vectors to create a single energy level for the window. The method further includes the steps of f) repeating steps a)-e) for different windows to completely cover the time history, g) displaying the energy levels as a function of time, h) processing the energy levels to identify all portions of the displayed energy levels whose slopes exceed a predetermined value, and i) performing steps a)-h) until a predetermined number of transients has been identified, The method further includes the steps of j) ordering the transients as a function of their times of occurrence, k) comparing the ordered transients to each of a plurality of candidate tempos having an array of uniformly spaced pulses by establishing a small time interval around each of the pulses and determining the maximum number of pulses that appear within the time intervals as the array is varied in phase relative to the array; and
1
) identifying as the tempo that tempo that produces the largest maximum number of pulses that appear within the time intervals corresponding to that tempo.
According for yet another aspect, the invention is a method for processing data representing a time history of a sonic waveform to detect aliasing in the data. The method includes the steps of a) establishing a window that contains a portion of the time history of the sonic waveform, b) transforming the portion of the time history of the sonic waveform to a frequency domain, the frequency domain being divided into two or more frequency bands, c) determining phase and frequency vectors for each frequency band, d) combining the phase and frequency vectors to produce an energy vector for each frequency band, and e) summing the energy vectors to create a single energy level for the window. The inventive method also includes the steps of f) repeating steps a)-e) for different windows to completely cover the time history, g) displaying the energy levels as a function of time, and h) processing the energy levels to identify all portions of the displayed energy levels whose slopes exceed a predetermined value. The method further includes the steps of i) performing steps a)-h) until a predetermined number of transients has been identified, j) ordering the transients as a function of their times of occurrence, k) comparing the ordered transients to each of a plurality of candidate tempos having an array of uniformly spaced pulses by establishing a small time interval around each of the pulses and determining the maximum number of pulses that appear within the time intervals as the array is varied in phase relative to the array,
1
) identifying as the tempo that tempo that produces the largest maximum number of pulses that appear within the time intervals corresponding to that tempo, m) establishing a plurality of bins having predetermined sizes and predetermined spacings, and n) analyzing the identified portions in accordance with the bins to determine whether the identified tempo is in error.
According the a still further aspect the invention is a method for processing data representing a time history of a sonic waveform to a beat map for the sonic waveform as a function of time. The method includes the steps of a) establishing a window that contains a portion of the time history of the sonic waveform, b) transforming the portion of the time history of the sonic waveform to a frequency domain, the frequency domain being divided into two or more frequency bands, c) determining phase and frequency vectors for each frequency band, d) combining the phase and frequency vectors
1
o produce an energy vector for each frequency band, and e) summing the energy vectors to create a single energy level for the window. The method also includes the steps of f) repeating steps a)-e) for different windows to completely cover the time history, g) displaying the energy levels as a function of time, h) processing the energy levels to identify all portions of the displayed energy levels whose slopes exceed a predetermined value, and i) performing steps a)-h) until a predetermined number of transients has been identified. The method further includes the steps of j) ordering the transients as a function of their times of occurrence, k) comparing the ordered transients to each of a plura
Fletcher Marlon T.
Storwick Robert M.
LandOfFree
Method and apparatus for processing data representing a time... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and apparatus for processing data representing a time..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for processing data representing a time... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2865853