Hi all The problem is to detect repeating patterns of music in any (Movie/Album)Song. The duration of repeating pattern is dynamic is sometimes well over 2 seconds. Therefore for a 44.1khz song 16-bit stereo , the buffer size req for coreelation itself would be 1.76mb .Can anybody suggest some good DSP techniques to overcome the buffer problem and still be able to extract the repeating patterns thro' out the song. Hoping for a solution. vijay
A challenging DSP problem
Started by ●March 8, 2005
Reply by ●March 8, 20052005-03-08
Why not just buffer it in external SDRAM? <duvijan@gmail.com> wrote in message news:1110270525.879539.317270@g14g2000cwa.googlegroups.com...> Hi all > > The problem is to detect repeating patterns of music in any > (Movie/Album)Song. > The duration of repeating pattern is dynamic is sometimes well over 2 > seconds. > Therefore for a 44.1khz song 16-bit stereo , the buffer size req for > coreelation itself would be 1.76mb .Can anybody suggest some good DSP > techniques to overcome the buffer problem and still be able to extract > the repeating patterns thro' out the song. > > Hoping for a solution. > vijay >
Reply by ●March 8, 20052005-03-08
"Brad Griffis" <bradgriffis@hotmail.com> wrote in message news:p6iXd.17724$hU7.12216@newssvr33.news.prodigy.com...> Why not just buffer it in external SDRAM? > > > <duvijan@gmail.com> wrote in message > news:1110270525.879539.317270@g14g2000cwa.googlegroups.com... >> Hi all >> >> The problem is to detect repeating patterns of music in any >> (Movie/Album)Song. >> The duration of repeating pattern is dynamic is sometimes well over 2 >> seconds. >> Therefore for a 44.1khz song 16-bit stereo , the buffer size req for >> coreelation itself would be 1.76mb .Can anybody suggest some good DSP >> techniques to overcome the buffer problem and still be able to extract >> the repeating patterns thro' out the song. >> >> Hoping for a solution. >> vijay >> > >Hi Vijay, If you could find a way of characterising what was important in about 200 milliseconds of your HIFI source and encoding that into about a 20 bytes 'key' or less then you could store that instead and look for repeat patterns in key values much more easily. Best of Luck - Mike
Reply by ●March 8, 20052005-03-08
duvijan@gmail.com wrote:> Hi all > > The problem is to detect repeating patterns of music in any > (Movie/Album)Song. > The duration of repeating pattern is dynamic is sometimes well over 2 > seconds. > Therefore for a 44.1khz song 16-bit stereo , the buffer size req for > coreelation itself would be 1.76mb .Can anybody suggest some good DSP > techniques to overcome the buffer problem and still be able to extract > the repeating patterns thro' out the song. > > Hoping for a solution. > vijay >Here's one suggestion: LPF, downsample to the point where the time window is tractable, then use autocorrelation. If the pattern has significant energy at lower frequencies, this may work.
Reply by ●March 8, 20052005-03-08
Mark Borgerding wrote:> duvijan@gmail.com wrote: > > Hi all > > > > The problem is to detect repeating patterns of music in any > > (Movie/Album)Song. > > The duration of repeating pattern is dynamic is sometimes well over2> > seconds. > > Therefore for a 44.1khz song 16-bit stereo , the buffer size reqfor> > coreelation itself would be 1.76mb .Can anybody suggest some goodDSP> > techniques to overcome the buffer problem and still be able toextract> > the repeating patterns thro' out the song. > > > > Hoping for a solution. > > vijay > > > > Here's one suggestion: LPF, downsample to the point where the time > window is tractable, then use autocorrelation. > > If the pattern has significant energy at lower frequencies, this maywork. I think you mean cross correlation.
Reply by ●March 9, 20052005-03-09
john wrote:> Mark Borgerding wrote:[snip]>> >>Here's one suggestion: LPF, downsample to the point where the time >>window is tractable, then use autocorrelation. >> >>If the pattern has significant energy at lower frequencies, this may > > work. > > I think you mean cross correlation. >If the pattern is known, then sure, cross-correlation would work great. Without a priori knowledge, what would you correlate against? BTW, only a limited number of delays are needed from the autocorrelation sequence, sufficient to encompass the time between repeats. -- Mark P.S. I'm a papa. ( see m'boy at http://www.borgerding.net )
Reply by ●March 9, 20052005-03-09
Mark Borgerding wrote:> john wrote: > > Mark Borgerding wrote: > [snip] > >> > >>Here's one suggestion: LPF, downsample to the point where the time > >>window is tractable, then use autocorrelation. > >> > >>If the pattern has significant energy at lower frequencies, thismay> > > > work. > > > > I think you mean cross correlation. > > > > If the pattern is known, then sure, cross-correlation would workgreat.> Without a priori knowledge, what would you correlate against? > > > BTW, only a limited number of delays are needed from theautocorrelation> sequence, sufficient to encompass the time between repeats. > > > -- Mark > > P.S. > I'm a papa. ( see m'boy at http://www.borgerding.net )Congratulations! I see what you mean, autocorrelate a big time vector containing repeats. John
Reply by ●March 9, 20052005-03-09
Mark Borgerding wrote: ...> P.S. > I'm a papa. ( see m'boy at http://www.borgerding.net )Awww... Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
Reply by ●March 9, 20052005-03-09
] P.S. I'm a papa. ( see m'boy at http://www.borgerding.net ) Woo-hooo!!! Congratulations, Mark! Ciao, Peter K.
Reply by ●March 9, 20052005-03-09
in article eWNXd.1833$gS.1692@fe1.columbus.rr.com, Mark Borgerding at mark@borgerding.net wrote on 03/09/2005 21:03:> P.S. > I'm a papa. ( see m'boy at http://www.borgerding.net )and congrats from me. i was in a similar situation in '97. -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."