Documentation ¶
Index ¶
- func FreqToBin(freq, nFft, sampleRate float32) int
- func FreqToMel(freq float32) float32
- func MelToFreq(mel float32) float32
- type FilterBank
- type Params
- func (mel *Params) CepstrumDct(ch, step int, fBankData *etensor.Float32, mfccSegmentData *etensor.Float32, ...)
- func (mel *Params) Defaults()
- func (mel *Params) FftReal(out []complex128, in *etensor.Float32)
- func (mel *Params) Filter(ch int, step int, windowIn *etensor.Float32, filters *etensor.Float32, ...)
- func (mel *Params) FilterDft(ch, step int, dftPowerOut etensor.Float32, segmentData *etensor.Float32, ...)
- func (mel *Params) InitFilters(dftSize int, sampleRate int, filters *etensor.Float32)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type FilterBank ¶
type FilterBank struct { NFilters int `viewif:"On" def:"32,26" desc:"number of Mel frequency filters to compute"` LoHz float32 `viewif:"On" def:"120,300" step:"10.0" desc:"low frequency end of mel frequency spectrum"` HiHz float32 `` /* 163-byte string literal not displayed */ LogOff float32 `` /* 209-byte string literal not displayed */ LogMin float32 `viewif:"On" def:"-10" desc:"minimum value a log can produce -- puts a lower limit on log output"` Renorm bool `desc:" whether to perform renormalization of the mel values"` RenormMin float32 `` /* 146-byte string literal not displayed */ RenormMax float32 `` /* 146-byte string literal not displayed */ RenormScale float32 `inactive:"+" desc:"1.0 / (ren_max - ren_min)"` }
FilterBank contains mel frequency feature bank sampling parameters
func (*FilterBank) Defaults ¶
func (mfb *FilterBank) Defaults()
Defaults initializes FBank values - these are the ones you most likely need to adjust for your particular signals
type Params ¶
type Params struct { FBank FilterBank BinPts []int32 `view:"no-inline" desc:" mel scale points in fft bins"` CompMfcc bool `desc:" compute cepstrum discrete cosine transform (dct) of the mel-frequency filter bank features"` MfccNCoefs int `def:"13" desc:" number of mfcc coefficients to output -- typically 1/2 of the number of filterbank features"` // Todo: should be 12 total - 2 - 13, higher ones not useful }
Params
func (*Params) CepstrumDct ¶
func (mel *Params) CepstrumDct(ch, step int, fBankData *etensor.Float32, mfccSegmentData *etensor.Float32, mfccDct *etensor.Float32)
CepstrumDct applies a discrete cosine transform (DCT) to get the cepstrum coefficients on the mel filterbank values
func (*Params) Filter ¶
func (mel *Params) Filter(ch int, step int, windowIn *etensor.Float32, filters *etensor.Float32, dftPower *etensor.Float32, segmentData *etensor.Float32, fBankData *etensor.Float32, mfccSegmentData *etensor.Float32, mfccDct *etensor.Float32)
Filter filters the current window_in input data according to current settings -- called by ProcessStep, but can be called separately
Click to show internal directories.
Click to hide internal directories.