Extraction of sinusoidal waves based on beating pattern
I would like to ask if someone might have a tip how to approach a problem of sinusoidal signal separation in a musical recording sample. There is a recording at 44100Hz of 1,3sec (56855 samples) length and we have the knowledge that up to approx. smp 17100 there is just one sinusoid (1st piano harmonic) let us call it SINA. Starting from smp 17100 up to ca. 49600 there is another sinuosoid SINB overlaid with half a tone difference that causes amplitude beating. There is also another component apparently mixed up between 23000 and 30000 but that we can leave out for now. I am most interested in ideas how to best separate the two main components that cause cisible amplitude beating between 17100 and 49600. The first graph from the top lets call it Time1  shows the input time points with all the sinusoids combined. What I am also given is the frequency and phase points of the first sinusoid SINA throughout the 17100 49600 region. This is output from a DSP filterbank sinusoid tracking software that follows SINA using frequency and phase continuity information. However this DSP software cannot cope with frequency beating caused by SINA + SINB. To separate SINA and SINB a gave it a first simple try that is I linearly approximated SINA amplitude linking the region boundary points. The result is shown on the second graph from above Time2. Then I did a subtraction Time1 Time2 hoping that magically I get the SINB without beating. But it did not happen the result is shown on the third graph from the top it has very irregular amplitude envelope which means that my approach failed knowing that SINB is another piano key stroke so it should have a more regular AttackDecaySustainRelease and generally monotonic amplitude envelope. It seems that maybe independent modelling of SINB based on the beating pattern may bring better results ? How would you approach such a modelling that is what would be the equation for the amplitude, frequency and starting phase of SINB if I know the combined time points and SINA frequency and phase values but not the amplitude in the 17100 49600 region ?
Regards, Pawel
