| getSpec | R Documentation |
Routes user-friendly strings to various functions for producing spectrogram-like representations (spectrogram, mel-spectrograms, RMS envelopes, spectra, etc.), executes them, and standardizes the output to a matrix with features in rows and time (in ms) in columns.
getSpec(audio, specFun = "melfcc", specFun_pars = list())
audio |
a list returned by |
specFun |
the function used to extract a spectrogram-like feature matrix. Can be a string or a custom function that takes audio (numeric vector) as the first argument and returns a spectrogram-like matrix with time in columns and features in rows (see examples). Supported strings:
|
specFun_pars |
a list of parameters passed to |
Returns a spectrogram-like matrix with time in columns (ms) and
features in rows (names as passed by specFun).
a = rnorm(100)
# call function by name as a string (must be among the recognized strings)
soundgen:::getSpec(audio = soundgen:::readAudio(a, samplingRate = 1600),
specFun = 'powspec', # adds freq labels
specFun_pars = list(wintime = .02, steptime = .01))
soundgen:::getSpec(audio = soundgen:::readAudio(a, samplingRate = 1600),
specFun = 'spectrogram',
specFun_pars = list(windowLength = 25))
soundgen:::getSpec(audio = soundgen:::readAudio(a, samplingRate = 1600),
specFun = 'stft',
specFun_pars = list(wl = 20))
soundgen:::getSpec(audio = soundgen:::readAudio(a, samplingRate = 1600),
specFun = 'melspec',
specFun_pars = list(nbands = 5))
soundgen:::getSpec(audio = soundgen:::readAudio(a, samplingRate = 1600),
specFun = 'env',
specFun_pars = list(wl = 20))
soundgen:::getSpec(audio = soundgen:::readAudio(a, samplingRate = 1600),
specFun = 'ssm', # ssm itself calls getSpec()
specFun_pars = list(specFun = 'stft', specFun_pars = list(wl = 20)))
soundgen:::getSpec(audio = soundgen:::readAudio(a, samplingRate = 1600),
specFun = 'env',
specFun_pars = list(wl = 20))
soundgen:::getSpec(audio = soundgen:::readAudio(a, samplingRate = 1600),
specFun = 'env',
specFun_pars = list(wl = 20))
soundgen:::getSpec(audio = soundgen:::readAudio(a, samplingRate = 1600),
specFun = 'env',
specFun_pars = list(wl = 20))
soundgen:::getSpec(audio = soundgen:::readAudio(a, samplingRate = 1600),
specFun = 'spectrum',
specFun_pars = list(wl = 20))
# pass a function object directly (must accept audio as a numeric vector)
soundgen:::getSpec(audio = soundgen:::readAudio(a, samplingRate = 1600),
specFun = tuneR::powspec,
specFun_pars = list(sr = 1600, wintime = .02, steptime = .01))
# (NB: frequency labels not added - must be handled by the specFun itself)
soundgen:::getSpec(audio = soundgen:::readAudio(a, samplingRate = 1600),
specFun = spectrogram,
specFun_pars = list(samplingRate = 1600, windowLength = 2, plot = FALSE))
# construct a custom function
soundgen:::getSpec(audio = soundgen:::readAudio(1:10, samplingRate = 20),
specFun = function(x) matrix(cumsum(x), nrow = 1),
specFun_pars = list())
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.