Mercurial > hg > multitrack-audio-matcher
comparison src/RecordedMultitrackAudio.cpp @ 26:c47ea39b830d
working as before tmp change
author | Andrew N Robertson <andrew.robertson@eecs.qmul.ac.uk> |
---|---|
date | Mon, 13 Feb 2012 18:55:12 +0000 |
parents | 9df5449077bb |
children | 15dc0e60eb4c |
comparison
equal
deleted
inserted
replaced
25:9df5449077bb | 26:c47ea39b830d |
---|---|
9 | 9 |
10 #include "RecordedMultitrackAudio.h" | 10 #include "RecordedMultitrackAudio.h" |
11 | 11 |
12 | 12 |
13 void RecordedMultitrackAudio::loadTestAudio(){ | 13 void RecordedMultitrackAudio::loadTestAudio(){ |
14 | 14 |
15 //some update | |
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"; | |
34 | |
35 //LoadedAudioHolder lah; | |
36 // lah.loadAudioFile(infilename); | |
37 // loadedAudioFiles.push_back(lah); | |
38 | |
39 trackScreenHeight = 0.15; | 15 trackScreenHeight = 0.15; |
40 //Take care here - we need a pointer to create new instance | 16 |
41 //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() | |
43 //when lah is in theory no longer used - something like that possible? - at least pointers to onset detection seem deleted | |
44 /* | |
45 loadedAudioPtr = new LoadedAudioHolder(); | |
46 loadedAudioPtr->loadAudioFile(kickfilename); | |
47 // loadedAudioFiles.push_back(*loadedAudioPtr); | |
48 loadedAudioFiles[0] = *loadedAudioPtr; | |
49 | |
50 loadedAudioFiles[0].fileLoader.onsetDetect.window.setToRelativeSize(0, 0.0, 1, trackScreenHeight); | |
51 loadedAudioFiles[0].setTrackType(0);// fileLoader.onsetDetect.trackType = 0; | |
52 */ | |
53 // printf("Loaded audio %i\n", (int)numberOfAudioTracks); | |
54 printf("loaded max val is %f\n", loadedAudioFiles[0].fileLoader.onsetDetect.onsetDetector.maximumDetectionValue); | 17 printf("loaded max val is %f\n", loadedAudioFiles[0].fileLoader.onsetDetect.onsetDetector.maximumDetectionValue); |
55 | 18 |
56 printf("BEFORE LOADING 1\n"); | 19 |
20 | |
21 setDifferentMultitracks(2);//command to load this set of audio files - see below | |
22 | |
23 printf("AFTER LOADING: \n"); | |
57 printInfo(); | 24 printInfo(); |
58 | |
59 setDifferentMultitracks(1); | |
60 loadedAudioPtr = new LoadedAudioHolder; | |
61 loadedAudioPtr->loadAudioFile(bassfilename); | |
62 // loadedAudioFiles.push_back(*loadedAudioPtr); | |
63 loadedAudioFiles[1] = *loadedAudioPtr; | |
64 loadedAudioFiles[1].fileLoader.onsetDetect.window.setToRelativeSize(0, trackScreenHeight, 1, trackScreenHeight); | |
65 loadedAudioFiles[1].setTrackType(1); | |
66 | 25 |
67 printf("AFTER LOADING 1\n"); | |
68 printInfo(); | |
69 | 26 |
70 numberOfAudioTracks = 3; | 27 numberOfAudioTracks = 3; |
71 | 28 |
72 loadedAudioPtr = new LoadedAudioHolder; | |
73 loadedAudioPtr->loadAudioFile(snarefilename); | |
74 // loadedAudioFiles.push_back(*loadedAudioPtr); | |
75 loadedAudioFiles[2] = *loadedAudioPtr; | |
76 loadedAudioFiles[2].fileLoader.onsetDetect.window.setToRelativeSize(0, trackScreenHeight*2, 1, trackScreenHeight); | |
77 loadedAudioFiles[2].setTrackType(2); | |
78 | 29 |
79 } | 30 } |
80 | 31 |
81 void RecordedMultitrackAudio::setDifferentMultitracks(const int& setToLoad){ | 32 void RecordedMultitrackAudio::setDifferentMultitracks(const int& setToLoad){ |
82 const char *kickfilename ;//= "../../../data/sound/LiveDues/kick_liveDues.wav"; | 33 const char *kickfilename ;//= "../../../data/sound/LiveDues/kick_liveDues.wav"; |
83 const char *bassfilename ;//"../../../data/sound/LiveDues/bass_upsideLive.wav"; | 34 const char *bassfilename ;//"../../../data/sound/LiveDues/bass_upsideLive.wav"; |
84 const char *snarefilename ; | 35 const char *snarefilename ; |
85 | 36 |
86 switch (setToLoad) { | 37 switch (setToLoad) { |
87 case 0: | 38 case 0: |
88 | |
89 kickfilename = "../../../data/sound/LiveDues/kick_liveDues.wav"; | 39 kickfilename = "../../../data/sound/LiveDues/kick_liveDues.wav"; |
90 bassfilename = "../../../data/sound/LiveDues/bass_upsideLive.wav"; | 40 bassfilename = "../../../data/sound/LiveDues/bass_upsideLive.wav"; |
91 snarefilename = "../../../data/sound/LiveDues/snare_liveDues.wav"; | 41 snarefilename = "../../../data/sound/LiveDues/snare_liveDues.wav"; |
92 | |
93 | |
94 | |
95 break; | 42 break; |
96 case 1: | 43 case 1: |
97 | |
98 kickfilename = "../../../data/sound/DiamondMatch1/kick_bip.wav"; | 44 kickfilename = "../../../data/sound/DiamondMatch1/kick_bip.wav"; |
99 bassfilename = "../../../data/sound/DiamondMatch1/bass_bip.wav"; | 45 bassfilename = "../../../data/sound/DiamondMatch1/bass_bip.wav"; |
100 snarefilename = "../../../data/sound/DiamondMatch1/snare_bip.wav"; | 46 snarefilename = "../../../data/sound/DiamondMatch1/snare_bip.wav"; |
101 | 47 break; |
102 | |
103 case 2: | 48 case 2: |
104 kickfilename = "../../../data/sound/LiveIdiot2/02kick_bip.wav"; | 49 kickfilename = "../../../data/sound/LiveIdiot2/02kick_bip.wav"; |
105 bassfilename = "../../../data/sound/LiveIdiot2/01bass_bip.wav"; | 50 bassfilename = "../../../data/sound/LiveIdiot2/01bass_bip.wav"; |
106 snarefilename = "../../../data/sound/LiveIdiot2/03snare_bip.wav"; | 51 snarefilename = "../../../data/sound/LiveIdiot2/03snare_bip.wav"; |
107 | |
108 break; | 52 break; |
109 case 3: | 53 case 3: |
110 | |
111 kickfilename = "../../../data/sound/UistLive1/02kick_bip.wav"; | 54 kickfilename = "../../../data/sound/UistLive1/02kick_bip.wav"; |
112 bassfilename = "../../../data/sound/UistLive1/01bass_bip.wav"; | 55 bassfilename = "../../../data/sound/UistLive1/01bass_bip.wav"; |
113 snarefilename = "../../../data/sound/UistLive1/03snare_bip.wav"; | 56 snarefilename = "../../../data/sound/UistLive1/03snare_bip.wav"; |
114 | |
115 break; | 57 break; |
116 } | 58 } |
117 loadAudioTrack(kickfilename, 0); | 59 loadAudioTrack(kickfilename, 0); |
118 loadAudioTrack(bassfilename, 1); | 60 loadAudioTrack(bassfilename, 1); |
119 loadAudioTrack(snarefilename, 2); | 61 loadAudioTrack(snarefilename, 2); |
120 | |
121 | 62 |
122 } | 63 } |
123 | 64 |
124 void RecordedMultitrackAudio::loadAudioTrack(std::string name, const int& channel){ | 65 void RecordedMultitrackAudio::loadAudioTrack(std::string name, const int& channel){ |
125 //kick - track type 0 | 66 //kick - track type 0 |