tomwalters@0
|
1 % tool
|
tomwalters@0
|
2 %
|
tomwalters@0
|
3 % INPUT VALUES:
|
tomwalters@0
|
4 %
|
tomwalters@0
|
5 % RETURN VALUE:
|
tomwalters@0
|
6 %
|
tomwalters@0
|
7 %
|
bleeck@3
|
8 % This external file is included as part of the 'aim-mat' distribution package
|
bleeck@3
|
9 % (c) 2011, University of Southampton
|
bleeck@3
|
10 % Maintained by Stefan Bleeck (bleeck@gmail.com)
|
bleeck@3
|
11 % download of current version is on the soundsoftware site:
|
bleeck@3
|
12 % http://code.soundsoftware.ac.uk/projects/aimmat
|
bleeck@3
|
13 % documentation and everything is on http://www.acousticscale.org
|
bleeck@3
|
14
|
tomwalters@0
|
15
|
tomwalters@0
|
16 function sig=ymca()
|
tomwalters@0
|
17
|
tomwalters@0
|
18 f1=494;
|
tomwalters@0
|
19 f2=587.3;
|
tomwalters@0
|
20 f3=659.25;
|
tomwalters@0
|
21 d1=0.25;
|
tomwalters@0
|
22 d2=0.5;
|
tomwalters@0
|
23 d3=1;
|
tomwalters@0
|
24 sr=16000;
|
tomwalters@0
|
25
|
tomwalters@0
|
26
|
tomwalters@0
|
27 tune='ccdec';
|
tomwalters@0
|
28
|
tomwalters@0
|
29
|
tomwalters@0
|
30
|
tomwalters@0
|
31 % clicktrain
|
tomwalters@0
|
32 % c1=clicktrain(d1,sr,f1);
|
tomwalters@0
|
33 % c2=clicktrain(d1,sr,f2);
|
tomwalters@0
|
34 % c3=clicktrain(d2,sr,f2);
|
tomwalters@0
|
35 % c4=clicktrain(d3,sr,f3);
|
tomwalters@0
|
36 % c5=clicktrain(d1,sr,f3);
|
tomwalters@0
|
37
|
tomwalters@0
|
38 % sinus
|
tomwalters@0
|
39 % c1=sinus(d1,sr,f1);
|
tomwalters@0
|
40 % c2=sinus(d1,sr,f2);
|
tomwalters@0
|
41 % c3=sinus(d2,sr,f2);
|
tomwalters@0
|
42 % c4=sinus(d3,sr,f3);
|
tomwalters@0
|
43 % c5=sinus(d1,sr,f3);
|
tomwalters@0
|
44
|
tomwalters@0
|
45 % harmonic
|
tomwalters@0
|
46 c1=signal(d1,sr);
|
tomwalters@0
|
47 c2=signal(d1,sr);
|
tomwalters@0
|
48 c3=signal(d2,sr);
|
tomwalters@0
|
49 c4=signal(d3,sr);
|
tomwalters@0
|
50 c5=signal(d1,sr);
|
tomwalters@0
|
51
|
tomwalters@0
|
52
|
tomwalters@0
|
53 bandwidth=1000; %fixed
|
tomwalters@0
|
54 df1=256;
|
tomwalters@0
|
55 df2=512;
|
tomwalters@0
|
56 fc=1000;
|
tomwalters@0
|
57 %
|
tomwalters@0
|
58 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f]);',d1,sr,f1,fc,df1,bandwidth,df2);
|
tomwalters@0
|
59 % eval(sprintf('c1=%s;',s));
|
tomwalters@0
|
60 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f]);',d1,sr,f2,fc,df1,bandwidth,df2);
|
tomwalters@0
|
61 % eval(sprintf('c2=%s;',s));
|
tomwalters@0
|
62 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f]);',d2,sr,f2,fc,df1,bandwidth,df2);
|
tomwalters@0
|
63 % eval(sprintf('c3=%s;',s));
|
tomwalters@0
|
64 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f]);',d3,sr,f3,fc,df1,bandwidth,df2);
|
tomwalters@0
|
65 % eval(sprintf('c4=%s;',s));
|
tomwalters@0
|
66 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f]);',d1,sr,f3,fc,df1,bandwidth,df2);
|
tomwalters@0
|
67 % eval(sprintf('c5=%s;',s));
|
tomwalters@0
|
68
|
tomwalters@0
|
69 f0=125;
|
tomwalters@0
|
70 a=3;
|
tomwalters@0
|
71 s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f]);',d1,sr,f0,a*f1,df1,bandwidth,df2);
|
tomwalters@0
|
72 eval(sprintf('c1=%s;',s));
|
tomwalters@0
|
73 s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f]);',d1,sr,f0,a*f2,df1,bandwidth,df2);
|
tomwalters@0
|
74 eval(sprintf('c2=%s;',s));
|
tomwalters@0
|
75 s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f]);',d2,sr,f0,a*f2,df1,bandwidth,df2);
|
tomwalters@0
|
76 eval(sprintf('c3=%s;',s));
|
tomwalters@0
|
77 s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f]);',d3,sr,f0,a*f3,df1,bandwidth,df2);
|
tomwalters@0
|
78 eval(sprintf('c4=%s;',s));
|
tomwalters@0
|
79 s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f]);',d1,sr,f0,a*f3,df1,bandwidth,df2);
|
tomwalters@0
|
80 eval(sprintf('c5=%s;',s));
|
tomwalters@0
|
81
|
tomwalters@0
|
82 % f0=125;
|
tomwalters@0
|
83 % a=3;
|
tomwalters@0
|
84 % type='decreaseoddamplitude';
|
tomwalters@0
|
85 % amp1=0;
|
tomwalters@0
|
86 % amp2=-4;
|
tomwalters@0
|
87 % amp3=-8;
|
tomwalters@0
|
88 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f],''type'',''%s'',''changeby'',''%f'');',d1,sr,f0,fc,df1,bandwidth,df2,type,amp1);
|
tomwalters@0
|
89 % eval(sprintf('c1=%s;',s));
|
tomwalters@0
|
90 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f],''type'',''%s'',''changeby'',''%f'');',d1,sr,f0,fc,df1,bandwidth,df2,type,amp2);
|
tomwalters@0
|
91 % eval(sprintf('c2=%s;',s));
|
tomwalters@0
|
92 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f],''type'',''%s'',''changeby'',''%f'');',d2,sr,f0,fc,df1,bandwidth,df2,type,amp2);
|
tomwalters@0
|
93 % eval(sprintf('c3=%s;',s));
|
tomwalters@0
|
94 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f],''type'',''%s'',''changeby'',''%f'');',d3,sr,f0,fc,df1,bandwidth,df2,type,amp3);
|
tomwalters@0
|
95 % eval(sprintf('c4=%s;',s));
|
tomwalters@0
|
96 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f],''type'',''%s'',''changeby'',''%f'');',d1,sr,f0,fc,df1,bandwidth,df2,type,amp3);
|
tomwalters@0
|
97 % eval(sprintf('c5=%s;',s));
|
tomwalters@0
|
98
|
tomwalters@0
|
99 % f0=125;
|
tomwalters@0
|
100 % a=3;
|
tomwalters@0
|
101 % type='decreaseoddphase';
|
tomwalters@0
|
102 % phase1=0;
|
tomwalters@0
|
103 % phase2=40;
|
tomwalters@0
|
104 % phase3=70;
|
tomwalters@0
|
105 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f],''type'',''%s'',''changeby'',''%f'');',d1,sr,f0,fc,df1,bandwidth,df2,type,phase1);
|
tomwalters@0
|
106 % eval(sprintf('c1=%s;',s));
|
tomwalters@0
|
107 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f],''type'',''%s'',''changeby'',''%f'');',d1,sr,f0,fc,df1,bandwidth,df2,type,phase2);
|
tomwalters@0
|
108 % eval(sprintf('c2=%s;',s));
|
tomwalters@0
|
109 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f],''type'',''%s'',''changeby'',''%f'');',d2,sr,f0,fc,df1,bandwidth,df2,type,phase2);
|
tomwalters@0
|
110 % eval(sprintf('c3=%s;',s));
|
tomwalters@0
|
111 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f],''type'',''%s'',''changeby'',''%f'');',d3,sr,f0,fc,df1,bandwidth,df2,type,phase3);
|
tomwalters@0
|
112 % eval(sprintf('c4=%s;',s));
|
tomwalters@0
|
113 % s=sprintf('genharmonics(signal(%f,%f),''fundamental'',''%f'',''filterprop'',[%f %f %f %f],''type'',''%s'',''changeby'',''%f'');',d1,sr,f0,fc,df1,bandwidth,df2,type,phase3);
|
tomwalters@0
|
114 % eval(sprintf('c5=%s;',s));
|
tomwalters@0
|
115
|
tomwalters@0
|
116
|
tomwalters@0
|
117
|
tomwalters@0
|
118 c1=rampamplitude(c1,0.02);
|
tomwalters@0
|
119 c2=rampamplitude(c2,0.02);
|
tomwalters@0
|
120 c3=rampamplitude(c3,0.02);
|
tomwalters@0
|
121 c4=rampamplitude(c4,0.02);
|
tomwalters@0
|
122 c5=rampamplitude(c5,0.02);
|
tomwalters@0
|
123 sig=c1;
|
tomwalters@0
|
124 sig=append(sig,c2);
|
tomwalters@0
|
125 sig=append(sig,c1);
|
tomwalters@0
|
126 sig=append(sig,c2);
|
tomwalters@0
|
127 sig=append(sig,c1);
|
tomwalters@0
|
128 sig=append(sig,c3);
|
tomwalters@0
|
129 sig=append(sig,c4);
|
tomwalters@0
|
130 sig=append(sig,c3);
|
tomwalters@0
|
131 sig=append(sig,c5);
|
tomwalters@0
|
132 sig=append(sig,c2);
|