Filter Visualization Tool help

Hi, I have tried to execute the following code :
clc;
clear all;
n = 6; f = 0.8; a =fir1(n,f,'high'); %fir high pass filter b = fir1(n,f, 'low'); %fir low pass filter [y,fs] = audioread('pong.wav'); %load audio file
o = filter(a,1,y); %passing audio to designed high pass filter p = filter(b,1,o); %passing o to designed low pass filter
fvtool(p,1); %use to display designed filter
subplot(2,1,1); plot(y); %original signal y
subplot(2,1,2); plot(p); %filtered signal
But it shows following error:
Error using Filteraudiosignal (line 14) When first input is a matrix, it must have exactly 6 columns to be a valid SOS matrix.
Can anybody help me in this regard??

回答 (1 件)

Dheeraj
Dheeraj 2024 年 9 月 4 日

0 投票

Hi Ahmad Bilal,
The error you're encountering occurs because the "filter" function expects the first input to be a filter coefficient vector or a matrix when working with second-order sections (SOS) in certain contexts. However, in your case, the input a and b are FIR filter coefficients, not an SOS matrix.

カテゴリ

ヘルプ センター および File ExchangeDigital and Analog Filters についてさらに検索

タグ

質問済み:

2018 年 3 月 28 日

回答済み:

2024 年 9 月 4 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by