comparison src/RecordedMultitrackAudio.cpp @ 23:bc113cd60a2f

tmp mistake
author Andrew N Robertson <andrew.robertson@eecs.qmul.ac.uk>
date Mon, 13 Feb 2012 14:58:53 +0000
parents 24c413f0f2c5
children 9df5449077bb
comparison
equal deleted inserted replaced
22:24c413f0f2c5 23:bc113cd60a2f
10 #include "RecordedMultitrackAudio.h" 10 #include "RecordedMultitrackAudio.h"
11 11
12 12
13 void RecordedMultitrackAudio::loadTestAudio(){ 13 void RecordedMultitrackAudio::loadTestAudio(){
14 14
15
15 16
16 /* const char *kickfilename = "../../../data/sound/LiveDues/kick_liveDues.wav";
17 const char *bassfilename = "../../../data/sound/LiveDues/bass_upsideLive.wav";
18 const char *snarefilename = "../../../data/sound/LiveDues/snare_liveDues.wav";
19 */
20 /*
21 const char *kickfilename = "../../../data/sound/DiamondMatch1/kick_bip.wav";
22 const char *bassfilename = "../../../data/sound/DiamondMatch1/bass_bip.wav";
23 const char *snarefilename = "../../../data/sound/DiamondMatch1/snare_bip.wav";
24 */
25 const char *kickfilename = "../../../data/sound/LiveIdiot2/02kick_bip.wav";
26 const char *bassfilename = "../../../data/sound/LiveIdiot2/01bass_bip.wav";
27 const char *snarefilename = "../../../data/sound/LiveIdiot2/03snare_bip.wav";
28
29 /* const char *kickfilename = "../../../data/sound/UistLive1/02kick_bip.wav";
30 const char *bassfilename = "../../../data/sound/UistLive1/01bass_bip.wav";
31 const char *snarefilename = "../../../data/sound/UistLive1/03snare_bip.wav";
32 */
33 //"../../../data/sound/basicClavScale.wav"; 17 //"../../../data/sound/basicClavScale.wav";
34 18
35 //LoadedAudioHolder lah; 19 //LoadedAudioHolder lah;
36 // lah.loadAudioFile(infilename); 20 // lah.loadAudioFile(infilename);
37 // loadedAudioFiles.push_back(lah); 21 // loadedAudioFiles.push_back(lah);
39 trackScreenHeight = 0.15; 23 trackScreenHeight = 0.15;
40 //Take care here - we need a pointer to create new instance 24 //Take care here - we need a pointer to create new instance
41 //but not then delete the instance before the vector of all audio tracks has been used 25 //but not then delete the instance before the vector of all audio tracks has been used
42 //the above code using lah has problem that it deletes objects once out of the scope of testApp.setup() 26 //the above code using lah has problem that it deletes objects once out of the scope of testApp.setup()
43 //when lah is in theory no longer used - something like that possible? - at least pointers to onset detection seem deleted 27 //when lah is in theory no longer used - something like that possible? - at least pointers to onset detection seem deleted
28 /*
44 loadedAudioPtr = new LoadedAudioHolder(); 29 loadedAudioPtr = new LoadedAudioHolder();
45 loadedAudioPtr->loadAudioFile(kickfilename); 30 loadedAudioPtr->loadAudioFile(kickfilename);
46 // loadedAudioFiles.push_back(*loadedAudioPtr);
47 loadedAudioFiles[0] = *loadedAudioPtr; 31 loadedAudioFiles[0] = *loadedAudioPtr;
48
49 loadedAudioFiles[0].fileLoader.onsetDetect.window.setToRelativeSize(0, 0.0, 1, trackScreenHeight); 32 loadedAudioFiles[0].fileLoader.onsetDetect.window.setToRelativeSize(0, 0.0, 1, trackScreenHeight);
50 loadedAudioFiles[0].setTrackType(0);// fileLoader.onsetDetect.trackType = 0; 33 loadedAudioFiles[0].setTrackType(0);// fileLoader.onsetDetect.trackType = 0;
51 34 */
52 // printf("Loaded audio %i\n", (int)numberOfAudioTracks); 35 // printf("Loaded audio %i\n", (int)numberOfAudioTracks);
53 printf("loaded max val is %f\n", loadedAudioFiles[0].fileLoader.onsetDetect.onsetDetector.maximumDetectionValue); 36 printf("loaded max val is %f\n", loadedAudioFiles[0].fileLoader.onsetDetect.onsetDetector.maximumDetectionValue);
54 37
55 printf("BEFORE LOADING 1\n"); 38 printf("BEFORE LOADING 1\n");
56 printInfo(); 39 printInfo();
57 40
58 loadedAudioPtr = new LoadedAudioHolder; 41 setDifferentMultitracks(1);
59 loadedAudioPtr->loadAudioFile(bassfilename);
60 // loadedAudioFiles.push_back(*loadedAudioPtr);
61 loadedAudioFiles[1] = *loadedAudioPtr;
62 loadedAudioFiles[1].fileLoader.onsetDetect.window.setToRelativeSize(0, trackScreenHeight, 1, trackScreenHeight);
63 loadedAudioFiles[1].setTrackType(1);
64 42
65
66
67 loadedAudioPtr = new LoadedAudioHolder;
68 loadedAudioPtr->loadAudioFile(snarefilename);
69 // loadedAudioFiles.push_back(*loadedAudioPtr);
70 loadedAudioFiles[2] = *loadedAudioPtr;
71 loadedAudioFiles[2].fileLoader.onsetDetect.window.setToRelativeSize(0, trackScreenHeight*2, 1, trackScreenHeight);
72 loadedAudioFiles[2].setTrackType(2);
73
74
75 printf("AFTER LOADING 1\n"); 43 printf("AFTER LOADING 1\n");
76 printInfo(); 44 printInfo();
77 45
78 numberOfAudioTracks = 3; 46 numberOfAudioTracks = 3;
79 47
80 48
49 }
50
51 void RecordedMultitrackAudio::setDifferentMultitracks(const int& setToLoad){
52 const char *kickfilename ;//= "../../../data/sound/LiveDues/kick_liveDues.wav";
53 const char *bassfilename ;//"../../../data/sound/LiveDues/bass_upsideLive.wav";
54 const char *snarefilename ;
55
56 switch (setToLoad) {
57 case 0:
58
59 kickfilename = "../../../data/sound/LiveDues/kick_liveDues.wav";
60 bassfilename = "../../../data/sound/LiveDues/bass_upsideLive.wav";
61 snarefilename = "../../../data/sound/LiveDues/snare_liveDues.wav";
62
63
64
65 break;
66 case 1:
67
68 kickfilename = "../../../data/sound/DiamondMatch1/kick_bip.wav";
69 bassfilename = "../../../data/sound/DiamondMatch1/bass_bip.wav";
70 snarefilename = "../../../data/sound/DiamondMatch1/snare_bip.wav";
71
72
73 case 2:
74 kickfilename = "../../../data/sound/LiveIdiot2/02kick_bip.wav";
75 bassfilename = "../../../data/sound/LiveIdiot2/01bass_bip.wav";
76 snarefilename = "../../../data/sound/LiveIdiot2/03snare_bip.wav";
77
78 break;
79 case 3:
80
81 kickfilename = "../../../data/sound/UistLive1/02kick_bip.wav";
82 bassfilename = "../../../data/sound/UistLive1/01bass_bip.wav";
83 snarefilename = "../../../data/sound/UistLive1/03snare_bip.wav";
84
85 break;
86 }
87 loadAudioTrack(kickfilename, 0);
88 loadAudioTrack(bassfilename, 1);
89 loadAudioTrack(snarefilename, 2);
90
91
92 }
93
94 void RecordedMultitrackAudio::loadAudioTrack(std::string name, const int& channel){
95 //kick - track type 0
96 //bass - type 1
97 //snare type 2
98 if (channel >= 0 && channel <= 4){
99 loadedAudioPtr = new LoadedAudioHolder;
100 loadedAudioPtr->loadAudioFile(name);
101 loadedAudioFiles[channel] = *loadedAudioPtr;
102 loadedAudioFiles[channel].fileLoader.onsetDetect.window.setToRelativeSize(0, trackScreenHeight*channel, 1, trackScreenHeight);
103 loadedAudioFiles[channel].setTrackType(channel);
104 }
81 } 105 }
82 106
83 107
84 108
85 void RecordedMultitrackAudio::drawTracks(){ 109 void RecordedMultitrackAudio::drawTracks(){