Pitch detection and intonation correction apparatus and method
First Claim
1. A method for processing a music waveform comprising the steps of:
- sampling said music waveform at intervals of time to produce a music waveform sequence of numerical representations of the waveform,
space="preserve" listing-type="equation">{x.sub.j } for j=0, . . . i, wherei represents the current sample of the waveform and 0, 1, 2 . . . represent previous time samples of the waveform,determining the auto-correlation values of said sequence {xj } at lag values zero and L, anddetermining the smallest value of L which minimizes the difference between the auto-correlation at lag zero and the auto-correlation at lag L,whereby said smallest value of L represents the measured period of said music waveform.
5 Assignments
0 Petitions
Accused Products
Abstract
A device and method is disclosed to correct intonation errors and generate vibrato in solo instruments and vocal performances in real time. The device determines the pitch of a musical note produced by voice or instrument and shifts the pitch of that note to produce a very high quality, high fidelity output. The device includes a pitch detector that automatically recognizes the pitch of musical notes quickly. The detected pitch is then used as an input to a pitch corrector that converts the pitch of the input to an output with a desired pitch. The corrected musical note is then in tune with the pitch standard. The device and method employ a microprocessor that samples the signal from a musical instrument or voice at regular intervals using an analog-to-digital converter and then utilizes data derived from an auto-correlation function of the waveform to continuously determine the period of the waveform. The period of the waveform is then compared to a desired period or periods (such as found in a scale). The ratio of the waveform period and the desired period is computed to re-sample the waveform. This ratio is smoothed over time to remove instantaneous output pitch changes. The ratio is used to resample the input waveform. The resulting output waveform is processed through a digital-to-analog converter and output through audio interfaces.
-
Citations
38 Claims
-
1. A method for processing a music waveform comprising the steps of:
-
sampling said music waveform at intervals of time to produce a music waveform sequence of numerical representations of the waveform,
space="preserve" listing-type="equation">{x.sub.j } for j=0, . . . i, wherei represents the current sample of the waveform and 0, 1, 2 . . . represent previous time samples of the waveform, determining the auto-correlation values of said sequence {xj } at lag values zero and L, and determining the smallest value of L which minimizes the difference between the auto-correlation at lag zero and the auto-correlation at lag L, whereby said smallest value of L represents the measured period of said music waveform. - View Dependent Claims (2, 3, 4)
-
- 5. A method for processing a music waveform comprising the steps of,
sampling said music waveform at intervals of time to produce a sequence of musical representations at a sample rate of the waveform, {xj } for j=0, 1, 2, . . . i, where i represents the current sample at a current sample rate of the waveform and j=1, j=2 . . . represent prior time samples of the waveform, providing an estimate of lag value Lest of the period of the music waveform, updating two functions representative of the accumulated energy of the waveform over two periods 2L of the waveform, using - space="preserve" listing-type="equation">E.sub.i (L)=E.sub.i-1 (L)+x.sup.2.sub.i -x.sub.i-2L.sup.2,
space="preserve" listing-type="equation">H.sub.i (L)=H.sub.i-1 (L)+x.sub.i x.sub.i-L -x.sub.i-L x.sub.i-2L, andselecting that lag value of L as the period of the music waveform that minimizes the difference between Ei (L) and 2Hi (L). - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
- 7. The method of claim 5 further comprising the step of
retuning said music waveform sequence by changing its period by an amount equal to the difference between said measured period of said music waveform and the period of a note from a musical scale that is closest to said measured period to produce a retuned music waveform sequence. - 8. The method of claim 5 further comprising the step of
retuning said music waveform sequence by changing its period by an amount equal to the difference between said measured period of said music waveform and the period from a MIDI interface to produce a retuned music waveform sequence. - 9. The method of claim 8 further comprising the step of
retuning said music waveform sequence by gradually changing said sample rate to a new sample rate which will convert the period L to said period of a note from a musical scale. - 10. The method of claim 8 further comprising the step of,
retuning said music waveform sequence by gradually changing said sample rate to a new sample rate which will convert the period L to said period from said MIDI interface. - 11. The method of claim 7 further comprising
the step of converting said returned waveform sequence into a retuned analog music signal. - 12. The method of claim 8 further comprising
the step of converting said returned waveform sequence into a retuned analog music signal. - 13. The method of claim 5 further comprising the step of,
first applying said sequence {xj } for j=0, 1, 2 . . . i, to an 8 to 1 anti-aliasing filter, and then downsampling said sequence. - 14. The method of claim 5 wherein,
the variable Lest is computed from N to 1 downsampled data. - 15. The method of claim 14 wherein,
N is the number 8. - 16. The method of claim 5 wherein,
the variable Lest is computed from Ei (L) and Hi (L) over a wide range of the lag variable L using downsampled data. - 17. The method of claim 5 wherein,
said sequence is downsampled by a rate of eight to one to produce a downsampled sequence, providing said lag value estimate Lest of the period of said downsampled sequence, and wherein periodicity of said waveform is determined by the step of, varying the parameter L, and selecting a particular value of L as the period of said waveform which minimizes the relationship, - space="preserve" listing-type="equation">E.sub.i (L)-2H.sub.i (L)≦
eps E.sub.i (L),
where eps is a small number.
- space="preserve" listing-type="equation">E.sub.i (L)-2H.sub.i (L)≦
eps E.sub.i (L)
- 20. Apparatus for processing a music waveform comprising,
means for sampling said music waveform at intervals of time to produce a music waveform sequence of numerical representations of the waveform, - space="preserve" listing-type="equation">{x.sub.j } for j=0, . . . i, where
i represents the current sample of the waveform and 0,1,2 . . . represent previous time samples of the waveform, means for determining the auto-correlation values of said sequence {xj } at lag values zero and L, and means for determining the smallest value of L which minimizes the difference between the auto-correlation at lag zero and the auto-correlation at lag L, whereby said smallest value of L represents the measured period of said music waveform. - View Dependent Claims (21, 22, 23)
- 24. Apparatus for processing a music waveform comprising,
means for sampling said music waveform at intervals of time to produce a sequence of musical representations at a sample rate of the waveform, {xj } for j=0, 1, 2, . . . i, where i represents the current sample at a current sample rate of the waveform and j=1, j=2 . . . represent prior time samples of the waveform, means for providing an estimate of lag value Lest of the period of the music waveform, means for updating two functions representative of the accumulated energy of the waveform over two periods 2L of the waveform, using - space="preserve" listing-type="equation">E.sub.i (L)=E.sub.i-1 (L)+x.sup.2.sub.i x.sub.i-2L.sup.2,
space="preserve" listing-type="equation">H.sub.i (L)=H.sub.i-1 (L)+x.sub.i x.sub.i-L -x.sub.i-L x.sub.i-2L, andmeans for selecting that lag value of L as the period of the music waveform that minimizes the difference between Ei (L) and 2Hi (L). - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38)
- 26. The apparatus of claim 24 further comprising,
means for retuning said music waveform sequence by changing its period by an amount equal to the difference between said measured period of said music waveform and the period of a note from a musical scale that is closest to said measured period to produce a retuned music waveform sequence. - 27. The apparatus of claim 24 further comprising,
means for retuning said music waveform sequence by changing its period by an amount equal to the difference between said measured period of said music waveform and the period from a MIDI interface to produce a retuned music waveform sequence. - 28. The apparatus of claim 27 further comprising,
means for retuning said music waveform sequence by gradually changing said sample rate to a new sample rate which will convert the period L to said period of a note from a musical scale. - 29. The apparatus of claim 27 further comprising,
means for retuning said music waveform sequence by gradually changing said sample rate to a new sample rate which will convert the period L to said period from said MIDI interface. - 30. The apparatus of claim 26 further comprising,
means for converting said returned waveform sequence into a retuned analog music signal. - 31. The apparatus of claim 27 further comprising,
means for converting said retuned waveform sequence into a retuned analog music signal. - 32. The apparatus of claim 24 further comprising,
means for first applying said sequence {x} for j=0, 1, 2 . . . i, to an 8 to 1 anti-aliasing filter, and means for subsequently downsampling said sequence. - 33. The apparatus of claim 24 wherein, the variable Lest is computed from N to 1 downsampled data.
- 34. The apparatus of claim 33 wherein,
N is the number 8. - 35. The apparatus of claim 24 wherein,
the variable Lest is computed from Ei (L) and Hi (L) over a wide range of the lag variable L using downsampled data. - 36. The apparatus of claim 24 further comprising,
means for downsampling said sequence by a rate of eight to one to produce a downsampled sequence. - 37. The apparatus of claim 36 further comprising,
means for determining a second value of L which minimizes said function, - space="preserve" listing-type="equation">E.sub.i (L)-2H.sub.i (L)≦
eps E.sub.i (L)
so as to identify a missing fundamental frequency of said waveform.
Specification