Re: [music-dsp] note onset detection

2013-08-13 Thread robert bristow-johnson

On 8/9/13 7:25 PM, Ross Bencina wrote:

Hi Robert,

I have a question: are you trying to output the pitch and note on/off 
information in a real-time streaming scenario with minimum delay? or 
is this an off-line process? My impression is that the MIR folk worry 
less about minimum-delay/causal processing than us real-time people.




well, we want to be able to do the former, but may be stuck with doing 
the latter.  and i know the big difference is that if you can look at 
both the NoteOn and the corresponding NoteOff and all of the pitch in 
between, you can construct a better MIDI NoteOn by looking at that whole 
pitch track inbetween.  in the real-time minimal-delay case, once you 
detect a NoteOn, you will have to base the MIDI NoteOn message on the 
initial pitch (which might be crap, if it hasn't settled down yet) 
rather than the overall pitch over the lifetime of the note.



Another comment:

On 9/08/2013 7:51 AM, robert bristow-johnson wrote:

On 8/8/13 2:23 PM, Ian Esten wrote:

Hmm. I think keeping it in the time domain would be difficult. Most
time domain pitch detection algs are error prone, which would yield
false positives.

You can of course tweak FFT size and your interval between FFTs. I
think it would be pretty reasonable to run your FFTs at a pretty
coarse time resolution and increase the density to get better time
resolution when you find a note on. That would be pretty low cost.


well, pitch detection is one thing, note onsets are another.  my
experience with pitch detectors came to an opposite conclusion.  unless
you're using the FFT to quick compute the autocorrelation (ACF), other
frequency-domain pitch detectors have (at least where i have seen them)
relied on energy at the fundamental.


I don't think that's true.

As far as I know the usual frequency-domain pitch tracking approch is 
based on performing MQ partial tracking combined with Maher and 
Beauchamp's two-way mismatch procedure:


http://ems.music.uiuc.edu/beaucham/papers/JASA.04.94.pdf



thanks for the reference.  i sorta knew James Beauchamp since i was at 
Northwestern in the 80s, and i first met Rob Maher at an AES in the 90s 
soon after this.  he was presenting something about duet separation that 
appears alluded to in this paper.


i don't know what is usually done.  had no idea that this paper 
existed.  but the partial tracking thing was something i've seen Rob 
present before (back in the 90s).  even with the partials properly 
tracked and linked between frames, i am not sure how Rob infers the 
missing fundamental.  i see how he is tracking sinusoidal components, 
but unlike MQ, this is about the fundamental frequency of a 
quasi-harmonic tone.  i'll read it some more.



BTW, i got a few different papers on onset detection from a few 
different sources.  the zip archive is about 3 MB.  if anyone wants it 
(assuming my email can attach something that large), i can send you the 
zip file.






--

r b-j  r...@audioimagination.com

Imagination is more important than knowledge.



--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-09 Thread Ross Bencina

Hi Robert,

I have a question: are you trying to output the pitch and note on/off 
information in a real-time streaming scenario with minimum delay? or is 
this an off-line process? My impression is that the MIR folk worry less 
about minimum-delay/causal processing than us real-time people.


Another comment:

On 9/08/2013 7:51 AM, robert bristow-johnson wrote:

On 8/8/13 2:23 PM, Ian Esten wrote:

Hmm. I think keeping it in the time domain would be difficult. Most
time domain pitch detection algs are error prone, which would yield
false positives.

You can of course tweak FFT size and your interval between FFTs. I
think it would be pretty reasonable to run your FFTs at a pretty
coarse time resolution and increase the density to get better time
resolution when you find a note on. That would be pretty low cost.


well, pitch detection is one thing, note onsets are another.  my
experience with pitch detectors came to an opposite conclusion.  unless
you're using the FFT to quick compute the autocorrelation (ACF), other
frequency-domain pitch detectors have (at least where i have seen them)
relied on energy at the fundamental.


I don't think that's true.

As far as I know the usual frequency-domain pitch tracking approch is 
based on performing MQ partial tracking combined with Maher and 
Beauchamp's two-way mismatch procedure:


http://ems.music.uiuc.edu/beaucham/papers/JASA.04.94.pdf

Ross.
--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-08 Thread Victor Lazzarini
I've been trying to send a reply to this, but none has appeared, I guess 
because of html blocking...

Anyway, here's the message, I hope it gets there now


We've done some work on this a couple of years ago:  
Real-time detection of musical onsets with linear prediction and sinusoidal 
modeling, 
EURASIP Journal on Advances in Signal Processing 2011,2011:68 
doi:10.1186/1687-6180-2011-68

HTH

Victor


On 5 Aug 2013, at 18:50, robert bristow-johnson wrote:

 
 would anyone be interested in pointing me in a good direction regarding note 
 onset detection?  i have the MIRtoolbox from Oliver Lartillot which looks 
 quite current.  still digging into it to see what the kernel is.
 
 various papers mention a novelty function which makes use of a similarity 
 matrix.  i see references to a paper by Foote, Cooper,  Nam: Audio 
 Retrieval by Rhythmic Similarity.  i got that paper but it didn't define the 
 similarity metric.  and it looks expensive to be calculating the similarity 
 of each little snippet of audio against *every* other snippet.  especially 
 when all i want is only a better method for note onsets than simply applying 
 thresholds to various envelopes derived from the audio (like amplitude vs. 
 time and the derivative of pitch vs. time).
 
 who's working in this?  and if you're one of them and free to discuss basic 
 ideas, i'd love to hear it.
 
 thanx.
 
 -- 
 
 r b-j  r...@audioimagination.com
 
 Imagination is more important than knowledge.
 
 
 
 --
 dupswapdrop -- the music-dsp mailing list and website:
 subscription info, FAQ, source code archive, list archive, book reviews, dsp 
 links
 http://music.columbia.edu/cmc/music-dsp
 http://music.columbia.edu/mailman/listinfo/music-dsp

Dr Victor Lazzarini
Senior Lecturer
Dept. of Music
NUI Maynooth Ireland
tel.: +353 1 708 3545
Victor dot Lazzarini AT nuim dot ie



--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-08 Thread Eric Battenberg
Glad you finally made it through, Victor. I guess none of my posts
through the years have shown up either. This is the first time I
bothered to check, since I never received any bounce emails.  I just
thought everyone was just really unresponsive.

For those interested, I'll copy my original response. Previously it
was only sent directly to everyone who had responded to this thread:

I'd also recommend the Bello tutorial paper.  It's a great overview.
Here are some other papers that are worth looking at.  One of the more
recent approaches that seems to be winning evals uses a long
short-term memory (LSTM) recurrent neural net [2,3].  This may be
along the lines of what Ross Bencina was talking about: humans do it
with reference to their knowledge of previously heard melodic
fragments.

I've found the multi-band Klapuri approach [6] to be quite effective
for detecting notes with strong attack transients.  For notes with
less pronounced attacks, the method covered in [5] is designed to
detect changes in pitch.  The method in [5] is also discussed in the
tutorial paper [4] (Spectral features using phase), so definitely
read that paper.


[1] S. Böck, F. Krebs, and M. Schedl, “Evaluating the online
capabilities of onset detection methods,” presented at the
International Society for Music Information Retrieval Conference,
2012.

[2] S. Böck, A. Arzt, F. Krebs, and M. Schedl, “Online realtime onset
detection with recurrent neural networks,” presented at the
International Conference on Digital Audio Effects (DAFx-12), 2012.

[3] F. Eyben, S. Böck, B. Schuller, and A. Graves, “Universal onset
detection with bidirectional long-short term memory neural networks,”
Proc. of ISMIR, 2010.

[4] J. Bello, L. Daudet, S. A. Abdallah, C. Duxbury, M. Davies, and M.
Sandler, “A tutorial on onset detection in music signals,” IEEE
Transactions on Speech and Audio Processing, vol. 13, no. 5, p. 1035,
2005.

[5] J. Bello, C. Duxbury, M. Davies, and M. Sandler, “On the use of
phase and energy for musical onset detection in the complex domain,”
IEEE Signal Processing Letters, vol. 11, no. 6, pp. 553–556, 2004.

[6] A. Klapuri, “Sound onset detection by applying psychoacoustic
knowledge,” ICASSP, 1999.


Best,
Eric



On Thursday, August 8, 2013, Victor Lazzarini wrote:

 I've been trying to send a reply to this, but none has appeared, I guess 
 because of html blocking...

 Anyway, here's the message, I hope it gets there now

 
 We've done some work on this a couple of years ago:
 Real-time detection of musical onsets with linear prediction and sinusoidal 
 modeling,
 EURASIP Journal on Advances in Signal Processing 2011,2011:68 
 doi:10.1186/1687-6180-2011-68

 HTH

 Victor


 On 5 Aug 2013, at 18:50, robert bristow-johnson wrote:

 
  would anyone be interested in pointing me in a good direction regarding 
  note onset detection?  i have the MIRtoolbox from Oliver Lartillot which 
  looks quite current.  still digging into it to see what the kernel is.
 
  various papers mention a novelty function which makes use of a 
  similarity matrix.  i see references to a paper by Foote, Cooper,  Nam: 
  Audio Retrieval by Rhythmic Similarity.  i got that paper but it didn't 
  define the similarity metric.  and it looks expensive to be calculating the 
  similarity of each little snippet of audio against *every* other snippet.  
  especially when all i want is only a better method for note onsets than 
  simply applying thresholds to various envelopes derived from the audio 
  (like amplitude vs. time and the derivative of pitch vs. time).
 
  who's working in this?  and if you're one of them and free to discuss basic 
  ideas, i'd love to hear it.
 
  thanx.
 
  --
 
  r b-j  r...@audioimagination.com
 
  Imagination is more important than knowledge.
 
 
 
  --
  dupswapdrop -- the music-dsp mailing list and website:
  subscription info, FAQ, source code archive, list archive, book reviews, 
  dsp links
  http://music.columbia.edu/cmc/music-dsp
  http://music.columbia.edu/mailman/listinfo/music-dsp

 Dr Victor Lazzarini
 Senior Lecturer
 Dept. of Music
 NUI Maynooth Ireland
 tel.: +353 1 708 3545
 Victor dot Lazzarini AT nuim dot ie



 --
 dupswapdrop -- the music-dsp mailing list and website:
 subscription info, FAQ, source code archive, list archive, book reviews, dsp 
 links
 http://music.columbia.edu/cmc/music-dsp
 http://music.columbia.edu/mailman/listinfo/music-dsp
--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-08 Thread robert bristow-johnson

On 8/8/13 11:05 AM, Ian Esten wrote:

On Mon, Aug 5, 2013 at 1:01 PM, robert bristow-johnson
r...@audioimagination.com  wrote:

the big problem i am dealing with is people singing or humming and changing
notes.  i really want to encode those pitch changes as new notes rather than
as a continuation of the previous note (perhaps adjusted with MIDI pitch
bend messages).  there is not sufficient change in amplitude or even in the
timbre (brightness or spectral centroid) or the periodicity measure to get a
grip on this.  i *am* trying to kludge together something that looks at the
tracked pitch output (of my pitch detector), but i need to condition that
signal because little blips (bad pitch measurements) trigger spurious NoteOn
messages.  so just observing pitch changes is not robust enough.

Spectral flux is the way to go. It will detect both changes in level
and sharp changes in frequency content. It will be a more robust onset
detector than trying to repurpose a pitch detector, with the added
advantage of being simpler to compute. There are other frequency
domain methods to compute a new note likelihood or novelty
function, but they end up doing about as well as spectral flux with
the downside of being more computationally complex.


my issue with spectral flux, which is similar to bandsplitting and 
looking for changes in each band is how to combine the decisions coming 
from the vector of band decisions.  the simplest is if *any* band 
detects a sufficient change to warrant a NoteOn message (a big OR 
operation), that you launch the NoteOn, but you must put in some kinda 
timer so that 10 different NoteOns are not launched milliseconds apart 
due to these different bands hitting at slightly different times due to 
a common source of change.


i'd sorta like to keep this in the time-domain if possible so that it 
might be able to operate real-time, even with a small delay.  but the 
delay in doing an STFT seems too long.


the way i look at this novelty function whether it includes spectral 
flux or not, is that there are several parameters being tracked 
simultaneously and the novelty function defines how these several 
parameters are combined to yield a single novelty parameter that one 
can make an onset decision with.


and i am also concerned with offset.  when the note ends and a MIDI 
NoteOff message is derived.  my case is mono-phonic (which is one reason 
i thought that spectral flux might be more than i need, but i dunno) so, 
i guess, if a new onset is detected when i am still in the NoteOn state, 
i can quickly end the current note with a NoteOff and then launch the 
new NoteOn.



(I also did not know I was sending html mail... This is take 3 at
getting the message through!)


we hear you now, Ian.  thanks.


--

r b-j  r...@audioimagination.com

Imagination is more important than knowledge.



--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-08 Thread Ian Esten
Hmm. I think keeping it in the time domain would be difficult. Most
time domain pitch detection algs are error prone, which would yield
false positives.

You can of course tweak FFT size and your interval between FFTs. I
think it would be pretty reasonable to run your FFTs at a pretty
coarse time resolution and increase the density to get better time
resolution when you find a note on. That would be pretty low cost.

On Thu, Aug 8, 2013 at 11:23 AM, robert bristow-johnson
r...@audioimagination.com wrote:
 On 8/8/13 11:05 AM, Ian Esten wrote:

 On Mon, Aug 5, 2013 at 1:01 PM, robert bristow-johnson
 r...@audioimagination.com  wrote:

 the big problem i am dealing with is people singing or humming and
 changing

 notes.  i really want to encode those pitch changes as new notes rather
 than
 as a continuation of the previous note (perhaps adjusted with MIDI pitch
 bend messages).  there is not sufficient change in amplitude or even in
 the
 timbre (brightness or spectral centroid) or the periodicity measure to
 get a
 grip on this.  i *am* trying to kludge together something that looks at
 the
 tracked pitch output (of my pitch detector), but i need to condition
 that
 signal because little blips (bad pitch measurements) trigger spurious
 NoteOn
 messages.  so just observing pitch changes is not robust enough.

 Spectral flux is the way to go. It will detect both changes in level
 and sharp changes in frequency content. It will be a more robust onset
 detector than trying to repurpose a pitch detector, with the added
 advantage of being simpler to compute. There are other frequency
 domain methods to compute a new note likelihood or novelty
 function, but they end up doing about as well as spectral flux with
 the downside of being more computationally complex.


 my issue with spectral flux, which is similar to bandsplitting and looking
 for changes in each band is how to combine the decisions coming from the
 vector of band decisions.  the simplest is if *any* band detects a
 sufficient change to warrant a NoteOn message (a big OR operation), that you
 launch the NoteOn, but you must put in some kinda timer so that 10 different
 NoteOns are not launched milliseconds apart due to these different bands
 hitting at slightly different times due to a common source of change.

 i'd sorta like to keep this in the time-domain if possible so that it might
 be able to operate real-time, even with a small delay.  but the delay in
 doing an STFT seems too long.

 the way i look at this novelty function whether it includes spectral flux
 or not, is that there are several parameters being tracked simultaneously
 and the novelty function defines how these several parameters are combined
 to yield a single novelty parameter that one can make an onset decision
 with.

 and i am also concerned with offset.  when the note ends and a MIDI
 NoteOff message is derived.  my case is mono-phonic (which is one reason i
 thought that spectral flux might be more than i need, but i dunno) so, i
 guess, if a new onset is detected when i am still in the NoteOn state, i can
 quickly end the current note with a NoteOff and then launch the new NoteOn.


 (I also did not know I was sending html mail... This is take 3 at
 getting the message through!)


 we hear you now, Ian.  thanks.



 --

 r b-j  r...@audioimagination.com

 Imagination is more important than knowledge.



 --
 dupswapdrop -- the music-dsp mailing list and website:
 subscription info, FAQ, source code archive, list archive, book reviews, dsp
 links
 http://music.columbia.edu/cmc/music-dsp
 http://music.columbia.edu/mailman/listinfo/music-dsp
--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-08 Thread Risto Holopainen

I haven't worked much on this, so just some speculations.

 i'd sorta like to keep this in the time-domain if possible so that it
 might be able to operate real-time, even with a small delay.  but the
 delay in doing an STFT seems too long.

A delay the size of a few periods of the signal seems inevitable,
regardless of what methods you use. At least if there is no very sharp
attack transient.

 and i am also concerned with offset.  when the note ends and a MIDI
 NoteOff message is derived.  my case is mono-phonic (which is one reason
 i thought that spectral flux might be more than i need, but i dunno) so,
 i guess, if a new onset is detected when i am still in the NoteOn state,
 i can quickly end the current note with a NoteOff and then launch the
 new NoteOn.

I think spectral flux may react to consonants, plosives and sibilants and
suchlike, perhaps even more than to the change from one pitch to another
sung at the same vowel. It might be efficient to do the flux only over a
low frequency range, say up to 1 kHz. Also, if you take the signed
difference X_k[m] - X_k[m-1] of spectral bins at time m, the onsets are
easy to distinguish from the end of the notes, or at least ends of
phrases.

Risto


 r b-j  r...@audioimagination.com

 Imagination is more important than knowledge.


--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-08 Thread robert bristow-johnson

On 8/8/13 2:23 PM, Ian Esten wrote:

Hmm. I think keeping it in the time domain would be difficult. Most
time domain pitch detection algs are error prone, which would yield
false positives.

You can of course tweak FFT size and your interval between FFTs. I
think it would be pretty reasonable to run your FFTs at a pretty
coarse time resolution and increase the density to get better time
resolution when you find a note on. That would be pretty low cost.


well, pitch detection is one thing, note onsets are another.  my 
experience with pitch detectors came to an opposite conclusion.  unless 
you're using the FFT to quick compute the autocorrelation (ACF), other 
frequency-domain pitch detectors have (at least where i have seen them) 
relied on energy at the fundamental.  but you can have a periodic 
function with period 1/f0 and have absolutely zero energy at f0 (but 
there needs to be energy at other harmonics where the greatest common 
factor is f0)  to deal with that problem, as soon as you start thinking 
of a sweeping combfilter, that's essentially what the AMDF or ASDF do 
with varying lags.


when using the FFT to do autocorrelation (by iFFT of the 
magnitude-squared of the FFT of a segment of the input), one thing you 
need to worry about is what these guys did: 
http://www.cs.otago.ac.nz/tartini/papers/A_*Smarter*_*Way*_to_Find_*Pitch*.pdf  
(the Type 2 ACF).  you have to compensate for the windows overlapping 
less as the lag increases (as the lag increases, there is an envelope to 
the ACF that decreases and that should be undone).


you can do the same thing in the time domain without getting this 
problem and you can relate the ACF to the ASDF (one is an upside-down 
version of the other).  you can do this quite nicely in the time domain 
and you don't have to compute the ACF or AMDF or ASDF for each and every 
lag.  to save computation, it doesn't take Einstein to figure out that 
some ACF lags need not be computed because you will not use the results.


--

r b-j  r...@audioimagination.com

Imagination is more important than knowledge.



--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-07 Thread Theo Verelst

Ross Bencina wrote:

On 7/08/2013 2:38 AM, Theo Verelst wrote:

I suppose in EE terms, if you know something about the waves you're
...

You would need a definition of note onset that somehow includes
segmenting a hummed glide transition from one pitch to another according
to Robert's transcription rules.


Hmhm, but in the digital domain you probably want some sort of signal 
path to measure that, get the distinction between the one note and the 
next right, and I'd prefer to know what's reasonable possible within the 
theory perimeter to get done well. You could presume a pitch change of 
the voice as being a higher excitation note through the vocal tract as 
more or less time-fixed filter, or you could presume all sounds to be 
more or less cyclic waveforms, lots of options. If it's a choir in a 
reverberant space, far from the microphone with coughs and booklet 
dropping sounds, it's a whole other ballgame, where trivial solutions 
are likely to often fail.


T.



On the High Road
--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-07 Thread Ross Bencina



On 7/08/2013 12:23 PM, charles morrow wrote:

Please explain your reference Roberts transcription notes for me.


Robert expressed the following requirement:

On 6/08/2013 6:01 AM, robert bristow-johnson wrote:
 the big problem i am dealing with is people singing or humming and
 changing notes.  i really want to encode those pitch changes as new
 notes rather than as a continuation of the previous note (perhaps
 adjusted with MIDI pitch bend messages).


My thought was that this kind of top down parsing requires some kind of 
musical knowledge that is not intrinsic to the signal. I.e. I don't 
think any kind of signal novelty function is going to tell you how to 
segment features at the note level of abstraction. I rather suspect 
that humans do it with reference to their knowledge of previously heard 
melodic fragments.


Ross.
--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-07 Thread douglas repetto


Eric, it looks like you're sending HTML mail. The list only takes plain 
text.



best,
douglas



On 8/7/13 3:01 PM, Eric Battenberg wrote:

For the life of me, I can't get the list to stop ignoring my replies
(I'm not even getting bounces), so just to be sure, I've CC'd everyone
on the thread.

I'd also recommend the Bello tutorial paper.  It's a great overview.
  Here are some other papers that are worth looking at.  One of the more
recent approaches that seems to be winning evals uses a long short-term
memory (LSTM) recurrent neural net [2,3].  This may be along the lines
of what Ross Bencina was talking about: humans do it with reference to
their knowledge of previously heard melodic fragments.

I've found the multi-band Klapuri approach [6] to be quite effective for
detecting notes with strong attack transients.  For notes with less
pronounced attacks, the method covered in [5] is designed to detect
changes in pitch.  The method in [5] is also discussed in the tutorial
paper [4] (Spectral features using phase), so definitely read that paper.

Best,
Eric

[1] S. Böck, F. Krebs, and M. Schedl, “Evaluating the online
capabilities of onset detection methods,” presented at the International
Society for Music Information Retrieval Conference, 2012.

[2] S. Böck, A. Arzt, F. Krebs, and M. Schedl, “Online realtime onset
detection with recurrent neural networks,” presented at the
International Conference on Digital Audio Effects (DAFx-12), 2012.

[3] F. Eyben, S. Böck, B. Schuller, and A. Graves, “Universal onset
detection with bidirectional long-short term memory neural networks,”
/Proc. of ISMIR/, 2010.

[4] J. Bello, L. Daudet, S. A. Abdallah, C. Duxbury, M. Davies, and M.
Sandler, “A tutorial on onset detection in music signals,” /IEEE
Transactions on Speech and Audio Processing/, vol. 13, no. 5, p. 1035, 2005.

[5] J. Bello, C. Duxbury, M. Davies, and M. Sandler, “On the use of
phase and energy for musical onset detection in the complex domain,”
/IEEE Signal Processing Letters/, vol. 11, no. 6, pp. 553–556, 2004.

[6] A. Klapuri, “Sound onset detection by applying psychoacoustic
knowledge,” /ICASSP/, 1999.



On Wed, Aug 7, 2013 at 6:56 AM, Ross Bencina rossb-li...@audiomulch.com
mailto:rossb-li...@audiomulch.com wrote:



On 7/08/2013 12:23 PM, charles morrow wrote:

Please explain your reference Roberts transcription notes for me.


Robert expressed the following requirement:


On 6/08/2013 6:01 AM, robert bristow-johnson wrote:
  the big problem i am dealing with is people singing or humming and
  changing notes.  i really want to encode those pitch changes as new
  notes rather than as a continuation of the previous note (perhaps
  adjusted with MIDI pitch bend messages).


My thought was that this kind of top down parsing requires some kind
of musical knowledge that is not intrinsic to the signal. I.e. I
don't think any kind of signal novelty function is going to tell you
how to segment features at the note level of abstraction. I rather
suspect that humans do it with reference to their knowledge of
previously heard melodic fragments.


Ross.
--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book
reviews, dsp links
http://music.columbia.edu/cmc/__music-dsp
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/__mailman/listinfo/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp




--
... http://artbots.org
.douglas.irving http://dorkbot.org
.. http://music.columbia.edu/cmc/music-dsp
...repetto. http://music.columbia.edu/organism
... http://music.columbia.edu/~douglas

--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-06 Thread Ross Bencina

On 7/08/2013 2:38 AM, Theo Verelst wrote:

I suppose in EE terms, if you know something about the waves you're
trying to detect


Strikes me that we are talking about perceptual note onset, not 
something you could define /easily/ in EE terms.


You would need a definition of note onset that somehow includes 
segmenting a hummed glide transition from one pitch to another according 
to Robert's transcription rules.


Ross.
--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-06 Thread charles morrow
Ross

Please explain your reference Roberts transcription notes for me. 
In my ignorance, I am imagining this is a joke on Roberts Rules of Order
or a real reference to someone like Willow Roberts Powers

charlie


On Aug 6, 2013, at 8:12 PM, Ross Bencina rossb-li...@audiomulch.com wrote:

 On 7/08/2013 2:38 AM, Theo Verelst wrote:
 I suppose in EE terms, if you know something about the waves you're
 trying to detect
 
 Strikes me that we are talking about perceptual note onset, not something you 
 could define /easily/ in EE terms.
 
 You would need a definition of note onset that somehow includes segmenting a 
 hummed glide transition from one pitch to another according to Robert's 
 transcription rules.
 
 Ross.
 --
 dupswapdrop -- the music-dsp mailing list and website:
 subscription info, FAQ, source code archive, list archive, book reviews, dsp 
 links
 http://music.columbia.edu/cmc/music-dsp
 http://music.columbia.edu/mailman/listinfo/music-dsp

--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-06 Thread robert bristow-johnson



On 8/6/13 7:23 PM, charles morrow wrote:

Ross

Please explain your reference Roberts transcription notes for me.
In my ignorance, I am imagining this is a joke on Roberts Rules of Order
or a real reference to someone like Willow Roberts Powers


oh jeepers.

--

r b-j  r...@audioimagination.com

Imagination is more important than knowledge.



--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-05 Thread alexander lerch
Hey Robert,

an excellent introduction to onset detection can be found in this paper
by Bello et al.

@ARTICLE{bello05,
TITLE = {{A Tutorial on Onset Detection in Music Signals}},
AUTHOR = { {Juan Pablo} Bello and Laurent Daudet and Samer Abdallah and
Chris Duxbury and Mike Davies and {Mark B} Sandler},
EDITOR = {},
YEAR = {2005},
VOLUME = {13},
NUMBER = {5 Part 2},
PAGES = {1035--1047},
JOURNAL = {Transactions on Speech and Audio Processing},
ORGANISATION = {Institute of Electrical and Electronics Engineers 
(IEEE)},
PUBLISHER = {Institute of Electrical and Electronics Engineers (IEEE)},
doi = {10.1109/TSA.2005.851998},
}

I uploaded some simple Matlab code for novelty function computation here:
http://www.audiocontentanalysis.org/code/rhythm/novelty-function-computation/

Note that this code is only intended to showcase algorithmic principles
– it is not suited to be used without parameter optimization and
additional algorithmic tuning. But perhaps it can be of help...

Cheers,
(a)

On 2013-08-05 19:50, robert bristow-johnson wrote:
 
 would anyone be interested in pointing me in a good direction regarding
 note onset detection?  i have the MIRtoolbox from Oliver Lartillot which
 looks quite current.  still digging into it to see what the kernel is.
 
 various papers mention a novelty function which makes use of a
 similarity matrix.  i see references to a paper by Foote, Cooper, 
 Nam: Audio Retrieval by Rhythmic Similarity.  i got that paper but it
 didn't define the similarity metric.  and it looks expensive to be
 calculating the similarity of each little snippet of audio against
 *every* other snippet.  especially when all i want is only a better
 method for note onsets than simply applying thresholds to various
 envelopes derived from the audio (like amplitude vs. time and the
 derivative of pitch vs. time).
 
 who's working in this?  and if you're one of them and free to discuss
 basic ideas, i'd love to hear it.
 
 thanx.
 

-- 
dr. alexander lerch

co-owner, zplane.development
http://www.zplane.de

founder, sonicAPI.com
http://www.sonicAPI.com

author, An Introduction to Audio Content Analysis
http://www.AudioContentAnalysis.org
--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-05 Thread Didier Dambrin
I have an old onset detector but for drums, you're looking for notes. That's 
an even better reason to do it in the time domain IMHO.
Mine (it can be tested in the Slicex plugin) would probably do the job (I 
can send you the sources if you want but it's pascal code) unless you also 
wanna detect overlapping notes with smooth attacks.




-Message d'origine- 
From: robert bristow-johnson

Sent: Monday, August 05, 2013 7:50 PM
To: music-dsp@music.columbia.edu
Subject: [music-dsp] note onset detection


would anyone be interested in pointing me in a good direction regarding
note onset detection?  i have the MIRtoolbox from Oliver Lartillot which
looks quite current.  still digging into it to see what the kernel is.

various papers mention a novelty function which makes use of a
similarity matrix.  i see references to a paper by Foote, Cooper, 
Nam: Audio Retrieval by Rhythmic Similarity.  i got that paper but it
didn't define the similarity metric.  and it looks expensive to be
calculating the similarity of each little snippet of audio against
*every* other snippet.  especially when all i want is only a better
method for note onsets than simply applying thresholds to various
envelopes derived from the audio (like amplitude vs. time and the
derivative of pitch vs. time).

who's working in this?  and if you're one of them and free to discuss
basic ideas, i'd love to hear it.

thanx.

--

r b-j  r...@audioimagination.com

Imagination is more important than knowledge.



--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links

http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


-
Aucun virus trouve dans ce message.
Analyse effectuee par AVG - www.avg.fr
Version: 2012.0.2242 / Base de donnees virale: 3209/6051 - Date: 04/08/2013 


--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-05 Thread robert bristow-johnson

On 8/5/13 12:47 PM, Didier Dambrin wrote:

I have an old onset detector but for drums, you're looking for notes.


drum whacks, i think, should be pretty easy to detect.  drum (or cymbal) 
rolls, maybe not so easy.



That's an even better reason to do it in the time domain IMHO.
Mine (it can be tested in the Slicex plugin) would probably do the job 
(I can send you the sources if you want but it's pascal code) unless 
you also wanna detect overlapping notes with smooth attacks.


the big problem i am dealing with is people singing or humming and 
changing notes.  i really want to encode those pitch changes as new 
notes rather than as a continuation of the previous note (perhaps 
adjusted with MIDI pitch bend messages).  there is not sufficient change 
in amplitude or even in the timbre (brightness or spectral centroid) or 
the periodicity measure to get a grip on this.  i *am* trying to kludge 
together something that looks at the tracked pitch output (of my pitch 
detector), but i need to condition that signal because little blips (bad 
pitch measurements) trigger spurious NoteOn messages.  so just observing 
pitch changes is not robust enough.



--

r b-j  r...@audioimagination.com

Imagination is more important than knowledge.



--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-05 Thread robert bristow-johnson

On 8/5/13 12:31 PM, alexander lerch wrote:

Hey Robert,

an excellent introduction to onset detection can be found in this paper
by Bello et al.

@ARTICLE{bello05,
TITLE = {{A Tutorial on Onset Detection in Music Signals}},
AUTHOR = { {Juan Pablo} Bello and Laurent Daudet and Samer Abdallah and
Chris Duxbury and Mike Davies and {Mark B} Sandler},
EDITOR = {},
YEAR = {2005},
VOLUME = {13},
NUMBER = {5 Part 2},
PAGES = {1035--1047},
JOURNAL = {Transactions on Speech and Audio Processing},
ORGANISATION = {Institute of Electrical and Electronics Engineers 
(IEEE)},
PUBLISHER = {Institute of Electrical and Electronics Engineers (IEEE)},
doi = {10.1109/TSA.2005.851998},
}



got that (or a version of it that IEEE hasn't constructed a paywall in 
front of).  been reading it.  got a few other papers, too.



I uploaded some simple Matlab code for novelty function computation here:
http://www.audiocontentanalysis.org/code/rhythm/novelty-function-computation/

Note that this code is only intended to showcase algorithmic principles
– it is not suited to be used without parameter optimization and
additional algorithmic tuning. But perhaps it can be of help...



it seems to need something critical to be defined:  hNoveltyFunc(X, f_s)

i wonder how hNoveltyFunc is defined?

--

r b-j  r...@audioimagination.com

Imagination is more important than knowledge.



--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-05 Thread alexander lerch


On 2013-08-05 22:01, robert bristow-johnson wrote:
 it seems to need something critical to be defined:  hNoveltyFunc(X, f_s)
 
 i wonder how hNoveltyFunc is defined?

You can find the function definitions either through the code menu on
the site or you can directly download the zip archive from the side bar.

Cheers,
(a)

-- 
dr. alexander lerch

co-owner, zplane.development
http://www.zplane.de

founder, sonicAPI.com
http://www.sonicAPI.com

author, An Introduction to Audio Content Analysis
http://www.AudioContentAnalysis.org
--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp


Re: [music-dsp] note onset detection

2013-08-05 Thread Wen Xue
literally novelty is something going on now that wasn't before - see now 
perfectly that matches the idea of note onsets. ideally a complete onset 
detector shall test that 1) a note exists at t1 and 2) it hadn't existed at 
t0 to signal a positive between t0 and t1.


for some reason most of today's onset detectors don't work that way, but 
merely look for signs suggestive of onsets with novelty functions. they 
can still be very useful, but it's good to remember they haven't truly 
finished the job yet.


say you push a humming voice through a pitch estimator: a change in the 
pitch estimate is merely *suggesting* an onset. to confirm it you still need 
to see the note (is and wasn't) there.




-Original Message- 
From: robert bristow-johnson

Sent: Monday, August 05, 2013 9:01 PM
To: music-dsp@music.columbia.edu
Subject: Re: [music-dsp] note onset detection


it seems to need something critical to be defined:  hNoveltyFunc(X, f_s)

i wonder how hNoveltyFunc is defined?

--

r b-j  r...@audioimagination.com

Imagination is more important than knowledge.




--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp