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@1
|
12
|
andrew@1
|
13 void RecordedMultitrackAudio::loadTestAudio(){
|
andrew@26
|
14
|
andrew@7
|
15 trackScreenHeight = 0.15;
|
andrew@26
|
16
|
andrew@1
|
17 printf("loaded max val is %f\n", loadedAudioFiles[0].fileLoader.onsetDetect.onsetDetector.maximumDetectionValue);
|
andrew@1
|
18
|
andrew@48
|
19 int multitrackToLoad = 18;
|
andrew@36
|
20 setDifferentMultitracks(multitrackToLoad);//command to load this set of audio files - see below
|
andrew@26
|
21
|
andrew@31
|
22 //number 7 is problematic with memory
|
andrew@26
|
23
|
andrew@26
|
24 printf("AFTER LOADING: \n");
|
andrew@1
|
25 printInfo();
|
andrew@7
|
26
|
andrew@1
|
27
|
andrew@31
|
28 numberOfAudioTracks = 4;
|
andrew@26
|
29
|
andrew@1
|
30
|
andrew@1
|
31 }
|
andrew@1
|
32
|
andrew@23
|
33 void RecordedMultitrackAudio::setDifferentMultitracks(const int& setToLoad){
|
andrew@23
|
34 const char *kickfilename ;//= "../../../data/sound/LiveDues/kick_liveDues.wav";
|
andrew@23
|
35 const char *bassfilename ;//"../../../data/sound/LiveDues/bass_upsideLive.wav";
|
andrew@23
|
36 const char *snarefilename ;
|
andrew@31
|
37 const char *guitarfilename ;
|
andrew@23
|
38
|
andrew@23
|
39 switch (setToLoad) {
|
andrew@23
|
40 case 0:
|
andrew@23
|
41 kickfilename = "../../../data/sound/LiveDues/kick_liveDues.wav";
|
andrew@23
|
42 bassfilename = "../../../data/sound/LiveDues/bass_upsideLive.wav";
|
andrew@23
|
43 snarefilename = "../../../data/sound/LiveDues/snare_liveDues.wav";
|
andrew@43
|
44 guitarfilename = "../../../data/sound/LiveDues/elec_upsideLive.wav";
|
andrew@23
|
45 break;
|
andrew@23
|
46 case 1:
|
andrew@43
|
47 //USE THE 18 AT BOTTOM
|
andrew@23
|
48 kickfilename = "../../../data/sound/DiamondMatch1/kick_bip.wav";
|
andrew@23
|
49 bassfilename = "../../../data/sound/DiamondMatch1/bass_bip.wav";
|
andrew@23
|
50 snarefilename = "../../../data/sound/DiamondMatch1/snare_bip.wav";
|
andrew@26
|
51 break;
|
andrew@23
|
52 case 2:
|
andrew@23
|
53 kickfilename = "../../../data/sound/LiveIdiot2/02kick_bip.wav";
|
andrew@23
|
54 bassfilename = "../../../data/sound/LiveIdiot2/01bass_bip.wav";
|
andrew@23
|
55 snarefilename = "../../../data/sound/LiveIdiot2/03snare_bip.wav";
|
andrew@23
|
56 break;
|
andrew@23
|
57 case 3:
|
andrew@23
|
58 kickfilename = "../../../data/sound/UistLive1/02kick_bip.wav";
|
andrew@23
|
59 bassfilename = "../../../data/sound/UistLive1/01bass_bip.wav";
|
andrew@23
|
60 snarefilename = "../../../data/sound/UistLive1/03snare_bip.wav";
|
andrew@23
|
61 break;
|
andrew@28
|
62
|
andrew@28
|
63 case 4:
|
andrew@39
|
64 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeTwo/02kick_bip.wav";
|
andrew@39
|
65 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeTwo/01bass_bip.wav";
|
andrew@39
|
66 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeTwo/03snare_bip.wav";
|
andrew@39
|
67 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeTwo/04guitar di_bip.wav";
|
andrew@28
|
68 break;
|
andrew@29
|
69 case 5:
|
andrew@31
|
70 kickfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take12/02kick_bip.wav";
|
andrew@31
|
71 bassfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take12/01bass_bip.wav";
|
andrew@31
|
72 snarefilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take12/03snare_bip.wav";
|
andrew@32
|
73 guitarfilename ="/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take12/04elec_bip.wav";
|
andrew@29
|
74 break;
|
andrew@31
|
75 case 6:
|
andrew@31
|
76 kickfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take13/02kick_bip.wav";
|
andrew@31
|
77 bassfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take13/01bass_bip.wav";
|
andrew@31
|
78 snarefilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take13/03snare_bip.wav";
|
andrew@32
|
79 guitarfilename ="/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take13/04elec_bip.wav";
|
andrew@31
|
80 break;
|
andrew@31
|
81
|
andrew@31
|
82 case 7:
|
andrew@31
|
83 kickfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take14/02kick_bip.wav";
|
andrew@31
|
84 bassfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take14/01bass_bip.wav";
|
andrew@31
|
85 snarefilename ="/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take14/03snare_bip.wav";
|
andrew@31
|
86 guitarfilename ="/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/Take14/04elec_bip.wav";
|
andrew@31
|
87 break;
|
andrew@31
|
88
|
andrew@31
|
89 case 8:
|
andrew@31
|
90 kickfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/DownLine4/02kick_bip.wav";
|
andrew@31
|
91 bassfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/DownLine4/01bass_bip.wav";
|
andrew@31
|
92 snarefilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/DownLine4/03snare_bip.wav";
|
andrew@31
|
93 break;
|
andrew@31
|
94
|
andrew@31
|
95 case 9:
|
andrew@31
|
96 kickfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/DownLine5/02kick.wav";
|
andrew@31
|
97 bassfilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/DownLine5/01bass.wav";
|
andrew@31
|
98 snarefilename = "/Users/andrew/Documents/work/Alignment/MultitrackMatch/tractorsAlign/DownLine5/03snare.wav";
|
andrew@31
|
99 break;
|
andrew@31
|
100
|
andrew@33
|
101 case 10:
|
andrew@33
|
102 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take2/02Kick_bip.wav";
|
andrew@33
|
103 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take2/01Bass.wav";
|
andrew@33
|
104 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take2/03Snare_bip.wav";
|
andrew@33
|
105 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take2/04Elec_SM57_bip.wav";
|
andrew@33
|
106 break;
|
andrew@29
|
107
|
andrew@33
|
108 case 11:
|
andrew@33
|
109 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take3/02Kick_bip.wav";
|
andrew@33
|
110 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take3/01Bass.wav";
|
andrew@33
|
111 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take3/03Snare_bip.wav";
|
andrew@33
|
112 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take3/04Elec_SM57_bip.wav";
|
andrew@33
|
113 break;
|
andrew@33
|
114
|
andrew@33
|
115 case 12:
|
andrew@33
|
116 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take4/02Kick_bip.wav";
|
andrew@33
|
117 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take4/01Bass.wav";
|
andrew@33
|
118 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take4/03Snare_bip.wav";
|
andrew@33
|
119 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take4/04Elec_SM57_bip.wav";
|
andrew@33
|
120 break;
|
andrew@33
|
121
|
andrew@33
|
122 case 13:
|
andrew@33
|
123 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take6/02Kick_bip.wav";
|
andrew@33
|
124 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take6/01Bass.wav";
|
andrew@33
|
125 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take6/03Snare_bip.wav";
|
andrew@36
|
126 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/MarbleArchMultitracks/Take6/04Elec_SM57_bip.wav";
|
andrew@33
|
127 break;
|
andrew@34
|
128
|
andrew@34
|
129
|
andrew@34
|
130 case 14:
|
andrew@35
|
131 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeOneShorter/02Kick_bip.wav";
|
andrew@35
|
132 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeOneShorter/01Bass.wav";
|
andrew@35
|
133 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeOneShorter/03Snare_bip.wav";
|
andrew@35
|
134 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeOneShorter/04Elec_SM57_bip.wav";
|
andrew@34
|
135 break;
|
andrew@34
|
136
|
andrew@34
|
137 case 15:
|
andrew@35
|
138 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeTwoShorter/02Kick_bip.wav";
|
andrew@35
|
139 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeTwoShorter/01Bass.wav";
|
andrew@35
|
140 snarefilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeTwoShorter/03Snare_bip.wav";
|
andrew@35
|
141 guitarfilename ="/Volumes/Supersaurus/Gronk/Gronkn/Bounces/StationGateMultitracks/TakeTwoShorter/04Elec_SM57_bip.wav";
|
andrew@36
|
142 break;
|
andrew@36
|
143
|
andrew@36
|
144 case 16:
|
andrew@36
|
145 kickfilename = "/Volumes/Supersaurus/SonOfMan/FollowYourLeaders/FollowYourLeaders/Bounces/FollowMultitracks/Follow_023_D/02Kick_D112_bip.wav";
|
andrew@39
|
146 // bassfilename = "/Volumes/Supersaurus/SonOfMan/FollowYourLeaders/FollowYourLeaders/Bounces/FollowMultitracks/Follow_023_D/01Bass.wav";
|
andrew@39
|
147 snarefilename = "/Volumes/Supersaurus/SonOfMan/FollowYourLeaders/FollowYourLeaders/Bounces/FollowMultitracks/Follow_023_D/03Snare_Top_bip.wav";
|
andrew@39
|
148 guitarfilename = "/Volumes/Supersaurus/SonOfMan/FollowYourLeaders/FollowYourLeaders/Bounces/FollowMultitracks/Follow_023_D/04Elec_SM57_bip.wav";
|
andrew@39
|
149
|
andrew@36
|
150 break;
|
andrew@36
|
151
|
andrew@39
|
152 case 17:
|
andrew@39
|
153 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeThree/02kick_bip.wav";
|
andrew@39
|
154 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeThree/01bass_bip.wav";
|
andrew@39
|
155 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeThree/03snare_bip.wav";
|
andrew@39
|
156 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsIdiotDance/tractorsSetToRecord2/Bounces/TakeThree/04guitar di_bip.wav";
|
andrew@39
|
157 break;
|
andrew@36
|
158
|
andrew@41
|
159 case 18:
|
andrew@42
|
160 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDiamondWhite/tractorsDiamondWhite/Bounces/diamondWhiteMultiTakeTwo/01bass di_bip.wav";
|
andrew@42
|
161 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDiamondWhite/tractorsDiamondWhite/Bounces/diamondWhiteMultiTakeTwo/02kick_bip.wav";
|
andrew@42
|
162 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDiamondWhite/tractorsDiamondWhite/Bounces/diamondWhiteMultiTakeTwo/03snare bottom_bip.wav";
|
andrew@41
|
163 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDiamondWhite/tractorsDiamondWhite/Bounces/diamondWhiteMultiTakeTwo/04guitar di_bip.wav";
|
andrew@42
|
164 break;
|
andrew@42
|
165
|
andrew@43
|
166 case 19:
|
andrew@47
|
167 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/LewesMultitracks/LewesTake13_ProperStructure/bass di_bip_1.wav";
|
andrew@47
|
168 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/LewesMultitracks/LewesTake13_ProperStructure/kick_bip_1.wav";
|
andrew@47
|
169 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/LewesMultitracks/LewesTake13_ProperStructure/snare_bip_1.wav";
|
andrew@47
|
170 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/tractorsDemo/Bounces/LewesMultitracks/LewesTake13_ProperStructure/guitar di_bip_1.wav";
|
andrew@43
|
171 break;
|
andrew@43
|
172
|
andrew@43
|
173 case 20:
|
andrew@43
|
174 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/WanderlustMulitracks/Wanderlust_Take16/Bass D.I.wav";
|
andrew@43
|
175 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/WanderlustMulitracks/Wanderlust_Take16/Kick_bip.wav";
|
andrew@43
|
176 snarefilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/WanderlustMulitracks/Wanderlust_Take16/Snare_bip.wav";
|
andrew@43
|
177 guitarfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/WanderlustMulitracks/Wanderlust_Take16/Elec SM57_bip.wav";
|
andrew@43
|
178 break;
|
andrew@43
|
179
|
andrew@43
|
180
|
andrew@43
|
181 case 21:
|
andrew@43
|
182 bassfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/Windowsill_Multitracks/Windowsill_Take12/Bass D.I.wav";
|
andrew@43
|
183 kickfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/Windowsill_Multitracks/Windowsill_Take12/Kick_bip.wav";
|
andrew@43
|
184 snarefilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/Windowsill_Multitracks/Windowsill_Take12/Snare_bip.wav";
|
andrew@43
|
185 guitarfilename = "/Volumes/Supersaurus/Gronk/Gronkn/Bounces/Windowsill_Multitracks/Windowsill_Take12/Elec SM57_bip.wav";
|
andrew@43
|
186 break;
|
andrew@43
|
187
|
andrew@43
|
188 case 22:
|
andrew@43
|
189 bassfilename = "/Users/andrew/Music/Logic/SonOfMan/SonOfManMultitracks/SonOfMan_TakeThree/Bass_bip.wav";
|
andrew@43
|
190 kickfilename = "/Users/andrew/Music/Logic/SonOfMan/SonOfManMultitracks/SonOfMan_TakeThree/Kik RE20_bip.wav";
|
andrew@43
|
191 snarefilename = "/Users/andrew/Music/Logic/SonOfMan/SonOfManMultitracks/SonOfMan_TakeThree/Snare Top_bip.wav";
|
andrew@43
|
192 guitarfilename = "/Users/andrew/Music/Logic/SonOfMan/SonOfManMultitracks/SonOfMan_TakeThree/Electric di_bip.wav";
|
andrew@43
|
193 break;
|
andrew@43
|
194
|
andrew@48
|
195 case 23:
|
andrew@48
|
196 bassfilename = "/Volumes/Supersaurus/TractorsAlbum/TractorsMotorcade/Motorcade/Bounces/MotorcadeMulittracks/Motorcade_Take_57/bass DI_bip.wav";
|
andrew@48
|
197 kickfilename = "/Volumes/Supersaurus/TractorsAlbum/TractorsMotorcade/Motorcade/Bounces/MotorcadeMulittracks/Motorcade_Take_57/Kick re20_bip.wav";
|
andrew@48
|
198 snarefilename = "/Volumes/Supersaurus/TractorsAlbum/TractorsMotorcade/Motorcade/Bounces/MotorcadeMulittracks/Motorcade_Take_57/Snare sm578_bip.wav";
|
andrew@48
|
199 guitarfilename = "/Volumes/Supersaurus/TractorsAlbum/TractorsMotorcade/Motorcade/Bounces/MotorcadeMulittracks/Motorcade_Take_57/guitar DI_bip.wav";
|
andrew@48
|
200 break;
|
andrew@48
|
201
|
andrew@36
|
202
|
andrew@29
|
203
|
andrew@23
|
204 }
|
andrew@39
|
205 if (kickfilename != NULL)
|
andrew@23
|
206 loadAudioTrack(kickfilename, 0);
|
andrew@39
|
207
|
andrew@39
|
208 if (bassfilename != NULL){
|
andrew@39
|
209 printf("BASSfilename: %s\n", bassfilename);
|
andrew@39
|
210 loadAudioTrack(bassfilename, 1);
|
andrew@39
|
211 }
|
andrew@39
|
212
|
andrew@39
|
213 if (snarefilename != NULL)
|
andrew@23
|
214 loadAudioTrack(snarefilename, 2);
|
andrew@31
|
215
|
andrew@31
|
216 if (guitarfilename != NULL)
|
andrew@31
|
217 loadAudioTrack(guitarfilename, 3);
|
andrew@23
|
218
|
andrew@23
|
219 }
|
andrew@23
|
220
|
andrew@23
|
221 void RecordedMultitrackAudio::loadAudioTrack(std::string name, const int& channel){
|
andrew@23
|
222 //kick - track type 0
|
andrew@23
|
223 //bass - type 1
|
andrew@23
|
224 //snare type 2
|
andrew@23
|
225 if (channel >= 0 && channel <= 4){
|
andrew@23
|
226 loadedAudioPtr = new LoadedAudioHolder;
|
andrew@38
|
227 //set tracktype before we do analysis
|
andrew@38
|
228 //so we dont do unnecessary chroma and pitch calculations
|
andrew@38
|
229 loadedAudioPtr->setTrackType(channel);
|
andrew@23
|
230 loadedAudioPtr->loadAudioFile(name);
|
andrew@38
|
231
|
andrew@23
|
232 loadedAudioFiles[channel] = *loadedAudioPtr;
|
andrew@23
|
233 loadedAudioFiles[channel].fileLoader.onsetDetect.window.setToRelativeSize(0, trackScreenHeight*channel, 1, trackScreenHeight);
|
andrew@38
|
234 //loadedAudioFiles[channel].setTrackType(channel);
|
andrew@23
|
235 }
|
andrew@23
|
236 }
|
andrew@23
|
237
|
andrew@1
|
238
|
andrew@1
|
239
|
andrew@1
|
240 void RecordedMultitrackAudio::drawTracks(){
|
andrew@1
|
241
|
andrew@1
|
242 for (int i = 0;i < numberOfAudioTracks;i++){
|
andrew@1
|
243 loadedAudioFiles[i].draw();
|
andrew@1
|
244 }
|
andrew@1
|
245 }
|
andrew@1
|
246
|
andrew@1
|
247
|
andrew@1
|
248 void RecordedMultitrackAudio::updatePosition(){
|
andrew@1
|
249 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
250 loadedAudioFiles[i].updateToPlayPosition();
|
andrew@1
|
251 }
|
andrew@1
|
252
|
andrew@9
|
253 void RecordedMultitrackAudio::updatePositionToMillis(const double& millis){
|
andrew@9
|
254 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@9
|
255 loadedAudioFiles[i].updateToMillisPosition(millis);
|
andrew@9
|
256 }
|
andrew@2
|
257
|
andrew@1
|
258 void RecordedMultitrackAudio::switchScreens(){
|
andrew@1
|
259 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
260 loadedAudioFiles[i].switchScreens();
|
andrew@1
|
261 }
|
andrew@1
|
262
|
andrew@1
|
263
|
andrew@1
|
264 void RecordedMultitrackAudio::togglePlay(){
|
andrew@1
|
265 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
266 loadedAudioFiles[i].togglePlay();
|
andrew@1
|
267 }
|
andrew@1
|
268
|
andrew@1
|
269 void RecordedMultitrackAudio::stop(){
|
andrew@1
|
270 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
271 loadedAudioFiles[i].stop();
|
andrew@1
|
272 }
|
andrew@1
|
273
|
andrew@1
|
274
|
andrew@1
|
275 void RecordedMultitrackAudio::printInfo(){
|
andrew@1
|
276 loadedAudioFiles[0].fileLoader.onsetDetect.printChromaInfo();
|
andrew@1
|
277 loadedAudioFiles[0].printEvents();
|
andrew@1
|
278 }
|
andrew@1
|
279
|
andrew@1
|
280 void RecordedMultitrackAudio::windowResized(const int& w, const int& h){
|
andrew@1
|
281 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
282 loadedAudioFiles[i].windowResized(w, h);
|
andrew@1
|
283 }
|
andrew@1
|
284
|
andrew@1
|
285 void RecordedMultitrackAudio::zoomIn(){
|
andrew@1
|
286 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
287 loadedAudioFiles[i].fileLoader.zoomIn();
|
andrew@1
|
288 }
|
andrew@1
|
289
|
andrew@1
|
290 void RecordedMultitrackAudio::zoomOut(){
|
andrew@1
|
291 for (int i = 0;i < numberOfAudioTracks;i++)
|
andrew@1
|
292 loadedAudioFiles[i].fileLoader.zoomOut();
|
andrew@1
|
293 }
|
andrew@1
|
294
|
andrew@1
|
295
|