bonk~오브젝트는 작은 타악기의 어택을 감지합니다. Fiddle의 경우와 같이 bonk는 하나의 입력(inlet)을 갖고 오디오 시그널을 받아들이며, 메시지는 세팅의 변경으로 쓰입니다.
다음은 메시지의 기능들의 설명입니다.
-thresh (lothresh) (hithresh) 어택의low/high시작점을 설정. 처음 시그널이 high값을 반드시 초과해야 하며, 어택을 만들기 위해서 low값으로 떨어져야 한다. (말이 어렵지만 얼마나 섬세하게 어택을 받아들일 것인가의 세팅이 된다고 생각하면 쉽겠지요)
-minvel : 최소 velocity
-mask (masktime) (maskdecay) mask parameters의 설정
-debounce (debounce-time) 두 어택간의 최소시간의 설정
-print (more) parameter의 값을 프린트함
-learn (ag) “learn” mode 를 끄거나 킴 (learn 1 : 새로운 것을 learning하기 위하여 기존 것을 모두 지워버림. Learn 10(recommended) : 몇 번 악기를 칠(hit) 것인가의 양을 결정 learn 0 : learn mode를 끝냄)
-write (filename) templates을 텍스트 파일에 씀
-read (filename) 파일로부터 templates을 읽음
-bang list로 현재의 스펙트럼을 출력
-forget : 마지막 template값을 지움
출력 창(outlet)을 2개인데, 오른쪽은 단지instrument number(0에서부터 세어진)와 velocity를 보내며, instrument number는bonk~ 가 “template set” 을 memory에 가질 때에만 출력이 됩니다. 왼쪽 출력은 어택의raw spectrum을(사용된 11개의 frequency bands안에 있는 시그널 “loudness” 을 주는 11개수를 가진 list)를 출력합니다. –복잡하지만 예제를 사용하면 이해가 빨리 갈 것입니다
Bonk의 분석은256-point window (6 msec at 44.1kHz) 에서 수행되며 임의적으로 analysis period 은 128 samples입니다. 이analysis period 는 Bonk의 creation argument 로 설정될 수 있지만64의 제곱수여야 합니다.
Bonk의 help파일에 있는 패치에서DSP를 실행한 후 2개의 토글로 출력되는 것을 print할 수 있고, 볼륨이 증가하는 것에 의해서 신시사이저의 출력을 들을 수 있습니다.
-참고-Templates의 예제
10.469999 9.65 14.95 23.769999 28.32 38.839996 53.209999 41.199997 31.25 21.699999 16.48; 6.52 13.929999 27.82 58.049999 24.109999 35.259998 35.98 37.779999 22.539999 13.559999 10.75; 30.449999 28.859999 29.419998 21.939999 29.919998 35.699997 38.489998 32.009998 28.189999 27.379999 22.099998; 66.769997 46.269997 28.82 25.949999 22.839998 20.609999 20.33 14.179999 6.86 8.919999 7.37;