Sei sulla pagina 1di 15

MUS421/EE367B Lecture 10A

Review of OverLap-Add (OLA) and Filter-Bank


Summation (FBS) Interpretations of Short-Time Fourier
Analysis, Modification, and Resynthesis
Julius O. Smith III (jos@ccrma.stanford.edu)
Center for Computer Research in Music and Acoustics (CCRMA)
Department of Music, Stanford University
Stanford, California 94305
March 24, 2014

OLA and FBS Duality Review


We now review Filter Bank Summation (FBS) and
OverLap Add (OLA), stressing their Fourier duality.
For simplicity, R will be taken as 1. Remember that
in OLA, R is the hop size, or the distance (in time
samples) between successive overlap-add frames. In
FBS, R is interpreted as a downsampling factor.
The common starting point for both OLA and FBS is
the STFT:

X
x(n)w(n m)ejk n
Xm(k ) =
n=

The point of departure is the interpretation of the


above summation.

STFT Analysis
OLA
Xm(k ) = Sample2/N (DTFT(xm))

X
[x(n)w(n m)]ejk n
=
=

n=

xm(n)ejk n

n=

= Fk {xm(n)}
where xm(n) is the mth windowed frame of x.
Hence we have the following interpretation:

For each frame:


Window the signal
Take the Fourier Transform

z 1

x(n)
w0

w1

z 1

z 1

wM 1

Windowing

DFT
STFT
Xn (0 )

Xn (1 )

Xn (N 1 )

FBS

Xm(k ) =
=

[x(n)ejk n]w(n m)

n=

xk (n)w(m
n)

n=

= (xk w)(m)

where xk is x modulated by ejk n, and w = Flip(w).


Hence we have the following interpretation:
For each analysis frequency:
Heterodyne signal by ejk n
Filter with w

FBS Analysis Filter Bank


Xn(0)
Flip(w)

ej0n
Xn(1)

x(n)
Flip(w)

ej1n

Xn(N 1)
Flip(w)

ejN 1n
STFT

STFT Re-Synthesis

OLA
To resynthesize the signal:
Inverse Transform
Overlap and add shifted frames

x=

mH))))
ShiftmR(DFT1(Sample 2 ,k (DTFT(X
N

m=

COLA constraint:
P
m= w(n mR) = c, where c is any constant

W (l ) = 0, l = 1, 2, . . . , R 1, l = 2l/R, i.e.,
Window transform is 0 at all harmonics of the frame
rate

OLA Analysis and Synthesis


z 1

x(n)
w0

w1

z 1

z 1

wM 1

Windowing

DFT
Xn (0 )

Xn (1 )

Xn (N 1 )

STFT

IDFT

Overlap
Add
Buffer

Filter-Bank Summation (FBS)


To resynthesize the signal:
Heterodyne each subband (shift in frequency)
Sum

x(m) =

N
1
X

Xm(k )ejk m

k=0

Window constraint:
w(rN ) = 0,

|r| = 1, 2, . . .

This is equivalent to a constant overlap constraint in


frequency (dual of Poisson summation formula)
The filterbank summation performs an overlap add in
frequency.

acements

Xn (0 )
X

Flip(w)

ej0n

ej0n
Xn (1 )

x(n)
X

Flip(w)

ej1n

ej1n

Xn (N 1 )
X

Flip(w)

ejN 1n

ejN 1n
STFT

Unmodified FBS is COLA in the frequency domain,


Nyquist(N ) in the time domain
Unmodified OLA is COLA in the time domain,
Nyquist(2L/M ) in the frequency domain

10

STFT Fixed Spectral Modification

OLA
Perform multiplicative spectral modification before
resynthesis
Must zero pad in time, and window must meet COLA
constraint
Results in the convolution of the signal and the
impulse response of the filter
z 1

x(n)
w0

w1

z 1

z 1

wM 1

Windowing

DFT
H0

Xn (0 )
H1
Yn (0 )

Xn (1 )
HM 1

Yn (1 )

Xn (N 1 )

STFT

Yn (N 1 )

Spectral
Modification
Modified
Spectrum

IDFT

Overlap
Add
Buffer

11

FBS
Perform multiplicative spectral modification before
resynthesis
Results in convolution of the signal and the windowed
impulse response of the filter
Xn (0 )
X

Flip(w)

ej0 n

H0

ej0 n

Xn (1 )

x(n)
X

Flip(w)

ej1 n

H1

ej1 n

Xn (N 1 )
X

Flip(w)

ejN 1 n

H(N-1)

STFT

Modification

12

ejN 1 n

STFT Time Varying Spectral Modification

OLA
Perform time varying multiplicative spectral
modification before resynthesis
Must zero pad, and window must meet COLA
constraints
Results in the convolution of the signal and a
window-filtered version of the time varying impulse
response (no length limit)

13

z 1

x(n)

w0

w1

z 1

z 1

wM 1

Windowing

DFT
Hn (0)

Xn (0 )
Hn (1)
Yn (0 )

Xn (1 )
Hn (N 1)

Yn (1 )

XmN1
X
YmN1

STFT

Time
Varying
Modification
Modified
Spectrum

IDFT

Overlap
Add
Buffer

FBS
Perform multiplicative time varying spectral
modification before resynthesis
Results in convolution of the signal and the windowed
time varying impulse response of the filter
Spectral changes occur immediately
Discontinuities likely in time domain when filter
changes
14

OLA more practical for time-varying filter


implementation
Xn (0 )
X

Flip(w)

ej0 n
x(n)
X

Hn (0)
Xn (1 )
Flip(w)

ej1 n

Hn (1)

ej0 n
X

ej1 n

Xn (N 1 )
X

Flip(w)

ejN 1 n

Hn (N 1)
STFT

Time
Varying
Modification

15

ejN 1 n

Potrebbero piacerti anche