andrew@1
|
1 /*
|
andrew@1
|
2 * RecordedMultitrackAudio.cpp
|
andrew@1
|
3 * MultipleAudioMathcher
|
andrew@1
|
4 *
|
andrew@1
|
5 * Created by Andrew on 31/01/2012.
|
andrew@1
|
6 * Copyright 2012 QMUL. All rights reserved.
|
andrew@1
|
7 *
|
andrew@1
|
8 */
|
andrew@1
|
9
|
andrew@1
|
10 #include "RecordedMultitrackAudio.h"
|
andrew@1
|
11
|
andrew@55
|
12 static bool printOnsetInfo = false;
|
andrew@1
|
13
|
andrew@1
|
14 void RecordedMultitrackAudio::loadTestAudio(){
|
andrew@26
|
15
|
andrew@7
|
16 trackScreenHeight = 0.15;
|
andrew@52
|
17
|
andrew@52
|
18 numberOfAudioTracks = 4;
|
andrew@52
|
19
|
andrew@55
|
20
|
andrew@53
|
21 int multitrackToLoad = 27;
|
andrew@36
|
22 setDifferentMultitracks(multitrackToLoad);//command to load this set of audio files - see below
|
andrew@26
|
23
|
andrew@31
|
24 //number 7 is problematic with memory
|
andrew@26
|
25
|
andrew@55
|
26 if (printOnsetInfo){
|
andrew@55
|
27 printf("loaded max val is %f\n", loadedAudioFiles[0].fileLoader.onsetDetect.onsetDetector.maximumDetectionValue);
|
andrew@55
|
28 printf("AFTER LOADING: \n");
|
andrew@55
|
29 printInfo();
|
andrew@55
|
30 }
|
andrew@7
|
31
|
andrew@1
|
32
|
andrew@26
|
33
|
andrew@1
|
34
|
andrew@1
|
35 }
|
andrew@50
|
36 #pragma mark -loadingPrerecordedTracks
|
andrew@23
|
37 void RecordedMultitrackAudio::setDifferentMultitracks(const int& setToLoad){
|
andrew@23
|
38 const char *kickfilename ;//= "../../../data/sound/LiveDues/kick_liveDues.wav";
|
andrew@23
|
39 const char *bassfilename ;//"../../../data/sound/LiveDues/bass_upsideLive.wav";
|
andrew@23
|
40 const char *snarefilename ;
|
andrew@31
|
41 const char *guitarfilename ;
|
andrew@23
|
42
|
andrew@23
|
43 switch (setToLoad) {
|
andrew@23
|
44 case 0:
|
andrew@23
|
45 kickfilename = "../../../data/sound/LiveDues/kick_liveDues.wav";
|
andrew@23
|
46 bassfilename = "../../../data/sound/LiveDues/bass_upsideLive.wav";
|
andrew@23
|
47 snarefilename = "../../../data/sound/LiveDues/snare_liveDues.wav";
|
andrew@43
|
48 guitarfilename = "../../../data/sound/LiveDues/elec_upsideLive.wav";
|
andrew@23
|
49 break;
|
andrew@23
|
50 case 1:
|
andrew@43
|
51 //USE THE 18 AT BOTTOM
|
andrew@23
|
52 kickfilename = "../../../data/sound/DiamondMatch1/kick_bip.wav";
|
andrew@23
|
53 bassfilename = "../../../data/sound/DiamondMatch1/bass_bip.wav";
|
andrew@23
|
54 snarefilename = "../../../data/sound/DiamondMatch1/snare_bip.wav";
|
andrew@26
|
55 break;
|
andrew@23
|
56 case 2:
|
andrew@23
|
57 kickfilename = "../../../data/sound/LiveIdiot2/02kick_bip.wav";
|
andrew@23
|
58 bassfilename = "../../../data/sound/LiveIdiot2/01bass_bip.wav";
|
andrew@23
|
59 snarefilename = "../../../data/sound/LiveIdiot2/03snare_bip.wav";
|
andrew@23
|
60 break;
|
andrew@23
|
61 case 3:
|
andrew@23
|
62 kickfilename = "../../../data/sound/UistLive1/02kick_bip.wav";
|
andrew@23
|
63 bassfilename = "../../../data/sound/UistLive1/01bass_bip.wav";
|
andrew@23
|
64 snarefilename = "../../../data/sound/UistLive1/03snare_bip.wav";
|
andrew@23
|
65 break;
|
andrew@28
|
66
|
andrew@28
|
67 case 4:
|
andrew@39
|
68 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeTwo/02kick_bip.wav";
|
andrew@39
|
69 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeTwo/01bass_bip.wav";
|
andrew@39
|
70 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeTwo/03snare_bip.wav";
|
andrew@39
|
71 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeTwo/04guitar di_bip.wav";
|
andrew@28
|
72 break;
|
andrew@50
|
73
|
andrew@50
|
74 //LEWES multitracks?
|
andrew@50
|
75 /* case 5:
|
andrew@31
|
76 kickfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take12/02kick_bip.wav";
|
andrew@31
|
77 bassfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take12/01bass_bip.wav";
|
andrew@31
|
78 snarefilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take12/03snare_bip.wav";
|
andrew@32
|
79 guitarfilename ="/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take12/04elec_bip.wav";
|
andrew@29
|
80 break;
|
andrew@31
|
81 case 6:
|
andrew@31
|
82 kickfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take13/02kick_bip.wav";
|
andrew@31
|
83 bassfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take13/01bass_bip.wav";
|
andrew@31
|
84 snarefilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take13/03snare_bip.wav";
|
andrew@32
|
85 guitarfilename ="/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take13/04elec_bip.wav";
|
andrew@31
|
86 break;
|
andrew@31
|
87
|
andrew@31
|
88 case 7:
|
andrew@31
|
89 kickfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take14/02kick_bip.wav";
|
andrew@31
|
90 bassfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take14/01bass_bip.wav";
|
andrew@31
|
91 snarefilename ="/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take14/03snare_bip.wav";
|
andrew@31
|
92 guitarfilename ="/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take14/04elec_bip.wav";
|
andrew@31
|
93 break;
|
andrew@31
|
94
|
andrew@31
|
95 case 8:
|
andrew@31
|
96 kickfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/DownLine4/02kick_bip.wav";
|
andrew@31
|
97 bassfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/DownLine4/01bass_bip.wav";
|
andrew@31
|
98 snarefilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/DownLine4/03snare_bip.wav";
|
andrew@31
|
99 break;
|
andrew@31
|
100
|
andrew@31
|
101 case 9:
|
andrew@31
|
102 kickfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/DownLine5/02kick.wav";
|
andrew@31
|
103 bassfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/DownLine5/01bass.wav";
|
andrew@31
|
104 snarefilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/DownLine5/03snare.wav";
|
andrew@31
|
105 break;
|
andrew@50
|
106 */
|
andrew@33
|
107 case 10:
|
andrew@33
|
108 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take2/02Kick_bip.wav";
|
andrew@33
|
109 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take2/01Bass.wav";
|
andrew@33
|
110 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take2/03Snare_bip.wav";
|
andrew@33
|
111 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take2/04Elec_SM57_bip.wav";
|
andrew@33
|
112 break;
|
andrew@29
|
113
|
andrew@33
|
114 case 11:
|
andrew@33
|
115 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take3/02Kick_bip.wav";
|
andrew@33
|
116 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take3/01Bass.wav";
|
andrew@33
|
117 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take3/03Snare_bip.wav";
|
andrew@33
|
118 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take3/04Elec_SM57_bip.wav";
|
andrew@33
|
119 break;
|
andrew@33
|
120
|
andrew@33
|
121 case 12:
|
andrew@33
|
122 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take4/02Kick_bip.wav";
|
andrew@33
|
123 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take4/01Bass.wav";
|
andrew@33
|
124 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take4/03Snare_bip.wav";
|
andrew@33
|
125 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take4/04Elec_SM57_bip.wav";
|
andrew@33
|
126 break;
|
andrew@33
|
127
|
andrew@33
|
128 case 13:
|
andrew@33
|
129 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take6/02Kick_bip.wav";
|
andrew@33
|
130 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take6/01Bass.wav";
|
andrew@33
|
131 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take6/03Snare_bip.wav";
|
andrew@36
|
132 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take6/04Elec_SM57_bip.wav";
|
andrew@33
|
133 break;
|
andrew@34
|
134
|
andrew@34
|
135
|
andrew@50
|
136 /*case 14:
|
andrew@35
|
137 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeOneShorter/02Kick_bip.wav";
|
andrew@35
|
138 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeOneShorter/01Bass.wav";
|
andrew@35
|
139 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeOneShorter/03Snare_bip.wav";
|
andrew@35
|
140 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeOneShorter/04Elec_SM57_bip.wav";
|
andrew@50
|
141 break;
|
andrew@50
|
142 */
|
andrew@50
|
143 case 14:
|
andrew@52
|
144 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/FinalEdits/takeTwoEdited/02Kick_bip_1.wav";
|
andrew@52
|
145 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/FinalEdits/takeTwoEdited/01Bass_bip_1.wav";
|
andrew@52
|
146 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/FinalEdits/takeTwoEdited/03Snare_bip_1.wav";
|
andrew@52
|
147 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/FinalEdits/takeTwoEdited/Ac D_1_bip.wav";
|
andrew@50
|
148 break;
|
andrew@50
|
149
|
andrew@34
|
150
|
andrew@34
|
151 case 15:
|
andrew@35
|
152 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeTwoShorter/02Kick_bip.wav";
|
andrew@35
|
153 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeTwoShorter/01Bass.wav";
|
andrew@35
|
154 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeTwoShorter/03Snare_bip.wav";
|
andrew@52
|
155 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeTwoShorter/Ac D.I.wav";//04Elec_SM57_bip.wav";
|
andrew@36
|
156 break;
|
andrew@36
|
157
|
andrew@36
|
158 case 16:
|
andrew@36
|
159 kickfilename = "/Volumes/Supersaurus/SonOfMan/FollowYourLeaders/FollowYourLeaders/Bounces/FollowMultitracks/Follow_023_D/02Kick_D112_bip.wav";
|
andrew@39
|
160 // bassfilename = "/Volumes/Supersaurus/SonOfMan/FollowYourLeaders/FollowYourLeaders/Bounces/FollowMultitracks/Follow_023_D/01Bass.wav";
|
andrew@39
|
161 snarefilename = "/Volumes/Supersaurus/SonOfMan/FollowYourLeaders/FollowYourLeaders/Bounces/FollowMultitracks/Follow_023_D/03Snare_Top_bip.wav";
|
andrew@39
|
162 guitarfilename = "/Volumes/Supersaurus/SonOfMan/FollowYourLeaders/FollowYourLeaders/Bounces/FollowMultitracks/Follow_023_D/04Elec_SM57_bip.wav";
|
andrew@39
|
163
|
andrew@36
|
164 break;
|
andrew@36
|
165
|
andrew@39
|
166 case 17:
|
andrew@39
|
167 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeThree/02kick_bip.wav";
|
andrew@39
|
168 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeThree/01bass_bip.wav";
|
andrew@39
|
169 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeThree/03snare_bip.wav";
|
andrew@39
|
170 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeThree/04guitar di_bip.wav";
|
andrew@39
|
171 break;
|
andrew@36
|
172
|
andrew@41
|
173 case 18:
|
andrew@42
|
174 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDiamondWhite/tractorsDiamondWhite/Bounces/diamondWhiteMultiTakeTwo/01bass di_bip.wav";
|
andrew@42
|
175 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDiamondWhite/tractorsDiamondWhite/Bounces/diamondWhiteMultiTakeTwo/02kick_bip.wav";
|
andrew@42
|
176 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDiamondWhite/tractorsDiamondWhite/Bounces/diamondWhiteMultiTakeTwo/03snare bottom_bip.wav";
|
andrew@41
|
177 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDiamondWhite/tractorsDiamondWhite/Bounces/diamondWhiteMultiTakeTwo/04guitar di_bip.wav";
|
andrew@42
|
178 break;
|
andrew@42
|
179
|
andrew@43
|
180 case 19:
|
andrew@47
|
181 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/LewesMultitracks/LewesTake13_ProperStructure/bass di_bip_1.wav";
|
andrew@47
|
182 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/LewesMultitracks/LewesTake13_ProperStructure/kick_bip_1.wav";
|
andrew@47
|
183 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/LewesMultitracks/LewesTake13_ProperStructure/snare_bip_1.wav";
|
andrew@47
|
184 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/LewesMultitracks/LewesTake13_ProperStructure/guitar di_bip_1.wav";
|
andrew@43
|
185 break;
|
andrew@43
|
186
|
andrew@43
|
187 case 20:
|
andrew@43
|
188 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/WanderlustMulitracks/Wanderlust_Take16/Bass D.I.wav";
|
andrew@43
|
189 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/WanderlustMulitracks/Wanderlust_Take16/Kick_bip.wav";
|
andrew@43
|
190 snarefilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/WanderlustMulitracks/Wanderlust_Take16/Snare_bip.wav";
|
andrew@43
|
191 guitarfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/WanderlustMulitracks/Wanderlust_Take16/Elec SM57_bip.wav";
|
andrew@43
|
192 break;
|
andrew@43
|
193
|
andrew@43
|
194
|
andrew@43
|
195 case 21:
|
andrew@43
|
196 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/Windowsill_Multitracks/Windowsill_Take12/Bass D.I.wav";
|
andrew@43
|
197 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/Windowsill_Multitracks/Windowsill_Take12/Kick_bip.wav";
|
andrew@43
|
198 snarefilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/Windowsill_Multitracks/Windowsill_Take12/Snare_bip.wav";
|
andrew@43
|
199 guitarfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/Windowsill_Multitracks/Windowsill_Take12/Elec SM57_bip.wav";
|
andrew@43
|
200 break;
|
andrew@43
|
201
|
andrew@43
|
202 case 22:
|
andrew@43
|
203 bassfilename = "/Users/andrew/Music/Logic/SonOfMan/SonOfManMultitracks/SonOfMan_TakeThree/Bass_bip.wav";
|
andrew@43
|
204 kickfilename = "/Users/andrew/Music/Logic/SonOfMan/SonOfManMultitracks/SonOfMan_TakeThree/Kik RE20_bip.wav";
|
andrew@43
|
205 snarefilename = "/Users/andrew/Music/Logic/SonOfMan/SonOfManMultitracks/SonOfMan_TakeThree/Snare Top_bip.wav";
|
andrew@43
|
206 guitarfilename = "/Users/andrew/Music/Logic/SonOfMan/SonOfManMultitracks/SonOfMan_TakeThree/Electric di_bip.wav";
|
andrew@43
|
207 break;
|
andrew@43
|
208
|
andrew@53
|
209 //MOTORCADE
|
andrew@48
|
210 case 23:
|
andrew@48
|
211 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/TractorsMotorcade/Motorcade/Bounces/MotorcadeMulittracks/Motorcade_Take_57/bass DI_bip.wav";
|
andrew@48
|
212 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/TractorsMotorcade/Motorcade/Bounces/MotorcadeMulittracks/Motorcade_Take_57/Kick re20_bip.wav";
|
andrew@48
|
213 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/TractorsMotorcade/Motorcade/Bounces/MotorcadeMulittracks/Motorcade_Take_57/Snare sm578_bip.wav";
|
andrew@48
|
214 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/TractorsMotorcade/Motorcade/Bounces/MotorcadeMulittracks/Motorcade_Take_57/guitar DI_bip.wav";
|
andrew@48
|
215 break;
|
andrew@48
|
216
|
andrew@50
|
217 case 24:
|
andrew@50
|
218 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/Festival_Multitracks/TakeThree_23/bass D.I.wav";
|
andrew@50
|
219 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/Festival_Multitracks/TakeThree_23/Kick_bip.wav";
|
andrew@50
|
220 snarefilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/Festival_Multitracks/TakeThree_23/Snare_bip.wav";
|
andrew@50
|
221 guitarfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/Festival_Multitracks/TakeThree_23/Elec SM57_bip.wav";
|
andrew@50
|
222 break;
|
andrew@52
|
223
|
andrew@50
|
224 case 25:
|
andrew@50
|
225 bassfilename = "/Volumes/G-FORCE X/WorkBackup/Truck/Stones 1.0/Bounces/Stones_Multitracks/TakeThree_21/Bass DI_bip.wav";
|
andrew@50
|
226 kickfilename = "/Volumes/G-FORCE X/WorkBackup/Truck/Stones 1.0/Bounces/Stones_Multitracks/TakeThree_21/BD_bip.wav";
|
andrew@50
|
227 snarefilename = "/Volumes/G-FORCE X/WorkBackup/Truck/Stones 1.0/Bounces/Stones_Multitracks/TakeThree_21/Snr T_bip.wav";
|
andrew@50
|
228 guitarfilename = "/Volumes/G-FORCE X/WorkBackup/Truck/Stones 1.0/Bounces/Stones_Multitracks/TakeThree_21/Guit 57_bip.wav";
|
andrew@50
|
229 break;
|
andrew@50
|
230
|
andrew@50
|
231 case 26:
|
andrew@50
|
232 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/PennyArcade_Multitracks/TakeTwo_5/bass di_bip.wav";
|
andrew@50
|
233 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/PennyArcade_Multitracks/TakeTwo_5/kick_bip.wav";
|
andrew@50
|
234 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/PennyArcade_Multitracks/TakeTwo_5/snare_bip.wav";
|
andrew@50
|
235 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/PennyArcade_Multitracks/TakeTwo_5/guitar_bip.wav";
|
andrew@50
|
236 break;
|
andrew@52
|
237
|
andrew@52
|
238 //TRACTORS _ Studio Versions
|
andrew@53
|
239 //LEWES STUDIO
|
andrew@50
|
240 case 27:
|
andrew@50
|
241 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/LewesStudioFinal/bass_DI_bip.wav";
|
andrew@50
|
242 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/LewesStudioFinal/kick_bip.wav";
|
andrew@50
|
243 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/LewesStudioFinal/snare_bip.wav";
|
andrew@50
|
244 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/LewesStudioFinal/guitar sm57_bip.wav";
|
andrew@52
|
245 break;
|
andrew@36
|
246
|
andrew@53
|
247 //PENNY ARCADE STUDIO
|
andrew@52
|
248 case 28:
|
andrew@52
|
249 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/PennyArcadeStudio14aMultitrack/bass_DI.wav";
|
andrew@52
|
250 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/PennyArcadeStudio14aMultitrack/kick.wav";
|
andrew@52
|
251 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/PennyArcadeStudio14aMultitrack/snare.wav";
|
andrew@52
|
252 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/PennyArcadeStudio14aMultitrack/elec_sm57.wav";
|
andrew@52
|
253 break;
|
andrew@53
|
254 //D>W> STUDIO
|
andrew@52
|
255 case 29:
|
andrew@52
|
256 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDiamondWhite/tractorsDiamondWhite/Bounces/DiamondWhite21aBounces/bass_di.wav";
|
andrew@52
|
257 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDiamondWhite/tractorsDiamondWhite/Bounces/DiamondWhite21aBounces/kick_d112.wav";
|
andrew@52
|
258 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDiamondWhite/tractorsDiamondWhite/Bounces/DiamondWhite21aBounces/fake_snare.wav";
|
andrew@52
|
259 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDiamondWhite/tractorsDiamondWhite/Bounces/DiamondWhite21aBounces/tele_sm57.wav";
|
andrew@52
|
260 break;
|
andrew@53
|
261
|
andrew@53
|
262 //IDIOTS STUDIO
|
andrew@52
|
263 case 30:
|
andrew@52
|
264 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/IdiotsDanceStudioMultitrack/bass_di.wav";
|
andrew@52
|
265 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/IdiotsDanceStudioMultitrack/kick_d112.wav";
|
andrew@52
|
266 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/IdiotsDanceStudioMultitrack/snare_bottom.wav";
|
andrew@52
|
267 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/IdiotsDanceStudioMultitrack/gretschMatch.wav";
|
andrew@52
|
268 break;
|
andrew@52
|
269
|
andrew@53
|
270
|
andrew@52
|
271 case 31:
|
andrew@52
|
272 bassfilename = "/Volumes/Supersaurus/End2011BackupNewMacBook/Music/Logic/NewYearsResolution/NewYearsRes_v1/Bounces/Multitracks/Take11Studio/bass d.i.wav";
|
andrew@52
|
273 kickfilename = "/Volumes/Supersaurus/End2011BackupNewMacBook/Music/Logic/NewYearsResolution/NewYearsRes_v1/Bounces/Multitracks/Take11Studio/kick_bip.wav";
|
andrew@52
|
274 snarefilename = "/Volumes/Supersaurus/End2011BackupNewMacBook/Music/Logic/NewYearsResolution/NewYearsRes_v1/Bounces/Multitracks/Take11Studio/snare_bip.wav";
|
andrew@52
|
275 guitarfilename = "/Volumes/Supersaurus/End2011BackupNewMacBook/Music/Logic/NewYearsResolution/NewYearsRes_v1/Bounces/Multitracks/Take11Studio/electric_bip.wav";
|
andrew@52
|
276 // guitarfilename = "/Volumes/Supersaurus/End2011BackupNewMacBook/Music/Logic/NewYearsResolution/NewYearsRes_v1/Bounces/Multitracks/Take11Studio/acoustic_bip.wav";
|
andrew@52
|
277 break;
|
andrew@29
|
278
|
andrew@23
|
279 }
|
andrew@39
|
280 if (kickfilename != NULL)
|
andrew@23
|
281 loadAudioTrack(kickfilename, 0);
|
andrew@39
|
282
|
andrew@50
|
283 if (bassfilename != NULL){
|
andrew@39
|
284 printf("BASSfilename: %s\n", bassfilename);
|
andrew@39
|
285 loadAudioTrack(bassfilename, 1);
|
andrew@39
|
286 }
|
andrew@39
|
287
|
andrew@39
|
288 if (snarefilename != NULL)
|
andrew@23
|
289 loadAudioTrack(snarefilename, 2);
|
andrew@31
|
290
|
andrew@31
|
291 if (guitarfilename != NULL)
|
andrew@31
|
292 loadAudioTrack(guitarfilename, 3);
|
andrew@23
|
293
|
andrew@23
|
294 }
|
andrew@23
|
295
|
andrew@23
|
296 void RecordedMultitrackAudio::loadAudioTrack(std::string name, const int& channel){
|
andrew@23
|
297 //kick - track type 0
|
andrew@23
|
298 //bass - type 1
|
andrew@23
|
299 //snare type 2
|
andrew@52
|
300 //guitar type 3
|
andrew@52
|
301 if (channel >= 0 && channel <= numberOfAudioTracks){
|
andrew@23
|
302 loadedAudioPtr = new LoadedAudioHolder;
|
andrew@38
|
303 //set tracktype before we do analysis
|
andrew@38
|
304 //so we dont do unnecessary chroma and pitch calculations
|
andrew@38
|
305 loadedAudioPtr->setTrackType(channel);
|
andrew@23
|
306 loadedAudioPtr->loadAudioFile(name);
|
andrew@38
|
307
|
andrew@23
|
308 loadedAudioFiles[channel] = *loadedAudioPtr;
|
andrew@23
|
309 loadedAudioFiles[channel].fileLoader.onsetDetect.window.setToRelativeSize(0, trackScreenHeight*channel, 1, trackScreenHeight);
|
andrew@38
|
310 //loadedAudioFiles[channel].setTrackType(channel);
|
andrew@23
|
311 }
|
andrew@23
|
312 }
|
andrew@23
|
313
|
andrew@1
|
314
|
andrew@1
|
315
|
andrew@1
|
316 void RecordedMultitrackAudio::drawTracks(){
|
andrew@1
|
317
|
andrew@1
|
318 for (int i = 0;i < numberOfAudioTracks;i++){
|
andrew@1
|
319 loadedAudioFiles[i].draw();
|
andrew@1
|
320 }
|
andrew@1
|
321 }
|
andrew@1
|
322
|
andrew@50
|
323 #pragma mark -update
|
andrew@1
|
324 void RecordedMultitrackAudio::updatePosition(){
|
andrew@1
|
325 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
326 loadedAudioFiles[i].updateToPlayPosition();
|
andrew@1
|
327 }
|
andrew@1
|
328
|
andrew@9
|
329 void RecordedMultitrackAudio::updatePositionToMillis(const double& millis){
|
andrew@9
|
330 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@9
|
331 loadedAudioFiles[i].updateToMillisPosition(millis);
|
andrew@9
|
332 }
|
andrew@2
|
333
|
andrew@50
|
334 void RecordedMultitrackAudio::updatePlaybackPositionToMillis(const double& millis){
|
andrew@50
|
335 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@50
|
336 loadedAudioFiles[i].updatePlaybackPositionToMillis(millis);
|
andrew@50
|
337 }
|
andrew@50
|
338
|
andrew@1
|
339 void RecordedMultitrackAudio::switchScreens(){
|
andrew@1
|
340 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
341 loadedAudioFiles[i].switchScreens();
|
andrew@1
|
342 }
|
andrew@1
|
343
|
andrew@1
|
344
|
andrew@1
|
345 void RecordedMultitrackAudio::togglePlay(){
|
andrew@1
|
346 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
347 loadedAudioFiles[i].togglePlay();
|
andrew@1
|
348 }
|
andrew@1
|
349
|
andrew@1
|
350 void RecordedMultitrackAudio::stop(){
|
andrew@1
|
351 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
352 loadedAudioFiles[i].stop();
|
andrew@1
|
353 }
|
andrew@1
|
354
|
andrew@1
|
355
|
andrew@1
|
356 void RecordedMultitrackAudio::printInfo(){
|
andrew@1
|
357 loadedAudioFiles[0].fileLoader.onsetDetect.printChromaInfo();
|
andrew@1
|
358 loadedAudioFiles[0].printEvents();
|
andrew@1
|
359 }
|
andrew@1
|
360
|
andrew@1
|
361 void RecordedMultitrackAudio::windowResized(const int& w, const int& h){
|
andrew@1
|
362 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
363 loadedAudioFiles[i].windowResized(w, h);
|
andrew@1
|
364 }
|
andrew@1
|
365
|
andrew@1
|
366 void RecordedMultitrackAudio::zoomIn(){
|
andrew@50
|
367 printf("zoom in\n");
|
andrew@1
|
368 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
369 loadedAudioFiles[i].fileLoader.zoomIn();
|
andrew@1
|
370 }
|
andrew@1
|
371
|
andrew@1
|
372 void RecordedMultitrackAudio::zoomOut(){
|
andrew@50
|
373 printf("zoom out\n");
|
andrew@1
|
374 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
375 loadedAudioFiles[i].fileLoader.zoomOut();
|
andrew@1
|
376 }
|
andrew@1
|
377
|
andrew@1
|
378
|