[bonk~ ] ers

    Dec 04 2009 | 8:06 am
    Bonk~ is awesome. Bonk~'s documentation, help file and change log is decidedly less than awesome. haha.
    So i have a few questions for those of you who have used 1.4 with success and maybe figured a few of the mysteries out.
    Bonk no longer supports the debounce message which was used to set the minimum time between attacks. What is not clear is how you set the minimum time between attacks in the current version. What if you want a flam to count as a single hit?
    Mask, despite still being in the 1.4 help file also does not seem to be a message that the new bonk understands. How can you set that?
    spew bonk~ 1.4 responds to: spew: which uhm.... sets the uh.. spew mode. clear as mud. What is spew?
    Also, at first glance it is not really clear is how you use the sucka as anything other than a glorified envelope follower mode. The bonus of bonk~ is that it does more than an env. follower in that it looks at the energy in spectral bands and through this analysis is able to recognize hits that have a different spectral profile. So it can tell the difference between a rim shot and a bass drum sound.
    Since this seems also to be top secret. I guessed that you set learn with a number (learn 10) and hit your bongo that number of times (10) so that it can sample and average all the spectrums of the hits to get a sort of fingerprint of that attack. I also guess that you do this for each sound so if you have 2 bongo sounds (say a rimshot and a deeper bass tone) you do 10 of the high sound and 10 of the low sound and then hit learn 0 to tell bonk you are done bonking in learn mode. How many sounds can bonk~ get profiles for? 10?
    I am also confused about minvel. What does minvel do if it is not the lower threshold (obviously thresh sets that)?
    Bonk is awesome but it is a little like having a spaceship left in your driveway that has no key.
    Can anyone shed any light? I have a patch that works, based on the *old* help file but i am not real sure of all the new params and how to best jigger them.
    cheers, kp

    • Dec 06 2009 | 9:27 am
      No one's messed with bonk 1.4?
    • Dec 07 2009 | 9:54 am
      Thresh seems to take different range of numbers than previous versions. I wonder what the meaningful range of numbers to feed it is?
      The help file seems to indicate that the cooked output would a list of 2 numbers, but it actually puts out three floats.
      really confused on this. I can't beleeb no one on here has messed with bonk and figured a few things out with it?
      I kind of have it working, but for the life of me i can't seem to get it to recognize different bonks consistently.
    • Dec 07 2009 | 7:03 pm
      I just had a look at puckette's source code from the pd-0.42-5 package. It doesn't give a version nubmer for bonk~, but i guess it's the newest.
      So here are some insights to the mystery object:
      The low and high thresholds actually aren't levels but: Signal growth must exceed the high one and then fall to the low one to make an attack. The unit is the sum of the proportional growth in the 11 filter bands. Proportional growth is essentially the logarithmic time derivative.
      minvel on the other hand, is the velocity level below which attacks are ignored.
      The third float of the cooked output is the "temperature". This seems to be a weighted sum of the bin levels. Probably something like sprectral brightness ?
      The debounce time has been replaced by the @debouncedecay attribute, which takes a value between 0. and 1. Haven't figured that one out yet...
      "spew mode" means always output...whatever that means ;)
      For learning, I think you have to send a "learn x" message again, before learning the second template.
      BTW, check out bonks~ inspector window. There are some more mysterious attributes not mentioned in the help patch....
      cheers, jan.
    • Dec 14 2009 | 4:28 am
      Thanks. This was most helpful. I think i have gotten it to work pretty well based on what you wrote in addition to messing with the PD version. I still need to test it more to see if it is really distinguishing sounds, but so far it seems to work. The numbers it assigns to each sound seems arbitrary and different each time so i guess that you have to somehow account for that in your patch.
    • Dec 14 2009 | 1:26 pm
      Hello all! It agree with you, bonk ~ amusing object, here is how I used it in max =). http://upload.pripyat.com/download.php?file=655s.t.u.zip
    • Dec 15 2009 | 4:19 am
      Rapoon.... You have mad interface skills. Ha! Can you tell me more about what this patch is doing?
    • Dec 15 2009 | 7:37 am
      Hi kp*, this patch is obvious, load loop (better glitch), and operate tapout, function, train.... It something of type randomSlicer =)). I apologize, badly I speak in English.
    • Dec 15 2009 | 12:52 pm
      Yeah. I guess I am kinda slow. It looks like it is a random slicer (with speed and direction control) plus filtered delay. It also looks like bonk~ dumps a buffer of audio into a second buffer and loops it via groove, no?
      I don't get what the function controls and either function or Tapout is giving clicks. It doesn't click when the boxes are unchecked.
      Anyway, very nice. I am not entirely sure what it all does but it is cool. I did some similar things with stutter~ and play~ but nothing yet as fancy as what you have here.
      cheers, -kp
    • Dec 15 2009 | 2:16 pm
      Yes, bonk ~ switches on and off record ~ and a buffer ~ of audio into a second buffer ~ and loops it via groove ~.(The object bonk ~ would be worthy object in a collection max =))
      kp *, you can show, how you have got rid of clicks at inclusion Tapout? I tried to make it, but it has not turned out, clicks remained.
    • Dec 15 2009 | 4:31 pm
      Looks like the one tapout is fixed, but one is moving. The one that is moving needs a line~ to smooth it (at the output of pipe), i would guess that the instantaneous changes coming from random is causing clicks. Just a guess.
    • Dec 15 2009 | 4:33 pm
      I don't really know your patch well enough to get in there and hack away at it ... i been looking at it, but it still is not totally clear yet. A lot of patch chords to follow! haha.
    • Dec 16 2009 | 4:05 am
      kp *, many thanks!Your example seems to me has helped, clicks at inclusion -tapout- were gone.It seemed to me, that patch began to sound better =) Thanks big once again! http://rghost.ru/712156
    • Dec 18 2009 | 2:35 am
      Fantastic patch -- thanks for sharing.