Forgive me if I may come as ignorant but I would like to ask some questions
regarding using Filter Algorithms for Note Onset Detection.
1. Is 'Detection Function' the same as using Filters on the audio
signal? Or generally, what is the difference between Detection Function,
Filtering (pre-processing the signal), and Peak-Picking?
2. I've constantly heard about the Low-Pass (or High-Pass) filter, but I am
confused. I read that it works on cancelling out certain frequencies that are
below (or above) a certain threshold. However, I am using the Time-Domain for
calculating Note Onsets (that is, using the change in signal amplitude/energy).
So I am not sure on how I can apply low-pass filtering to the time-domain. Any
other good filters for note-onset detection?
3. What is the difference between, Spectral and Phase energy? (I have an idea
that spectral refers to the spectogram or frequencies, but I do not know what
Phase is)
4. I am having difficulties with working with dynamic thresholding. Any
suggestions for a good algorithm? For example, a brief description of my
algorithm, I calculate and take note of the energy/amplitude changes that occur
in the audio signal. Then I get the maximum 'energy change' and based
on the sensitivity, I take a percentage of it and set it as the threshold. So
this is where the problem of dealing with varying degrees of amplitude/energy
comes in. If I set the sensitivity too low, I come up with 'ghost'
onsets and if I set the sensitivity too high, I miss out on some onsets. Any
suggestions to improve the algorithm (or suggest a new algorithm) that I am
using? (Sorry for not having pictures, but I dont know how to post images in the
message)
I am sure that it is difficult to have 100% accuracy but I need to have a better
algorithm for note onset detection compared with what I have now. I would
appreciate all the help I can get. Thank you very much!