File: powoftwo.csd

package info (click to toggle)
csound-manual 1%3A6.02~dfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 28,052 kB
  • ctags: 234
  • sloc: xml: 179,174; python: 1,198; makefile: 570
file content (40 lines) | stat: -rw-r--r-- 922 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
-odac     ;;;realtime audio out
;-iadc    ;;;uncomment -iadc if realtime audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o poweroftwo.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

sr = 44100
ksmps = 32
nchnls = 2
0dbfs  = 1

instr 1	; bit reduction for Lo-Fi sound

iBits	  = p5						;bit depth
iQuantize = powoftwo(iBits)				;find number of discrete steps for this bit depth
iQuantize = iQuantize*0.5				;half the number of steps for each side of a bipolar signal
print	  iQuantize
asig	  soundin "fox.wav"
asig	  = round(asig * iQuantize) / iQuantize		;quantize audio signal (bit reduce)
	  outs asig, asig         

endin
</CsInstruments>
<CsScore>
;        bits
i1 0   3  16
i1 ^+3 .  12
i1 ^+3 .   8
i1 ^+3 .   4
i1 ^+3 .   2
i1 ^+3 .   1

e
</CsScore>
</CsoundSynthesizer>