introduction recovery algorithm mathematical model performance testing conclusion

29
A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor Dr. Marcus Pendergrass

Upload: emerald-bryant

Post on 31-Dec-2015

26 views

Category:

Documents


0 download

DESCRIPTION

A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed: Authors Robert Hembree Henry Skiba Alex Smith Advisor Dr. Marcus Pendergrass. Outline. Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion. Introduction. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

A Frequency Domain Technique for Correction of Audio Distortion Caused by Variable Recording Speed:

Authors

Robert HembreeHenry SkibaAlex Smith

AdvisorDr. Marcus Pendergrass

Page 2: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

• Introduction

• Recovery Algorithm

• Mathematical Model

• Performance Testing

• Conclusion

Outline

Page 3: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

• 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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

ˆ 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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

• 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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

• 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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

• 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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

Wobble

f f

Wobble-Induced Distortion in the Frequency Domain

Page 14: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

• 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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

• 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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

Baseband Shift

f f

Correcting for Wobble in a Sinusoid

Page 17: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

f

Inverse FT ipwife )(2 0

Correcting for Wobble in a Sinusoid

Page 18: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

Wobble

f f

Wobble-Induced Distortion in the Frequency Domain

Page 19: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

f

BandPass Filter

f

Wobble Recovery Algorithm

Page 20: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

Shift Baseband Inverse Fourier Transform

f0

ipwife )(2 0

Wobble Recovery Algorithm

Page 21: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

Simulated Wobble Example

0.1, fmax 1 Hz

Page 26: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

Simulated Wobble Example

0.1, fmax 10 Hz

Page 27: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

Simulated Wobble Example

0.5 fmax 10 Hz

Page 28: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

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: Introduction Recovery Algorithm Mathematical Model Performance Testing Conclusion

• 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