Originally Posted by Malachite
I am looking for an application that basically starts out as a simple sound recorder capable of recording for extended periods of time in a lower quality.
Where it gets tricky is I am wanting to grab sections of the audio and then do "similar" pattern matching so that I can then program the app to only record to disk when those similar sound patterns are detected.
An example would be recording the sound of a lawnmower and having it start recording anytime it detects sound patterns that are similar to the lawnmower previously recorded.
I am trying to catalog the number of hours per day certain sound patterns are heard and the only other option would be to fully listen to the data.
Thanks for any advice about which apps may be best to try out.
Sounds quite interesting. But is specific and it is a little complicated. I dont know of any software, but I can tell you that to solve this problem you'll need to:
* provide a sample of the sound you want to detect
* create a representation of that sound
* in realtime, sound signal needs to be converted to the representation and a similarity match should be performed
* then record
* stop when the sound stops? or wait until the detection of the sound goes below a threshold.
The best thing to look into is Fast Fourier Transforms (FFT) for representing the sound sample (X) . For the similarity match you need to obviously generate the FFT for live sound (Y), but as it is a continuous data source when do you start sampling to generate the FFT (Y)? This is the tricky part.
The similarity measure can be of the FFT parameters (normalised), downsampling both signals in the FFT space can offer greater probability of matching but can confuse lawnmower for passing car for example.
FFT is only one approach to solving this problem, and I should let you know that I am not a pro
sound guy, so there could be a better solution out there.
I wish I knew of an app for this problem, I would like to know if you find one