comparison src/testApp.cpp @ 50:93d21c20cfbc

Added Markers and the ability to switch to these points in the file when playing
author Andrew N Robertson <andrew.robertson@eecs.qmul.ac.uk>
date Thu, 14 Jun 2012 20:04:49 +0100
parents d23685b9e766
children 6f6461b0d07f
comparison
equal deleted inserted replaced
49:8df911733fdc 50:93d21c20cfbc
112 printf("stop!\n"); 112 printf("stop!\n");
113 eventMatcher.stopPlaying(); 113 eventMatcher.stopPlaying();
114 outputWriter.closeFile(); 114 outputWriter.closeFile();
115 } 115 }
116 116
117 if (m.getAddress() == "/marker"){
118 eventMatcher.goToMarker(m.getArgAsInt32(0));
119 }
120
117 if ( m.getAddress() == "/accompanimentRatio" ){ 121 if ( m.getAddress() == "/accompanimentRatio" ){
118 double time = m.getArgAsFloat(0); 122 double time = m.getArgAsFloat(0);
119 double ratio = m.getArgAsFloat(1); 123 double ratio = m.getArgAsFloat(1);
120 eventMatcher.synchroniser.setPlayingRatio(ratio, time); 124 eventMatcher.synchroniser.setPlayingRatio(ratio, time);
121 } 125 }
161 if (key == OF_KEY_LEFT){ 165 if (key == OF_KEY_LEFT){
162 // audioFilePlayer.loadedAudio.setPosition(max(0.0, audioFilePlayer.loadedAudio.getPosition() - (audioFilePlayer.fileLoader.audioHolder.audioScaleSamples/(4.0*audioFilePlayer.fileLoader.audioHolder.audioVector.size())))); 166 // audioFilePlayer.loadedAudio.setPosition(max(0.0, audioFilePlayer.loadedAudio.getPosition() - (audioFilePlayer.fileLoader.audioHolder.audioScaleSamples/(4.0*audioFilePlayer.fileLoader.audioHolder.audioVector.size()))));
163 167
164 } 168 }
165 169
166 if (key == 'd'){ 170 if (key == 'c'){
167 eventMatcher.useChromaDotProduct = !eventMatcher.useChromaDotProduct; 171 eventMatcher.useChromaDotProduct = !eventMatcher.useChromaDotProduct;
168 printf("Use dot product is %i\n", eventMatcher.useChromaDotProduct); 172 printf("Use dot product is %i\n", eventMatcher.useChromaDotProduct);
169 } 173 }
170 174
171 if (key == ' '){ 175 if (key == ' '){
172 176 if (!eventMatcher.startedPlaying){
173 eventMatcher.recordedTracks.togglePlay(); 177 eventMatcher.recordedTracks.togglePlay();
178 }
179 }
180 //Marker commands
181 if (key == 'm'){
182 eventMatcher.addMarkerNow();
183 }
184
185 if (key == 'c'){
186 eventMatcher.deleteMarkers();
187 }
188 if (key == 'd'){
189 eventMatcher.deleteNearestMarker();
190 }
191 if (key == 's'){
192 eventMatcher.markedPoints.saveMarkers();
193 }
194
195
196
197
198 if (key == '.'){
199 eventMatcher.moveToNextMarker();
200 }
201 if (key == ','){
202 eventMatcher.moveToPreviousMarker();
174 } 203 }
175 204
176 if (key == 'j'){ 205 if (key == 'j'){
177 printf("dynamic vector scalar is %f\n", eventMatcher.bayesianStruct.posterior.scalar); 206 printf("dynamic vector scalar is %f\n", eventMatcher.bayesianStruct.posterior.scalar);
178 } 207 }
201 230
202 if (key == OF_KEY_DOWN){ 231 if (key == OF_KEY_DOWN){
203 eventMatcher.recordedTracks.zoomIn(); 232 eventMatcher.recordedTracks.zoomIn();
204 } 233 }
205 234
235 if (key == 'l')
236 eventMatcher.drawLikelihoods = !eventMatcher.drawLikelihoods;
237
206 } 238 }
207 239
208 //-------------------------------------------------------------- 240 //--------------------------------------------------------------
209 void testApp::keyReleased (int key){ 241 void testApp::keyReleased (int key){
210 242
222 254
223 } 255 }
224 256
225 //-------------------------------------------------------------- 257 //--------------------------------------------------------------
226 void testApp::mousePressed(int x, int y, int button){ 258 void testApp::mousePressed(int x, int y, int button){
227 259 eventMatcher.mousePressed(x);
228 } 260 }
229 261
230 262
231 //-------------------------------------------------------------- 263 //--------------------------------------------------------------
232 void testApp::mouseReleased(int x, int y, int button){ 264 void testApp::mouseReleased(int x, int y, int button){