Filter Visualization Tool help

1 view (last 30 days)
Ahmad Bilal
Ahmad Bilal on 28 Mar 2018
Answered: Dheeraj on 4 Sep 2024
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??

Answers (1)

Dheeraj
Dheeraj on 4 Sep 2024
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.

Categories

Find more on Digital and Analog Filters in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!