designParamEQ
设计参数均衡器
语法
[B,A] = designparamq (N,增益,中心频率,带宽)
[B,A] = designparamq (N,增益,中心频率,带宽,模式)
描述
例子
设计双波段参数均衡器
指定滤波器的顺序,以dB为单位的峰值增益,归一化中心频率,以及参数均衡器的频带的归一化带宽。
N = [2,4];增益= [6,-4];centerFreq = [0.25,0.75];带宽= [0.12,0.10];
使用指定的参数生成过滤器系数。
[B,A] = designparamq (N,增益,中心频率,带宽);
创建一个过滤器矩阵兼容fvtool
.
SOS = [B',[ones(sum(N)/2,1),A']];
想象你的过滤器设计。
fvtool (SOS)
使用SOS参数均衡器过滤音频
设计了一个二阶截面(SOS)参数均衡器designParamEQ
,并过滤音频流。
构造音频文件读取器和音频设备写入器系统对象。用读者的抽样率作为作者的抽样率。调用设置
减少音频流循环中初始化的计算量。
frameSize = 256;fileReader = dsp。AudioFileReader (...“rockguitar - 16 - 44 - p1 -立体声- 72 secs.wav”,...“SamplesPerFrame”, frameSize);sampleRate = fileReader.SampleRate;deviceWriter = audioDeviceWriter(...“SampleRate”, sampleRate);设置(fileReader);设置(deviceWriter (frameSize, 2));
通过您的设备播放音频信号。
Count = 0;而count < 2500 audio = fileReader()deviceWriter(音频);Count = Count +1;结束重置(fileReader);
设计SOS参数均衡器。
N = [4,4];增益= [-25,35];centerFreq = [0.01,0.5];带宽= [0.35,0.5];[B,A] = designparamq (N,增益,中心频率,带宽);
想象你的过滤器设计。
SOS = [B',[ones(4,1),A']];fvtool (SOS,...“Fs”, fileReader。SampleRate,...“FrequencyScale”,“日志”);
构造一个双方过滤器系统对象。
myFilter = dsp。BiquadFilter (...“SOSMatrixSource”,输入端口的,...“ScaleValuesInputPort”、假);
构造一个频谱分析仪来可视化原始音频信号和通过参数均衡器的音频信号。
Scope = dsp。简介(...“SampleRate”sampleRate,...“PlotAsTwoSidedSpectrum”假的,...“FrequencyScale”,“日志”,...“FrequencyResolutionMethod”,“WindowLength”,...“WindowLength”frameSize,...“标题”,“原始和均衡信号”,...“ShowLegend”,真的,...“ChannelNames”, {原始信号的,“平衡的信号”});
播放过滤后的音频信号,并可视化原始和过滤后的频谱。
设置(范围、(frameSize 2));Count = 0;而count < 2500 originalSignal = fileReader();equalizedSignal = myFilter(originalSignal,B,A);范围([originalSignal (: 1), equalizedSignal (: 1)));deviceWriter (equalizedSignal);Count = Count +1;结束发布(scope)发布(deviceWriter)发布(fileReader)
使用FOS参数均衡器过滤音频
设计了一个四阶截面(FOS)参数均衡器designParamEQ
,并过滤音频流。
构造音频文件读取器和音频设备写入器系统对象。用读者的抽样率作为作者的抽样率。调用设置
减少音频流循环中初始化的计算量。
frameSize = 256;fileReader = dsp。AudioFileReader (...“rockguitar - 16 - 44 - p1 -立体声- 72 secs.wav”,...“SamplesPerFrame”, frameSize);sampleRate = fileReader.SampleRate;deviceWriter = audioDeviceWriter(...“SampleRate”, sampleRate);设置(fileReader);设置(deviceWriter (frameSize, 2));
通过您的设备播放音频信号。
Count = 0;而count < 2500 x = fileReader();deviceWriter (x);Count = Count +1;结束重置(fileReader);
设计FOS参数均衡器系数。
N = [2,4];增益= [5,10];centerFreq = [0.025,0.65];带宽= [0.025,0.35];模式=“安全系数”;[B,A] = designparamq (N,增益,中心频率,带宽,模式);
构建FOS IIR滤波器。
Section1 = dsp。IIRFilter (“分子”B(: 1)”,“分母”(1, (: 1) ');Section2 = dsp。IIRFilter (“分子”B(: 2)”,“分母”(1, (: 2) ');
可视化你的参数均衡器的频率响应。
[H1,w] = freqz(section1,8192,sampleRate);H2 = freqz(section2,8192,sampleRate);H = 20.*log10(abs(H1.*H2));semilogx (w H);标题(“震级响应(dB)”)包含(的频率(赫兹)) ylabel (“(dB)级”网格)在
构造一个频谱分析仪来可视化原始音频信号和通过参数均衡器的音频信号。
Scope = dsp。简介(...“SampleRate”sampleRate,...“PlotAsTwoSidedSpectrum”假的,...“FrequencyScale”,“日志”,...“FrequencyResolutionMethod”,“WindowLength”,...“WindowLength”frameSize,...“标题”,“原始和均衡信号”,...“ShowLegend”,真的,...“ChannelNames”, {原始信号的,“平衡的信号”});
播放过滤后的音频信号,并可视化原始频谱和过滤后的频谱。
设置(范围、(frameSize 2));Count = 0;而count < 2500 x = fileReader();Y = section1(x);Z = section2(y);范围([x(: 1)、z (: 1)));deviceWriter (z);Count = Count + 1;结束release(fileReader) release(deviceWriter) release(scope)
输入参数
N
- - - - - -过滤器订单
标量|行向量
筛选器顺序,指定为长度相同的标量或行向量centerFreq
.向量的元素必须是偶数。
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
获得
- - - - - -峰值增益(dB)
标量|行向量
dB中的峰值增益,指定为长度相同的标量或行向量centerFreq
.向量的元素必须是实值的。
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
centerFreq
- - - - - -均衡器频带的归一化中心频率
标量|行向量
均衡器频带的归一化中心频率,指定为0到1范围内实值的标量或行向量,其中1对应奈奎斯特频率(π rad/sample)。如果centerFreq
指定为行向量时,为的每个元素设计了独立的均衡器centerFreq
.
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
带宽
- - - - - -归一化的带宽
标量|行向量
归一化带宽,指定为长度相同的标量或行向量centerFreq
.向量的元素被指定为0到1范围内的实数,其中1对应于奈奎斯特频率(π rad/sample)。
归一化带宽是在获得/ 2dB。如果增益设置为负
(陷波滤波器),在3 dB衰减点处测量归一化带宽:
.
若要将八度带宽转换为标准化带宽,请计算相关的问的因素是
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
模式
- - - - - -设计模式
“sos”
(默认)|“安全系数”
设计模式,指定为“sos”
或“安全系数”
.
“sos”
——实现你的均衡器作为级联二级过滤器。“安全系数”
实现你的均衡器作为级联的四阶滤波器。因为四阶分段不需要计算根,所以通常计算效率更高。
数据类型:字符
|字符串
输出参数
B
-分子滤波系数
矩阵
分子滤波系数,作为矩阵返回。每一栏B
对应于级联均衡器的不同二阶或四阶部分的分子系数。
一个
-分母滤波系数
矩阵
分母过滤器系数,作为矩阵返回。每一栏一个
对应于级联均衡器的不同二阶或四阶部分的分母系数。
一个
不包括各部分的领先单位系数。
扩展功能
C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。
另请参阅
功能
系统对象
在R2016a中介绍
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。万博1manbetx
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。