How to pass a audio signal through a filter

133 vues (au cours des 30 derniers jours)
Gokul
Gokul le 18 Fév 2013
Commenté : Sai Manas D C le 1 Juil 2020
How to pass a audio signal through a filter ? It should work based on spectral energy i.e if its between 0-4 kHz it falls on speech band and If it falls between 4 kHz-8 kHz then it comes under noise band.Now the VOS(voice operated switch) should be activated if the signal is in speech band and it should be deactivated when it is in noise band. Can some one help me on this problem.
  2 commentaires
Jan
Jan le 18 Fév 2013
Please explain, what you have tried so far and which problems occurred. Suggesting improvements is much easier than solving your problem completely from scratch.
Gokul
Gokul le 18 Fév 2013
I am a beginner and i need some ideas to start up with.So can u please help on how to get start with it.

Connectez-vous pour commenter.

Réponse acceptée

Carlos
Carlos le 18 Fév 2013
The first step is to design a filter to obtain the A and B vector coefficients.Then use the Butter function, for instance to obtain your signal(type Butter in your Matlab command window and you will find many other type of filters). Once you have obtained the B and A vector coefficients you can filter your signal using the function filter.
y=filter(x,A,B) x(is your input signal) and y your filtered signal.
Once you have filtered the signal you can calculate the spectral energy before and after filtering to find out if the filter has removed a significant part of your signal.
  4 commentaires
Odrisso
Odrisso le 14 Nov 2014
Hi Carlos. I have aquestion on your code. Why you choose 6 in the line: [b,a]=butter(6,wn);
Please let me know.
Sai Manas  D C
Sai Manas D C le 1 Juil 2020

6 is the order of filter, it can be any real integer. Greater the order of filter it's response approaches nearer to ideal characteristics

Connectez-vous pour commenter.

Plus de réponses (5)

Carlos
Carlos le 18 Fév 2013
This is fine at the moment. Now filter with from 0 to 4000Hz to make sure the results are different(I mean if you filter from 4000 to 8000Hz and the signal after filtering is the same, then filter in the 0 to 4000Hz band to make sure the signal changes in this case).
  6 commentaires
Darsana P M
Darsana P M le 16 Mar 2017
If i want to divide the given audio signals into different frequencies ie 20-30 Hz, 30-40Hz and so on. What should i do?
Walter Roberson
Walter Roberson le 16 Mar 2017
You could construct a collection of band-pass filters that you pass the same data through.

Connectez-vous pour commenter.


dev sanghvi
dev sanghvi le 24 Mai 2016
you can check my video.
https://youtu.be/ZPNOgLwfjNc

Sanjay  Gupta
Sanjay Gupta le 2 Mar 2017
what is the significance of "wn" in the code?
  1 commentaire
Walter Roberson
Walter Roberson le 2 Mar 2017
wn is the cutoff frequency, specified as a value between 0 and 1 where 1 is the Nyquist frequency. This proportion of nyquist frequency is commonly used in filter specification, because it makes the filter calculations themselves independent of frequency.

Connectez-vous pour commenter.


Zahraa Almousawi
Zahraa Almousawi le 18 Oct 2017
if i have impulse response and i convoluted it with a sound and the sound become so noisy how can i filter it after the convolution function? i really need a help!

saikiran Puranam
saikiran Puranam le 6 Mai 2020
Can you please provide me a Matlab code for "Human Voice filtering with Band-stop filter design " Using the functions of MATLAB R2020a.

Catégories

En savoir plus sur Audio Processing Algorithm Design dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by