-
Notifications
You must be signed in to change notification settings - Fork 4
/
design.txt
70 lines (40 loc) · 1.64 KB
/
design.txt
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
parameters for hspad
* 16'; 1 octave below fundamental
* 5 1/3'; a fifth above fundamental
* 8'; fundamental
* 4'; 1 octave above fundamental
* 2 2/3'; 1 octave and a fifth above fundamental
* 2'; 2 octaves above fundamental
* 1 3/5' 2 octaves and a major third above fundamental
* 1 1/3' 2 octaves and a fifth above fundamental
* 1' 3 octaves above fundamental
* harmonic profile; ranging from single harmonic to gaussian distribution to evenly spread distribution.
* bandwidth of the fundamental frequency
* bandwidth scale?
* some way to adjust the relF function?
key click
percussion
bandwidth of the fundamental frequency
bandwidth scale
Decrease the amplitude of higher harmonics on low velocity notes, by using a low-pass filter.
http://www.cocoachina.com/wiki/index.php?title=Audio_Unit_Properties_Reference
Each setting will generate a set of wavetables;
* but how many? one for each note?
* oversampling? if so, how much?
HSWavetable
* constructor; will generate the wavetables. Takes as parameters
* tables per octave
* sample rate
* number of samples
* destructor; obvious
* getClosestMatchingWavetable(desired_frequency) => wavetable, base frequency. (Binary search)
http://lists.apple.com/archives/Coreaudio-api/2004/Nov/msg00094.html
http://lists.apple.com/archives/coreaudio-api/2008/Sep/msg00210.html
http://developer.apple.com/mac/library/technotes/tn2002/tn2104.html#GESTURES
depending on harmoncis compensation parameter, notes at high registers disappear when harmonics amount is low
Harmonics amount 10.07
curve steepness 0.844
compensation .699
Lushness 52.88
Attack time 0
Release time 686