Description
audio data를 외부로부터 읽어와서 pitch를 변경할 수 있다.
Syntax
ar1 [,ar2] [, ar3] [, ar4] diskin ifilcod, kpitch [, iskiptim] [, iwraparound] [, iformat] [, iskipinit]
Initialization
ifilcod – 정수 또는 character-문자열은 source soundfile name. 정수는 soundin.filcod ; 하나의 character-문자열(쌍 따옴표 내에, spaces 허용) 은 filename, 파일경로를 사용할 수 있는데, 경로를 써주지 않으면 현재 directory내에 파일이 있어야 함. 또는 SSDIR또는, SFDIR에 따라서.
iskptim (optional) – 사운드 파일에서 스킵 될 시간(초단위). 기본값은 0.
iformat (optional) – 파일 포맷에 대한 설정:
• 1 = 8-bit signed char (high-order 8 bits of a 16-bit integer)
• 2 = 8-bit A-law bytes
• 3 = 8-bit U-law bytes
• 4 = 16-bit short integers
• 5 = 32-bit long integers
• 6 = 32-bit floats
iwraparound – 1 = on, 0 = off (looping키고 끄기)
iskipinit – 0이 아니면 모든 초기화(initialization)를 끈다. (4_23f13 와 csound5의 새 기능)
만약 iformat = 0 이면 soundfile header로부터 읽어들인다. 헤더가 없으면 command-line flag -o 에서 읽어들임. 기본값은 0.
Performance
kpitch – 어떤 숫자든 가능. 음수의 숫자는 뒤로 플레이한다. 주어진 숫자는 pitch ratio이다, where:
• 1 = 기본 pitch
• 2 = 1 octave 높게 (그러나 속도도 빨라짐)
• 3 = 2 octaves, (숫자는 계속 높아질수있음).
• .5 = 1 octave 낮게
• .25 = 2 octaves 낮게, etc.
• -1 = 기본 pitch로 뒤로연주
• -2 = 1 octave 높게 backwards, etc.
diskin 은 soundin과 거의 동일하지만 pitch를 변경할수 있다는점에서 다르다.
Note to Windows users
Windows users들은 일반적으로 절대경로 설정시에back-slashes, “”, 를 사용하는데, 예에서 처럼 Windows user가 만약 “c:musicsamplesloop001.wav”. 라고 하면 문제가 발생할수 있다.
따라서 다음과 같이 해야.
• Use forward slashes: c:/music/samples/loop001.wav
• Use back-slash special characters, “\”: c:\music\samples\loop001.wav
Example 103. Example of the diskin opcode.
/* diskin.orc */
; Initialize the global variables.
sr = 44100
kr = 44100
ksmps = 1
nchnls = 1
; Instrument #1 – play an audio file.
instr 1
; Play the audio file backwards.
asig diskin “beats.wav”, -1
out asig
endin
/* diskin.orc */
/* diskin.sco */
; Play Instrument #1, the audio file, for three seconds.
i 1 0 3
e
/* diskin.sco */