digitalfilter

some Digital Filters - Butterworth, Chebyschev and Bessel.

$ luarocks install digitalfilter

This module provides some Digital Filters - Butterworth, Chebyschev and Bessel, in lowpass and highpass, also simplified bandpass and bandstop.

local DF = require 'digitalfilter' ;
local my_filter = DF.new_digitalfilter ({ --returns a closure
filtertype = 'butterworth',
order = 3,
shape = 'lowpass',
freq = 1000,
samplerate = 44100,
})
for i = 1,95 do
local u = (math.floor((i%16)/8 + 0.01)*2 - 1) -- square wave
local x = my_filter(u)
if i >= 80 then print('my_filter('..u..') \t=', x) end
end

Versions

2.1-02 years ago51 downloads
2.0-02 years ago13 downloads
1.4-02 years ago17 downloads
1.3-02 years ago17 downloads
1.2-02 years ago13 downloads
1.1-02 years ago17 downloads
1.0-02 years ago14 downloads

Dependencies

lua >= 5.1, < 5.4

Labels

Manifests