Escolar Documentos
Profissional Documentos
Cultura Documentos
W W n for
W n for
n x
n x n b n mS y n b
n mS y
ov
ov
m
m s
s
Calculation for k
m
k
m
is an optimal shift that is determined
by the normalized cross-correlation between x
and y in the overlap region.
where
k
max
is the maximum allowable shift from
the initial string position of the analysis window
) 3 ].......( [ max
max
0
k R k
m
xy
k k
m
K
m
can be often predicted without computation
of the similarity.
The m
th
shift, k
m
, should be determined by:
] [ max
) (
max
0
1
k R
S S k t
k
m
xy
k k
a s m m
m
if
max
k t o
m
otherwise
There are 7 steps as follows;
1. As an initialization step , take W samples
from the input signal, which samples are
stored in an input signal buffer, and place
them in an output sample buffer for the
output signal.
2. find the start of the first analysis
window mS
a
.
3. Next, find the maximum similarity
between the first W
ov
samples at the start
of the analysis window and at the end of
the output signal by computing the cross-
correlation between the samples from the
start of the analysis window, and the
samples from the end of the output
window.
4. We shift the start of the analysis
window by one or two and repeat step 3.
5. Steps 3 and 4 are repeated until we
have shifted the analysis window by the
maximum amount of k
max
that is allowed.
6. If the maximum cross-correlation
occurs for a certain shift of the analysis
window, overlap-add the last W
ov
samples of the output signal and the
first W
ov
samples of the shifted analysis
window, and transfer W W
ov
further
samples into the output buffer.
7. Steps 2 7 are repeated by choosing
the next analysis window, until the input
signal reaches its end.
The smallest useful synthesis shift is
S
s
= W
ov
The smallest useful window length is
W = 2W
ov
K
max
= 2W
The result can be accept with the proper
choice of the parameters.
The SOLAFS algorithm provides time-
scale modified speech over the wide
range of compression and expansion.
It requires significantly less computation
than many other methods.
From the MATLAB code, it requires a lot
of buffer to hold the sample . It will cause
difficulties in real-time applications.
In real-time applications, they have to
process everything as fast as possible. If
the data is stored in compressed form or
the storage units are slow, they will be
difficult to process.
D.J Hejna. Real-time time-scale
modification of speech via the
synchronized overlap-add algorithm.
Masters thesis, M.I.T.,1990
Don Hejna and Bruce R. Musicus. The
SOLAFS Time-Scale Modification
Algorithm. Research.1991