Hi all,
I've recently been using Audiomoth for nocturnal bird migration sampling in Spain and I was surprised to catch bat calls at unusual very low frequencies (5kHz or lower) with a sampling rate of 44kHz or less. Attach to this message you can find some examples. Having in mind bats usually call >20kHz (except for the bigger Noctules -10-20kHz- and the European Free-tailed Bat-usually around 10kHz-), those bat calls should not be there. They sound like they were sampled using a frequency division detector and some of them are probably Soprano Pipistrelle, which I have every night flying around home and sing 10x higher in freq. (usually 50-55kHz). Other Audiomoth users I know have also experienced this.
I've tried to find a possible explanation for this. Perhaps Audiomoth "mixes" configuration parameters and those calls are actually sampled at a higher rate but displayed as if they were sampled in a lower rate?
Have any of you come across this matter? Many thanks in advance,
Robert Manzano
Thanks Davidlee for your response, that sounds more plausible!
The effect is simply due to aliasing. According to the Nyquist-Shannon sampling theorem a digitally sampled recording can only reproduce properly frequencies up to half of the sampling rate (the Nyquist frequency). Frequencies greater than this cannot be reproduced unambiguously and will be aliased - ie "folded down" into the the Nyquist range - when converted back to an analog signal. The effect is that frequencies between one half and one times the sampling rate will appear inverted, as though they have been reflected by a line represented by the Nyquist frequency. As the frequency increases the aliased "image" will decrease in frequency until it reaches the zero-frequency line, whereupon it will be "reflected" back upwards. So frequencies between one and one and a half times the sample rate will appear as normal but shifted downwards by the sampling frequency.
The pulses in recording rat1.wav are clearly upside-down FM/CF bat calls with a terminal frequency of about 11-12 kHz. The sampling frequency is 48kHz so the original terminal frequency would have been around 36-37kHz.
The pulses in rat2.wav & rat6.wav are un-inverted pipistrelle pulses with a terminal frequency of about 3-6 kHz. These have suffered second order aliasing and so the original terminal frequencies would have been 51 - 54 kHz - compatible with soprano pipistrelle.
There is no way of correcting for aliasing once the waveform has been sampled. The best solution would be to add an analog low-pass anti-aliasing filter to remove the higher frequencies before sampling. Since this isn't possible without redesigning the AudioMoth the only remedy is to increase the sampling frequency to greater that double the highest frequency that may be present and take the hit on the file size.
Alternatively, if you can identify the aliased signals then the most economical solution is just to live with the problem and ignore them.
Thanks Matthew for your response. The sound in the sonogram should not be real but an artifact, as we don't have bats calling at such low frequencies. Or perhaps that sampling you mention work similar to a frequency division system and that's why it looks and sounds so similar to calls recorded with this system?
Pancho,
You are most likely correct. The problem you are experiencing is probably much simpler than the idea I was trying to explore.
The microphone will still be receiving the ultrasound (which we know it is sensitive to and the silicon wafer will thus be vibrating which causes a signal to be sent to the A/D converter which it then has to interpret. I'm no expert in the way a MEMS mic works but I imagine that it is sending a similar kind of analogue signal to the A/D converter as any other microphone. If the A/D converter is just taking samples from the analogue wave form then it is going to come up with a result of some sort and it probably looks a lot like your first sonogram.
At that point the AudioMoth could introduce a filter based on what frequency it is sampling at, but it does not appear from your results to be doing this. (Maybe a filter could be programmed or maybe there is already filtering hardware on the board or A/D converter that is not being engaged? Commercial recorders like the SongMeter have hardware filters that are engaged by software or manually with dip-switches or jumpers)