我正在尝试用 python 制作一个简单的 10 频段均衡器。我已经编写了两个函数来实现此目的,但我有增益问题。我想为每个频段设置增益,但它不起作用。
这里有一个例子。需要一个单通道 wav“audio.wav”文件才能工作。
import numpy as np
import matplotlib.pyplot as plt
import scipy.io.wavfile as wav
from scipy import signal
from scipy.signal import butter, lfilter
def bandpass_filter(data, lowcut, highcut, fs, order=5):
nyq = 0.5 * fs
low = lowcut / nyq
high = highcut / nyq
b, a = butter(order, [low, high], btype='bandpass')
filtered = lfilter(b, a, data)
return filtered
def equalizer_10band (data, fs, gain1=0, gain2=0, gain3=0, gain4=0, gain5=0, gain6=0, gain7=0, gain8=0, gain9=0, gain10=0):
band1 = bandpass_filter(data, …Run Code Online (Sandbox Code Playgroud)