Sampling: Recording and playback
Sound input: adc~
Adc~는analog-to-digital conversion object입니다. Dac~에서 우리는 ezdac~이라고 하는 interface를 사용하였는데, adc에서는 ezadc~를 사용합니다.
Adc~라 함은, 오디오 입력잭으로부터 소리를 받아(cd, tape, 마이크 등의 라인으로부터), 시그널로 출력해 보냅니다.
-Adc~오브젝트를 더블클릭하면, input source메뉴에서 원하는 장치를 선택할 수 있습니다.
-그림에서 토글박스를 활성화하면 오디오를 키게 됩니다. 다음그림에서는 원하는 레벨로 소리를 듣기 위하여 숫자박스를 적용시킨 것을 보여줍니다. (아울러 실험할때에 마이크와 스피커 간의 피드백이 생기지 않도록 주의하세요)
Recording a sound: record~
녹음을 하기 위해서는 buffer가 필요합니다. Buffer~는 녹음테입과 같은 역할을 한다고 생각하면 됩니다. 저장소이죠. Record~도 같은 역할을 하게됩니다. 녹음하는 소리가 record~의 inlet으로 들어가도록 설정해야합니다.(그림참조)
record~는 0이 아닌수가 들어오면 녹음을 시작하며, 0이 들어오면 끝냅니다. (토글) 위의 그림에서 buffer뒤에 쓰여져 있는 2000이란 숫자는 녹음의 길이를 결정해줍니다. 또한 Record에 있는 두개의 오른쪽 inlet에 시작과 끝지점을 직접 입력할 수 있습니다. 하지만 길이는 buffer~에서 정해진 숫자에 의해 판가름되지요. (즉. 만약 우리가 tape에 소리를 녹음하는데 60분짜리 테이프에 120분 녹음할수 없다는 뜻입니다.) 2000이란 숫자에서 2초동안 녹음이 가능하다는 것을 알수 있지요.
아래 패치에서는 2초후에 토글을 닫아버리는 패치입니다. 따라서 우리가 정확하게 2초후에 record~의 토글을 클릭하여 닫지 않아도 자동으로 꺼지는 장치이지요.(저는 이런 장치를 자유롭게 만들 수 때문에 맥스 패치가 좋아요!)
녹음이 끝나셨다면, buffer~를 클릭하여 wave가 들어와있는지 확인하세요.
Reading through a buffer~: index~
만약 buffer~로 녹음을 하였다면 다음과 같은 일을 할수 있습니다.
1. buffer~에 write메시지를 보내서 오디오 파일로 저장할 수 있습니다. (메시지 박스 사용)
2. 513 샘플로 이루어진 wavetable을 만들어 cycle~에 적용시킬수 있지요. (투토리얼 3 참고)
3. 또한 이 중 어느 섹션을 택하여 transfer 기능을 위하여 lookup~ 을 사용할 수 있구요 (투토리얼 12참고)
4. 또한 직접적으로 dac~로 연결해서 바로 출력할수도 있구요. (투토리얼 14)
index~는 신호를 입력한 후 sample number를 보여줍니다. Buffer에 있는 샘플을 쭉 읽어드린다음, 값을 출력합니다. Count~는 계속적으로 증가하는 수의 연속으로서, index가 buffer의 샘플을 읽을 수 있도록 해줍니다.
-play버튼을 눌러 buffer~에 있는 소리를 들어봅니다. Count로 들어가는 숫자박스는 시작하는 샘플번호를 다르게 할수 있습니다.
Variable speed playback: play~
Play~는 buffer~에 있는 신호값을 소리로 출력합니다. Index~와 다른점은, buffer에 있는 두개의 샘플값을 받았을 때 두 값 사이를 내삽한다는 것입니다. (인덱스는 하나하나 받아들였지만, play는 두개를 받아들이지요?)
예를들어 buffer에서 받을 소리를 어떤 속도로든 읽을 수 있습니다. 내삽값 때문에 index보가 더 질이 좋은 소리를 얻어 낼 수도 있겠지요. 다음 패치에서 line을 통하여 선형적으로 연결하는 모습을 보여줍니다.
위의 그림에서 첫번째 박스는 0에서 2000을 2000ms동안 연주하여라. 입니다. 즉 보통의 속도가 되겠죠.
두번째는 0에서 2000사이를 4초동안 연주하라 하니 속도가 두배로 늘어나겠죠 (느려짐)
세번째는 2배 빨라지구요.
이로서 투토리얼 13을 마칩니닷!