Hi all,
Yes that's right, the [bark] object does attack detection in non real time on audio stored in arrays. You can get it on its own or with the latest version of timbreID. It's basically like [bonk~] but adds that NRT functionality and uses a Bark scale to set the bounds of filters in the bank. There are also some functions for tuning thresholds and specifying what part of the spectrum you want to look for attacks in. For instance, you might want to ignore lower frequency bands and look for spectral growth only in mid-high frequency bands.
PS: on your point, Max, an easy way to compare sounds of different durations is to get the BFCCs or Bark spectrum of each complete sound. Regardless of how many samples long the sound is, the feature vector will be 47 points long when using the default 0.5 Bark spacing for the filterbank. Then you can compare the spectral content of entire sound events. But...you might want to capture *changes* in audio features over the course of the sound (e.g., N frames of spectral brightness measurements showing how high frequency content changes from the start to the end of the sound). In that case, you'd end up with sequences of features, each one with a different number of frames depending on how long the sound is. The only solution I've come up with there is to find the sound with the fewest frames (shortest duration), and separately average the feature sequence data of each of the longer sounds so that all feature vectors being compared have a common number of frames. I think that makes sense if the sounds are fairly similar in duration, but if you're talking about patterns of spectral brightness change in a 90 second sound vs a 3 second sound, the comparison might be kind of meaningless. So...comparing a snare drum to a cymbal crash, ok sure...but a Mozart piano concerto cadenza compared to a wood block strike, maybe not so useful!
On Wed, May 27, 2015 at 10:45 AM, Jaime E Oliver jaime.oliver2@gmail.com wrote:
Hi Max,
Yes you get bark~ and bark with tID and I concur with it being a source of inspiration!
check bark-help (without the ~) to see how to get onsets from a table.
best,
J
On May 27, 2015, at 6:32 AM, Max abonnements@revolwear.com wrote:
On 2015년 05월 27일 09:49, Jaime E Oliver wrote:
If I remember correctly, William Brent in his timbreID library does onset detection on tables. I cannot remember now how he does it exactly, but I hope this might prompt him to reply…?
Oh really? I'm not sure there is onset detection in timbreID, but William has another external which does onset detection: bark~ http://williambrent.conflations.com/pages/research.html
And then there is aubio for onset detection. http://aubio.org/
I always wanted to hack into timbreID to make it use units of different lengths based on real sound events detected. AFAIK it currently only works with fixed lengths of units. (but works very well that must be said. timbreID is such an incredible source of inspiration for me).
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management ->
http://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list