if (FALSE) {
target = soundgen(sylLen = 600, pitch = c(300, 200),
rolloff = -15, play = TRUE, plot = TRUE)
# we hope to reproduce this sound
# Match pars based on acoustic analysis alone, without any optimization.
# This *MAY* match temporal structure, pitch, and stationary formants
m1 = matchPars(target = target,
samplingRate = 16000,
maxIter = 0, # no optimization, only acoustic analysis
verbose = TRUE)
cand1 = do.call(soundgen, c(m1$pars, list(
temperature = 0.001, play = TRUE, plot = TRUE)))
# Try to improve the match by optimizing rolloff
# (this may take a few minutes to run, and the results may vary)
m2 = matchPars(target = target,
samplingRate = 16000,
pars = 'rolloff',
maxIter = 100,
verbose = TRUE)
# rolloff should be moving from default (-9) to target (-15):
sapply(m2$history, function(x) x$pars$rolloff)
cand2 = do.call(soundgen, c(m2$pars, list(play = TRUE, plot = TRUE)))
}
Run the code above in your browser using DataLab