Obj. sfplay~ for Play audio file from disk

sfplay~: Play audio file from disk

Input

-float : 오른쪽 inlet: 재생속도 결정. 1.0-정상속도. 만약 -1값이오면 정상속도로 연주하지만. 2의 값은 2배 속도로, .5는 절반의 속도로 재생한다.

-signal : 왼쪽 inlet: 시그널이 들어오면 integer portion만큼 monitor한다. 입력신호의 integer portion이 미리 저장된 cue의 index와 같은 값으로 변할 때 그 cue는 trigger된다. 음수 값은 무시된다.
오른쪽 inlet: 재생속도. Vibrato나 다른 속도변화 효과를 위해 시간을 변화하도록 해준다.

-int:  왼쪽 inlet: 파일이 open되면 1은 재생을 시작하라는 신호로 사용. 0은 멈춘다. 1보다 큰 수는 cue를 trigger하거나(preload 메시지로 미리 정의된 cue), sfplay~에 저장된 상태를 기반으로 trigger한다. 파일이 재생되면 파일의 data는 오브젝트가 가진 체널의 수에 따라서 signal outlet으로 보내진다. cue 가 끝나거나 0이 들어오면 bang이 오른쪽outlet으로 나간다. 만약 그 object가 sflist~ object로 할당 되어있으면(set 메시지 이용, 또는 argument에 쓰여진 대로), int이 sfplay~에 저장된 값이 아닌, sflist~에 쓰인 cue들을 trigger한다. sfplay~ 을 다시 그 자신의 값으로 되돌리고 싶으면 다시 set message를 argument없이 사용한다.

-anything: 왼쪽 inlet: 만약 sflist~ object의 이름이 숫자와 함께 sfplay~로 보내지면, 그 번호의 cue가 재생된다.

-clear: 왼쪽 inlet: arguments없는 clear는 모든 정의된 cue를 삭제한다. 그 후에는 1의 숫자가 어떤 것이든 재생시킨다. Clear는 하나 이상의 cue번호와 함께 사용되어서 cue list를 지운다.

-embed:  왼쪽 inlet: 0이 아닌 정수와 쓰이며 모든 cue를 저장하고 현재 열려있는 파일의 이름을 저장한다. (patcher파일이 저장될 때) embed 0 은 patcher가 저장될 때 이 정보가 sfplay~에 새로 저장되지 않도록 보호시키는 역할을 한다. 초기 임시(default)값에 의해서 현재 파일의 이름과 cue정보는 patcher가 저장될 때 sfplay~에 저장되지 않는다. 만약 sfplay~ object 가 저장된 cue와 함께 저장되면 그것들은 object를 포함한 patcher가 불려질 때에 preload된다.

-fclose : 왼쪽 inlet: 열릴 파일의 이름과 함께 오며, 파일을 닫고 관련된 cue를 삭제한다.

-list:  왼쪽 inlet: sfplay~ 에 재생할 list를 준다.cue의 최대값은 128개이다. cue번호는 (preload메시지를 사용하여 set하며) 1이 아닌 1보다 큰 어떤 숫자든 쓰일 수 있다. List의 cue번호가 정의되지 않았다면 그것을 뛰어넘어 다음 cue로 간다. 그 오브젝트가 현재 sflist~에 할당되어있다면 list는 sflist안에 저장된 cue값들을 사용하며, sfplay~에 저장된 cue가 사용된다.

-loop : 왼쪽 inlet: 1로 loop를 키고 0으로 끈다. 기본값: off

-modout : 왼쪽 inlet: 1과 함께 쓰여서 modulo output을 킨다. 오디오 파일의 채널수가 sfplay~의 출력 숫자보다 적으면 채널들을 복제하여 출력한다. (Modulo output 설정 시) 예를 들어, mono audio file이 들어오고, sfplay~ object 가 2개의 output을 가질 경우에 mono가 양쪽으로 나간다(Modulo output 설정 시) 스테레오 파일이 4개의 outlet으로 출력될 경우에도 두 개씩 복제되어 나간다. Modout 0은 이 기능을 해지시킨다.

-name : symbol값과 쓰여서, 다른 오브젝트의 이름을 변경한다. sfplay~에 미리 언급되었던 오브젝트들은 그 후에 그 관계성을 상실한다. 모든 sfplay~ 는 각각의 이름을 가져야 한다.

-offset : 왼쪽 inlet: offset은 숫자와 함께 쓰여서 sample start offset을 bytes값으로 설정한다. 기본값: 0 aligning samples에 유용하게 사용.

-open : 왼쪽 inlet: 재생하고 싶은 AIFF, WAV, NeXT/Sun, raw format, Sound Designer II (Macintosh only) audio file, CD-audio track, 의 이름과 함께 와서 그리고 그 파일을 열어 재생할 수 있도록 한다. 파일명과 함께 올 경우에 파일은 Max의 search path내에 있어야 한다. 파일이름 없이 쓰이면 standard open file dialog 을 열어 파일을 직접 선택할 수 있도록 한다.

-openraw:  왼쪽 inlet: open와 똑같이 쓰이지만, 어떤 종류의 파일이건 열수 있도록 해준다. openraw message 는 그 파일이 44100Hz의 16-bit stereo file이라고 가정하고 다른 header information이 없다고 생각해버린다. file type은 samptype, offset, srate, srchans messages로 지정해줄 수 있다.

-pause:  왼쪽 inlet: 말 그대로 pause역할. 그리고 resume message로 다시 시작시킴

-preload:  왼쪽 inlet: cue(2이상의 정수와 함께)값. cue번호가 받아지면 sfplay는 파일의 그 영역을 재생한다. 큐 번호가 1이면 현재 파일의 맨 처음 부분을 재생.

preload message는 여러 형태로 사용되는데, 그 번호는 2~32767까지 쓰일 수 있다. 파일 이름 뒤에 따르며 그 파일은 현재 열려있거나 Max’s search path안에 있어야 한다. 그 큐 번호는 그 파일을 재생한다. 그optional filename이후에, optional start time (ms)가 지정될 수 있다. 그 시작시간이 지정되어있지 않으면 그 파일의 맨 처음부분이 cue start로 쓰인다. End time도 마찬가지로 사용. 만약 end time 이 start time 보다 작게 되었을 경우에 cue 는 play를 하지 않는다. 결국 reverse play하는 cue는 불가능. Start/end time arguments이후에 오는, optional directional buffer flag 는 저장된 cues의 재생을 reverse하는 것을 가능하게 해 준다. (Flag: 1)
마지막 optional argument 는 speed의 조정이다.
각각의 정의된 cue는 sfplay~채널당 40K정도의 메모리를 차지한다. (default buffer size 40320) 만약 bidirectional buffering 이 켜져 있으면 메모리의 양이 두 배가 됨.

-print : 왼쪽 inlet: 오브젝트 상태, 현재 정의된 모든 cue의 list의 information을 Print한다.

-resume:  왼쪽 inlet: pause뒤 다시 재생

-samptype:  왼쪽 inlet: symbol과 함께 와서, 오디오 파일의 sample data을 내삽 할 때에 파일의 type을 지정해준다. 이것을 “header munging.”이라 한다. 파일이 openraw로 불려 들어올때에 위에서 말한것처럼 16-bit integer로 자동 인식 되지만 그것을 변경시킬 수 있는 기능이다. 다름의 list참고

int8 8-bit integer
int16 16-bit integer
int24 24-bit integer
int32 32-bit integer
float32 32-bit floating-point
float64 64-bit floating-point
mulaw 8-bit µ-law encoding
alaw 8-bit a-law encoding

-seek:  왼쪽 inlet: start time(ms)으로서 시작지점을 직접 입력해준다. endtime또한 지정될 수 있다. seek message는 cue의 start/end point를 지정하고 확인할 수 있도록 해준다.

-set:  왼쪽 inlet: sflist~ object의 이름 뒤에 쓰여서 sflist~에 저장된 cue를 재생하도록 해준다. (int, list 메시지와 함께) arguments를 입력하지 않으면 sfplay~ 를 reset한다.

-speed : 왼쪽 inlet: 숫자와 함께 쓰여서 전체 속도를 조절하게 한다. 1.0은 원래 속도. 2는 두 배, 0.5는 절반의 속도이다. 만약 cue가 2의 비율로 재생하고 speed가 3으로 주어지면 cue는 6배의 속도로 연주하게 된다는 사실을 잊지 말자.

-srate:  왼쪽 inlet: 숫자와 함께 쓰여서 sampling rate(Hertz)를 지정하여 파일의 sample data를 분석한다. (따라서 오디오 파일의 원래 sampling rate에 덮어 쓰이게 한다.)

-srcchans:  왼쪽 inlet: 숫자와 함께 쓰여서 채널의 수를 지정한다.

Arguments
-symbol : Optional. 만약 첫 번째 argument 가 symbol과 함께 오면, 그것은 sflist~ 에 이름을 지정해주고 그것이 sfplay~object 에 사용된다.

-int:  Optional. output channels의 수를 지정. 최대숫자는 28. 기본값은 1.

추가적인 optional argument가 사용될 수 있는데, 그것은 디스크 buffer size를 설정하는데 사용될 수 있다. 이 argument가 0이면, default disk buffer size가 사용된다. 추가적인 optional argument 는 또한 sfplay~의 출력을 만드는데 사용될 수 있다. 마지막 argument를 1로 설정하면 가장 오른쪽에 “bang on finish or halt” outlet의 왼쪽으로 하나의 outlet이 생성된다. 그리고 그것은 시그널 값을 출력한다.

-symbol:  Optional. 만약 마지막 argument 가 symbol로 주어지면, 이것은 다른 object들이 sfplay~에 symbol이름이 적용되어, object들의 내용을 access할 수 있게 한다.

Output
-signal : 각 채널에 하나의 signal이 나간다. 가장 왼쪽이 채널1번이다. 만약 optional output position argument 가 설정되면, 채널 뒤에 하나나 두 개의 signal output이 생겨서 그것의 signal output이 positioning information을 볼 수 있도록 해 준다.

-bang:  Out right outlet: 파일의 play가 끝나거나 멈춰져 있을 때 bang이 나가도록 되어있다.

Obj. groove~, play~ for Backward sample playback

groove~ : Variable-rate looping sample playback

Input
-signal: 왼쪽 inlet: buffer~.로부터 오는 사운드의 재생을 위한 샘플의 increment값. increment값 이 0이면, 재생을 멈추고, 1은 보통의 속도로 재생하며, 2는 두배의 속도로 재생한다. .5는 두배 느리게 재생. 또한 -1의 값은 뒤에서 앞으로 보통의 속도로 재생한다. increment값은 다른 속도 또는 vibrato에 변화를 준다. groove~ object는 buffer~의 sampling rate를 사용하여 재생 속도를 결정한다.  
만약에 loop 의 시작과 끝이 정의되고 looping이 켜지면, 샘플의 재생이 loop의 끝에 도달했을 때, 샘플 position은 loop시작으로 설정되고 재생은 현재 샘플 increment에서 계속된다.

                가운데 inlet: loop 시작 값 (milliseconds)

                오른쪽 inlet: loop 끝 값 (milliseconds)

-int or float: 왼쪽 inlet: sample의 재생위치(milliseconds) 0 은 맨 처음부터 시작하게 한다.

                가운데 inlet: loop 시작 값 (milliseconds). signal이 들어왔을 경우에는 int와 float값은 무시된다.

                오른쪽 inlet: loop 끝 값 (milliseconds) signal이 들어왔을 경우에는 int와 float값은 무시된다.

-loop:  1의 숫자로 looping을 키고 0으로 끈다. 기본값은 off.

-loopinterp: 1의 숫자는 시작, 끝 값 사이의 값을 내삽한다. 0은 off, 기본값도 off.

-reset:  loop의 시작과 끝값을 지운다.

-set: symbol값과 함께 쓰여서 groove~에서 쓰일 buffer~ 에 포함되어있는 sample을 변경한다.

-setloop:  두개의 숫자와 함께 쓰여서 loop의 시작, 끝값을 설정한다. (milliseconds)

-startloop:  groove~ 가 loop의 시작값에서 재생을 시작하게 한다. 만약 loop가 지정되어있지 않으면, groove~ 는 sample의 처음 지점에서 재생을 시작한다.

– (mouse) :  object를 Double-clicking 하면 sample 의 display window를 연다.

Arguments
-symbol: 의무적으로 써야 하며 groove~에서 재생할 buffer~에 있는 sample의 이름을 적어준다.  

-int:  Optional값으로 두번째 argument는 출력 채널의 수: 1, 2, 4. 기본값은 1. 만약 play되는 buffer~ 가 더 적은 channels을 가지면 추가적인 channels이 0 signal을 출력한다. 만약 buffer~가 더 많은channels을 가지면, channels은 mix된다.

Output
-signal:  왼쪽 outlet: 샘플의 출력. 만약groove~가 2개 또는 4개의 출력 채널을 가지면, 왼쪽 outlet은 샘플의 왼쪽 channel을 재생한다.

                가운데 outlets: 샘플의 출력. 만약groove~가 2개 또는 4개의 출력 채널을 가지면, 가운데 outlets은 샘플의 왼쪽 channel이외의 것을 재생한다.

                오른쪽 outlet: Sync 출력. Sample의 loop portion동안에, 이 outlet은 0(loop의 시작)에서부터 1까지(loop 끝)의 signal을 출력한다.

===============================================
play~ : Position-based sample playback

Input
-signal: 왼쪽 inlet: 재생할 buffer~의 샘플 메모리로의 position (milliseconds). 만약 signal이 증가하는 값이면(ex: 0, 1000)play는 샘플을 앞으로 재생, 그리고 감소하면(ex:1000,0) 뒤로 재생한다. 만약 같은 값으로 남아있으면 play~는 같은 sample을 반복적으로 재생하며 샘플 값의 DC offset과 동등하다.

-set: symbol값과 함께 쓰여서 play~ 에서 쓰일 buffer~ 에 포함되어있는 sample을 변경한다.

Arguments
-symbol: 의무적으로 써야 하며 play~ 에서 재생할 buffer~에 있는 sample의 이름을 적어준다.

-int: Optional값으로 두번째 argument는 출력 채널의 수: 1, 2, 4. 기본값은 1. 만약 play되는 buffer~ 가 더 적은 channels을 가지면 추가적인 channels이 0 signal을 출력한다. 만약 buffer~가 더 많은channels을 가지면, channels은 mix된다.

Output
-signal: buffer~부터 읽은 샘플의 출력. play~가 만약에 2개 또는 4개의 출력 채널을 가지면, 왼쪽 outlet의 signal은 왼쪽 채널을, 그리고 다른 outlet은 그에 상응하는 다른 채널의 signal을 출력한다.  

Obj. waveform~ for buffer~ viewer and editor

waveform~ : buffer~ viewer and editor

Input
-float : 왼쪽t inlet: 시작시간-위의 그림에서display start ms-.이 값을 바꾸면 offset하거나 zoom한다. 따라서 buffer~에 지정된 시간이 display의 왼쪽 가장자리에 정렬된다. 기본값 0 (display 는 보여질 wave의 buffer~의 시작에서 시작한다.)
두번째 inlet: display길이-위의 그림에서display start ms-기본값은 buffer~의 길이.
세번째 inlet: 선택된 범위의 시작값-위의 그림에서select start ms-
네번째 inlet: 선택된 범위의 끝값-위의 그림에서select end ms-

-list : 5번째 inlet: 5번째inlet–위의 그림에서select all-은link input을 제공하여 어떤 숫자가 시작, 길이, select start, select end 값을 공유할 수 있게 한다. 이 값이 변화할 때마다 waveform~은 오른쪽 outlet으로 리스트로 전환하여 보낸다. 만약 이 outlet이 또 다른 waveform~과 연결되어있다면 그것은 list를 받아서 update된다. 이런 순환을 완성하기 위하여 두 번째 waveform~의 리스트 출력이 첫 번째의 input과 연결될 수 있다. 그때 둘 중 하나의 변화가 다른 것에 반영이 된다. 이런 기능은 waveform~들이 같은 buffer~의 다른 채널로 보는 것을 가능하게 해준다.. waveform~ object들은 이런 방식으로 서로 연결외서 순환적인 chain구조를 가질 수 있다(바로 아래 그림 참조). 이런 경우에 waveform~은 feedback을 예방한다.

-bpm:  1~2개의 숫자를 요구하는 bpm은 tempo와 bar당 beats의 수를 지정한다. 첫 번째argument 는 tempo를 분당 beats의 비율로 set한다 (기본값 120) 두 번째 argument는 optional로서, bar당 beats의 수를 지정한다. (기본값4) bpm message는 자동적으로 display time unit을 bpm으로 바꾼다. Time값들은 bars와 beats에서 소수점 값으로 보여지는 beat의 구획값과 함께 보여진다. offset message는 적용될 buffer~의 내용과 함께 metric 정보를 정열시키는데에 유용하게 쓰일수 있다. setbpm  message로 현재의 selection에 맞추어 tempo를 계산한다.

-brgb: brgb의 메시지는 0~255사이의 3개 숫자가 뒤따라오며, RGB values를 설정하여 배경색을 지정해준다.

-clipdraw : 1의 숫자와 함께 쓰이는 clipdraw은 draw mode에서 edited되고 있는 값들을 display범위에 고정(clip)되게 한다. (vzoom message에 의해 결정됨). 0의 숫자는 clip을 멈춘다. 기본값0

-constrain: 정수와 함께 쓰임 (토글 변경 값으로) 그 효과는 현재의 mode에 따라 변한다(mode message에 의해 결정되는) 그러나 일반적으로 마우스가 움직이는 동안에 shift key를 누르는 것과 같은 효과가 난다. 예를 들어 select mode를 클릭하여 선택 값들이 증가 하는 것으로 판단되면(선택 범위의 가장 가까운 endpoint설정) move mode에 있는buffer~ navigation은 zoom 없이 수평적인 panning으로 제한된다. ;loop mode에 있는 선택 길이는 수직적인 마우스 이동과 상관없이 지속된다. 0이 아닌 수가 오면 제한되어있는 상황을 다시 해제한다. 0이나 no argument는 이런 제한을 불가능하게 하며, 기본값으로 전환된다. (역주- 한국말로 하려니 무지하게 힘듭니다. Mode에 따라서 마우스 이동의 수직적, 수평적 제한을 거는 것이니 직접 실험을 통해서 해보시길 바래요.)

-crop : date를 다듬는 작용. Buffer~의 Size를 selection length로 다시 설정, selected samples로 복사, 그리고 그 결과를 기본설정으로 보여준다. buffer~ 는 선택 범위 이외에는 지워진다. 이것은 undone될수 없으므로 주의 요.

-frgb: frgb는 0~255사이의 값. Wave의 색깔 조정.

-grid : grid lines의 설정. 정수, 소수 사용. 예를 들어 grid 1000은 grid lines을1000 milliseconds apart로 설정한다.

-labels:  정수와 함께 쓰임. 사용가능 (1), 사용불가능 (0) display의 top부분의 시간단위를 보이게 할 것인가 아닌가의 설정

-mode:  symbol과 함께 쓰이며 어떻게 mouse에 반응할 것인지를 설정. none, select, loop,
move, draw. 메시지와 함께 쓰임
-none : “display only” mode, mouse의 clicking, dragging모두 영향을 미치지 않음 mode message에 아무 argument가 없으면 똑같이 mode none을 함과 같다.
-select:  default display mode. Cursor는 I-beam mode로 나타남 click, drag하여 범위설정 가능.
-loop:  loop selection style수직적인 마우스이동 (selection length를 늘이고 줄이는데 사용) groove~ object와 잘 사용됨. loop mode 가 선택되면 display영역 안의 커서의 이동은 double I-beam.으로 변화된다. (double I-beam이 무엇이냐 하면요. 맨 위 그림에 보면 waveform display창 왼쪽에 4개의 selction이 있지요. 그 중에 두 번째입니다. 첫 번째는 그냥 I-beam이 구요
-move: move display mode설정. waveform~ view.를 조정. 수직적인 마우스 이동은 zoom in/out해주며, 수평적인 이동은 x축의 시간범위를 scroll해준다. 그래프의 한 점을 클릭하면 마우스 키가 눌린 상태에서 놓여질 때까지, 나머지 마우스의 event가 중앙지점에 높이게 한다. 이것은 한 지점을 잡아서 zoom in하고 계속적으로 중앙으로 맞추게 조절하지 않아도 되도록 해준다.
-draw: draw display mode. 적용되는 buffer~의 값을 수정. Pencil tool이용한다. Undone이 사용될 수 없다.

-mouseoutput:  symbol 과 같이 쓰임, selection start 와 end값이 마우스 이동의 응답에서 보내졌을 때 결정됨. Selection start와 end (outlets 3 과 4)에만 영향을 미침.Mouse information은 언제나 outlet 5에서 오며 이것은 mouseoutput mode와 관계가 없다. 유효한 symbol arguments는none, down, up, downup, continuous 이다.
-none : Selection start 와 end 값이 마우스 이동에 응답하여 보내지지 않음. no argument도 같은 효과.
-down:  현재의 selection start 과 end 값들이 보내짐(outlets 3 과 4로부터) waveform의 안을 클릭했을 때만.
-up : selection start와 end 가 마우스 버튼을 놓았을 때에만 보내짐(wavrform~안을 클릭한 후)
-downup: selection start와 end 이 waveform안을 클릭했을 때와 마우스 버튼을 놓았을 때 둘 다 보내짐.
-continuous: selection start와 end 가 값이 바뀔 때마다 클릭, 버튼을 놓았을 때, 그리고 드레그했을 때 보내짐.

-normalize:  소수와 함께 쓰임 사용되는 buffer~안의 샘플값을 scale함. 따라서 가장 높은 peak값이 argument에서 주어진 값과 일치한다. 이것은 오디오의 amplification 또는 attenuation하지만 두 경우 모두 모든 buffer~값이 scale된다. undone될수 없음.

-norulerclick:  정수와 함께 쓰임, waveform~ display 의 ruler영역 클릭과 드레깅의 사용불가능 (1)과 사용가능 (0)설정. 기본값은 ‘사용가능’

-offset : 소수의 값과 함께 쓰임. 모든 labels과 시간 marking이 ms의 수에 의해 이동된다. Snap behavior 또한 이동.  offset 0으로 하면 원래의 위치로 돌아옴.

-rgb2 : 3개의 숫자와 함께 쓰여서 직사각형 selection 범위 영역의 색깔 설정.

-rgb3: 3개의 숫자와 함께 쓰여서 label영역과 오브젝트 직사각형 주위의 frame color설정

-rgb4: 3개의 숫자와 함께 쓰여서 label text color 설정

-rgb5: 3개의 숫자와 함께 쓰여서 label background color 설정

-rgb6: 3개의 숫자와 함께 쓰여서 그 color을 tickmarks와 measurement lines에 적용

-rgb7: 3개의 숫자와 함께 selection 직사각형 “OpColor”. 그 selection 직사각형은 rgb2 에의해서 바탕색이 그려지나, transfer mode에서 rgb7에서 OpColor와 함께 “blend”로 set한다. rgb2 와 rgb7에서 각각 다른 색을 설정하여 실험해 보면 쉬움.

-set : 심볼이나 정수(buffer~의 이름)과 함께 쓰임. Buffer~와 연결시켜줌. 정수값은 optional로서 채널 offset을 설정하여 멀티채널 buffer~를 볼수있게 한다. Buffer~에 연결되는 이름은 패치에 저장되지 않는다.

-setbpm:  arguments없이 쓰임. waveform~ 이 tempo를 selection범위에 맞추어 계산하게 한다. unit bpm 이라는 메시지를 사용하면 display time 유닛을 자동적으로 bpm으로 바꾸어준다. selection범위가 어떤 tempo가 선택되면 selection 범위는 bar의 눈금에 맞게 설정하며. Bar의 값 당 현재의 beat수로 유지하고, 그것에 만족하는 현재의 tempo에 가장 가까운 값을 계속 찾는다. 적당한 tempo가 선택되면 offset 파라메터가 적용되어서 selection range의 시작시간은 정확하게 bar line에 맞아 떨어지게 된다.
그 결과 selection 영역은 호환되는 tempo에 의해 정확하게 frame이 맞추어진다. 이것을 사용하면 오디오 섹션에서 시간 label과 tick 마크를 빠르게 설정한다. 가능한 정확하게 bar를 선택한 후에 setbpm메시지를 보내고 snap에서 label로 돌아오는 것은, metric값으로 즉각적인 그 선택범위의 quantization를 하도록 한다. 만약 적용될 buffer~가 logical한 수의 beats또는 bars로 이미 잘려진 오디오 조각을 가지고 있다면, 가장 좋은 technique은 그 buffer~의 전채 범위를 선택하는 것이다. (setbpm을 통해서)만약  buffer~ 가 정확하게 잘렸다면 그것에 적용된 tempo는 꽤 정확할것이며, 즉시 tempo가  metric 정보로 나타난다. 새로운tempo가 계산될 때 그것은 가장 오른쪽 outlet으로부터 보내져서 (link outlet),어떤 연결된 waveform~ objects를 update하고 다른 주면 패치에 의해 요구되는 어떤 방식에서든 사용된다.

-snap:  심볼과 쓰임.selection의 start 과 end 값들이 자동적으로 snap mode에 의해 정의된 buffer~의 특정 point로 움직이게 한다. none, grid, zero.와 함께 쓰임
-none : snap의 자유로운 selection을 못하도록한다. (기본값)
-grid: selection start 와end points 가 수직적인 grid lines에 맞게 snap되도록 함.grid line의 spacing이 시간 측정 유닛과 offset값에 의해 영향을 받기 때문에, 이것 또한 그 파라메터의 영향을 받는다.
-tick:  selection start 과 end 이 ticks 메시지에 의해 지정된 tick divisions으로 snap한다.
-zero: selection을 일정한 grid로 snap하지않고 buffer~ date의 zero-crossing을 검색한다. loop 와 edit points에 유용함.

-ticks: 숫자값과 함께 쓰여서 grid 라인 사이에 올 tick의 수를 결정. 기본값은 8. 0이나 argument없이 쓰이면 tick mark사용불가.

-undo: waveform~ selection에만 쓰임 selection start와 end points을 이전값으로 되돌림.

-unit:  심볼과 함께 쓰임 time unit을 설정 ms, samples, phase, bpm.
-ms:  milliseconds.(기본값)
-samples : 시간을 buffer~의 sample position으로 보여지게 함. 첫번째 샘플은 offset으로 display가 이동되지 않았다면 0이 된다.
-phase : buffer내의 phase에 따라 보여짐. 0은 첫번째 샘플. 1은 마지막 샘플. phasor~ 와 wave~와 쓰일 때 유용.
-bpm:  분당beats.

-vlabels : 정수와 함께 쓰임. y축의 labels이 display의 가장 오른쪽 가장자리에 오도록 함. (0으로 설정하면 사용불가).

-voffset:  소수와 함께 쓰여서 y축 offset. 0으로 하면 x축이 중간에 오도록 함(기본값)

-vticks : 정수와 함께 쓰여 y축에 tick마크를 display의 오른쪽, 왼쪽 가장자리에 오도록 함 (0으로 설정하면 사용불가

-vzoom:  소수와 함께 쓰여서 y축 scaling함

Inspector
Inspector 를 사용할수있다. 만약 window menu에서‘Show Floating Inspector ‘를 선택하여 floating inspector를 하게 하면 어떤 scope를 선택하든 scope~ Inspector는 floating window에서 보여진다. 어떤 object를 선택하서나 Get Info를 선택하여 볼수도 있다. scope~ Inspector는 위에서 정의한 massege들(snap, grid, tempo, setbpm, ticks, labels, vlabels, vticks, Edit Mode pull-down menu, Mouse Output pull-down menu, Color pull-down menu, Revert button)을 가능하게 해준다

Arguments
없음

Output
–float :
Out 1st outlet: waveform의 start time(ms)
Out 2nd outlet: display 길이(ms)
Out 3rd outlet: selection범위의 start time(ms)
Out 4th outlet: selection범위의 end time (ms)
–list :
Out 5th outlet: mouse outlet(mouse의 click/drag/release cycle정보를 보냄, list는 3개의 숫자로 구성(mouse의 x축 0~1 scale, y축 floating point. 마우스 event가 현재 위치한 자리.
Out 6th outlet: 다음을 포함한 list-display start time, display 길이, selection start time, selection end time,

Examples