Ciglet is a lightweight C library for digital signal processing, in particular audio and speech processing.
Language: C99
License: BSD
In the past few years I've been writing and maintaining quite a few C-written speech processing projects (e.g. libllsm, libpyin, moresampler), some of which were partially translated from Matlab/Octave-based prototypes. Gradually I ended up having lots of frequent rewrites of C version of Matlab routines such as sum
, fir1
, conv
, interp1
, etc. In August 2016 I finally made the move to extract all these repeating patterns and group them into one independent library. Since it would be referred by quite a few projects, the new library is meant to be lightweight, easy to link, and fast, which is why it's named ciglet, an acronym of "C-written sIGnal codeLETs".
randu
, randn
max
, min
, linterp
, fastatan2
c_cplx
, c_conj
, c_add
, c_sub
, c_mul
, c_div
, c_exp
, c_abs
, c_arg
sumfp
, sumsqrfp
, maxfp
, minfp
meanfp
, varfp
, medianfp
, xcorr
, corr
, cov
selectnth
, sort
find_peak
, find_valley
, find_maxima
, find_minima
fzero
, polyval
, roots
matmul
, mvecmul
, dot
lu
, lusolve
ppivot
, permm
, permv
linspace
, iota
malloc2d
, free2d
, copy2d
, flatten
, reshape
, transpose
wavread
, wavwrite
boxcar
, hanning
, hamming
, mltsine
, blackman_harris
, nuttall98
, blackman
fft
, ifft
, czt
, iczt
, idft
, dct
, fftshift
wrap
, unwrap
, phase_diff
abscplx
, argcplx
, polar2real
, polar2imag
, complete_symm
, complete_asymm
rceps
, irceps
, minphase
fir1
, conv
, filter
, filtfilt
, moving_avg
, moving_rms
, medfilt1
, kalmanf1d
, kalmans1d
levinson
, lpc
, flpc
, lpgain
, lpspec
, lpresf
interp1
, interp1u
, sincinterp1u
, interp_in_blank
, rresample
gensin
, gensins
, safe_aliased_sinc
, safe_aliased_dsinc
fetch_frame
, diff
, cumsum
, flip
,white_noise
, itakura_saito
mel2freq
, freq2mel
, freq2bark
, bark2freq
, eqloud
, melspace
ifdetector_estimate
, correlogram
, invcrgm
stft
, istft
, qifft
, spgm2cegm
, cegm2spgm
filterbank_spgm
, filterbank_spec
, be2cc
, be2ccgm
spec2env
lfmodel_from_rd
, lfmodel_spectrum
, lfmodel_period
plotopen
, plot
, imagesc
, plotclose