a frequency domain technique for correction of audio distortion caused by variable recording speed:...
TRANSCRIPT
![Page 1: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/1.jpg)
A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed:
Authors
Robert HembreeHenry SkibaAlex Smith
AdvisorDr. Marcus Pendergrass
![Page 2: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/2.jpg)
• Introduction
• Recovery Algorithm
• Mathematical Model
• Performance Testing
• Conclusion
Outline
![Page 3: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/3.jpg)
• Wow and Flutter Distortion – Audio distortion caused by variations in the
speed at which data was recorded – Wow refers to low frequency variations in the
recording speed– Flutter refers to high frequency variations in
the recording speed
• We will use the term “wobble” to refer to either wow or flutter distortion
Introduction
![Page 4: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/4.jpg)
s t Signal to be recorded
Input signal
p r t Position of record head at time t
Position function for record head (record function)
r p Data value recorded at position p
The recording
)(tp r
Recording
Record Head
8156.0)( pr
Introduction
![Page 5: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/5.jpg)
s t r p r r t
Because
and the record function Ψr is assumed invertible, we have
s rr or
r sr 1
)(tp r
Recording
Record Head
8156.0)( pr
Introduction
![Page 6: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/6.jpg)
ˆ s t r p r pb t we have
pbrs ˆ
Combining this with our previous expression for r gives
pbrss 1ˆ
Position function for playback head (playback function)
p pb t Position of playback head at time t
Played-back signal
ˆ s t Signal played back from the recording
Because
Introduction
![Page 7: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/7.jpg)
proof
Reciprocity Theorem
ˆ s s for all s if and only if
pb r
r 1 pb identity
ˆ s s for all s if and only if
So a mismatch between Ψr and Ψpb causes distortion:
pb r ˆ s s
Introduction
![Page 8: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/8.jpg)
t r 1 p
• The wobble w(p) at position p in the recording is defined as the timing error at position p during the record process
• The timing error is the difference between the actual time that the record head was at position p, and the nominal time it would have been at position p had the record function been ideal (i.e. equal to playback function).
= actual time during record process when the record head was at position p
p
v0
= nominal time the record head would have been at position p had the record function been ideal
So
w p r 1 p p /v0
t p /v0
w(p) is the timing error at position p
Introduction
![Page 9: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/9.jpg)
• Knowing the wobble function w(p) would enable us to correct for distortion caused by a mismatch between Ψr and Ψpb .
0.8156
p
t p /v0Nominal time - incorrect
Original recording
Introduction
![Page 10: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/10.jpg)
• Knowing the wobble function w(p) would enable us to correct for distortion caused by a mismatch between Ψr and Ψpb .
0.8156
p
actual time
t p /v0 w p Original recording
Introduction
![Page 11: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/11.jpg)
• Knowing the wobble function w(p) would enable us to correct for distortion caused by a mismatch between Ψr and Ψpb .
Resample
0.8156
p
t p /v0 w p Original recording
actual time
0.7942
p
t p /v0 Ready for Ψpb
Corrected recording
Introduction
![Page 12: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/12.jpg)
Basic Assumptions
pb t v0t
• The playback function is ideal, constant velocity:
• The record function is unknown, but invertible.
• The record and playback functions are continuous and differentiable.
• The recording contains an isolated sinusoid of known frequency. This will be used as a reference by the recovery algorithm.
Introduction
![Page 13: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/13.jpg)
Wobble
f f
Wobble-Induced Distortion in the Frequency Domain
![Page 14: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/14.jpg)
• To correct wobble distortion, we need information about the wobble
• We might know something about the original signal that was recorded.– We will focus on the case when the recording
contains a sine wave of known frequency
Wobble Recovery Algorithm
![Page 15: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/15.jpg)
• We can use that information, along with the distorted recording, to deduce the wobble function.
• This wobble function can be used to resample the corrupt file in order to recover the original file
Wobble Recovery Algorithm
![Page 16: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/16.jpg)
Baseband Shift
f f
Correcting for Wobble in a Sinusoid
![Page 17: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/17.jpg)
f
Inverse FT ipwife )(2 0
Correcting for Wobble in a Sinusoid
![Page 18: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/18.jpg)
Wobble
f f
Wobble-Induced Distortion in the Frequency Domain
![Page 19: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/19.jpg)
f
BandPass Filter
f
Wobble Recovery Algorithm
![Page 20: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/20.jpg)
Shift Baseband Inverse Fourier Transform
f0
ipwife )(2 0
Wobble Recovery Algorithm
![Page 21: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/21.jpg)
Complex ln
t
p
w(p)+ϑ
Interpolate
(timing error)
is a phase shift in the model, which only introduces a delay
Wobble Recovery Algorithm
![Page 22: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/22.jpg)
Modeling the Wobble
• In order to test our recovery algorithm, we need a variety of distorted recordings to work with.
• A model for the record function Ψr was developed.
• Model encompasses a variety of distortion scenarios
• Weak to strong distortion
• Slowly-varying to quickly-varying distortion
![Page 23: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/23.jpg)
Modeling the Wobble
• Begin by modeling the velocity function of the record head.
v t dp
dt r t
• Without loss of generality the average velocity is 1.
• User specifies
• standard deviation of the velocity fluctuations
• maximum frequency of the velocity fluctuations in time.
![Page 24: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/24.jpg)
Modeling the Wobble
• Velocity is modeled as
v t exp a bn t
• n(t) is a band-limited Gaussian noise process
• lognormal velocity process
• maximum frequency in n(t) is fmax (user specified)
• a and b are chosen so that
E v t 1
Var v t 2user specified
![Page 25: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/25.jpg)
Simulated Wobble Example
0.1, fmax 1 Hz
![Page 26: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/26.jpg)
Simulated Wobble Example
0.1, fmax 10 Hz
![Page 27: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/27.jpg)
Simulated Wobble Example
0.5 fmax 10 Hz
![Page 28: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/28.jpg)
How well does the Algorithm actually work?
Henry Skiba
Introduces White Gaussian noise to the recording at varying power
Robert Hembree
Steps a structured interferer through a sine wave
Performance Testing
![Page 29: A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor](https://reader035.vdocument.in/reader035/viewer/2022070308/551bf82b550346a34f8b479a/html5/thumbnails/29.jpg)
• Developed wobble recovery algorithm
-Uses a reference sinusoid to recover wobble, and then resample the recording
• Performance Tests were performed on the algorithm– Random Noise
10^-2 relative error at 10 dB SNR
- Structured Interferer
10^-3 relative error at 10dB SNR
Interpolation raises the noise floor
Conclusion