×
INTELLIGENT WORK FORUMS
FOR ENGINEERING PROFESSIONALS

Log In

Come Join Us!

Are you an
Engineering professional?
Join Eng-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Jobs

Automatic extraction of signals from many audio files

Automatic extraction of signals from many audio files

Automatic extraction of signals from many audio files

(OP)
Hi, this is my first post! I work as a water engineer but part of my job is product development.

So, I have a set of many audio files (1000+, will be larger when the project is commercial) which are around 2 minutes in length with around 10s of signal I care about and the rest is noise. I have a pretty good idea of what I’d like to do but not entirely sure of how to do it.

I'd like to take a FFT of the noise profile and subtract this from the waveform of the entire signal to attenuate the noise. Then extract the part of the file I'm interested in based off the differential in amplitude of the signal against the background noise. I'd then like to take this information and run an FFT on this part of the signal and normalise each of the different signals about a common peak frequency. Once this has been done I'd like to analyse add up the bins of the signal between 1kHz to 5kHz and output as a single number.

This is the initial stage of my project but I need to extract the signals before I can start playing with them :) Any help would be much appreciated!

Cheers

RE: Automatic extraction of signals from many audio files

"I'd like to take a FFT of the noise profile and subtract this from the waveform of the entire signal to attenuate the noise."

If the noise is 'white', then its spectrum will be flat. So you might not gain much by taking the FFT of it.

"...based off the differential in amplitude of the signal against the background noise."

In radio, that's called a squelch.

RE: Automatic extraction of signals from many audio files

Running an FFT will help you determine what frequency components are in the original signal, but come time to remove those unwanted components you'll need some form of filter (the FFT itself is not a filter, just a "frequency binner"). If you already know the frequencies of interest (it sounds like you have some frequency spikes you care about), then just filter those out and "count" them.

Dan - Owner
http://www.Hi-TecDesigns.com

RE: Automatic extraction of signals from many audio files

Sounds like a project I did in matlab. Take one second of data from audio file. Find strongest frequency. Filter out all other frequencies. Repeat until entire file is filtered.

RE: Automatic extraction of signals from many audio files

(OP)

VE1BLL, the noise profile is not flat, it always tends to be a pink noise spectrum, but can vary between the different data sets. Hence why I want to take a sample of the noise and subtract the FFT of the noise spectrum from the entire signal.

RE: Automatic extraction of signals from many audio files

(OP)
I should probably clarify, I'm trying to detect weather or not an orifice releasing air is clogged or not with the spectrum of the audio from a working orifice tending to be in the 1kHz to 5/6kHz region. The thing I'm really having trouble with is differentiating the part of the signal I want from the rest of the data captured.

RE: Automatic extraction of signals from many audio files

A bandpass filter will be the first step to get rid of the bulk of extraneous info. I'd probably look for spikes/shifts in the spectrum that correspond to a dirty orifice (a new "whistle" tune, if you will)... another case is when the frequencies stay the same but the amplitude changes (a "whistle" lowers in volume). In those cases, you need to determine what amounts to a significant enough shift to be detectable with a minumum of false positives/negatives. Unless you're lucky, there will be a range for both known good and known bad orifices.

Dan - Owner
http://www.Hi-TecDesigns.com

RE: Automatic extraction of signals from many audio files

Remember that noise is random, so you can't subtract the noise from one data set from another data set. A FFT is just an analysis of the noise, not really a model of the noise.

Z

RE: Automatic extraction of signals from many audio files

If what you are attempting makes sense then Matlab or its free equivalent octave or their possible replacements scilab or python are probably the tools of choice. I suspect your main challenge will be characterising good vs bad signals,this may be an application for machine learning.

Cheers

Greg Locock


New here? Try reading these, they might help FAQ731-376: Eng-Tips.com Forum Policies http://eng-tips.com/market.cfm?

RE: Automatic extraction of signals from many audio files

If you added an actual whistle to the orifice, detection of no flow might get easier.

Mike Halloran
Pembroke Pines, FL, USA

RE: Automatic extraction of signals from many audio files

Have you made any progress on this? I'll send you my matlab code for signal finding and filtering if you want.

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Eng-Tips forums is a member-only feature.

Click Here to join Eng-Tips and talk with other members!


Resources