plotting voice segments in sound file

So my project is to take a .wav file with speech segments and create a script that will label the voice portions on the plot of the actual speech based on its spectrum. So, we know that voice frequencies range from 85-400 Hz. I've taken the FFT of the sample and the frequency distribution is strange. Very high at the low range and high range with almost nothing in the voice range. There's not a lot of other noise in the sample. any advice would be appreciated. What I would like to do is measure frequency across time and label parts that fall within in speech frequencies as the speech portions.

4 Comments

Please show us the code you use.
to start:
fs=10000;
[sp,fs]=wavread('soundfile.wav'); %this particular sound file is 10 seconds long
>> spDFT=fft(sp);
>> stem (abs(spDFT))
You can actually perform Fourier transform, which zeroes out the un-voiced signal and you are left with only voiced part.
Now you can plot the graph to get only the voiced part.
You forgot to attach 'soundfile.wav'. Why not just threshold the signal? Are there other noises just as loud as the voice but in a different frequency range?

Sign in to comment.

Answers (0)

Categories

Find more on Simulation, Tuning, and Visualization in Help Center and File Exchange

Asked:

on 11 May 2014

Commented:

on 29 Jun 2016

Community Treasure Hunt

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

Start Hunting!