firls-rs/test.py

35 lines
721 B
Python

#!/usr/bin/env python3
from scipy import signal
import matplotlib.pyplot as plt
import numpy as np
def main():
fs = 8000.0
coeffs = [
-0.0047233836,
0.04476544,
-0.038443737,
-0.0911246,
0.2894902,
0.6123418,
0.2894902,
-0.0911246,
-0.038443737,
0.04476544,
-0.0047233836,
]
freq_space = np.linspace(-fs/2 / (fs/2)*np.pi, fs/2 / (fs/2)*np.pi, 512)
freqs, response = signal.freqz(coeffs, worN=freq_space)
response = 10 * np.log(abs(response))
plt.plot(fs/2*freqs/(np.pi), response)
plt.grid()
plt.show()
if __name__ == '__main__':
main()