Changeset 29893 for main/trunk/model-sites-dev/respooled/collect/popup-video-respooled/js/game-on.js
- Timestamp:
- 2015-05-18T16:42:17+12:00 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/model-sites-dev/respooled/collect/popup-video-respooled/js/game-on.js
r29888 r29893 88 88 } 89 89 90 91 function computeMidiStats(track) 92 { 93 var min_midi_pitch = num_midi_pitches-1; 94 var max_midi_pitch = 0; 95 96 var track_chromatic_durations = []; 97 for (var i=0; i<12; i++) { 98 track_chromatic_durations[i] = 0; 99 } 100 101 // Process each block within the track 102 for (var b=0; b<track.length; b++) { 103 var track_block = track[b]; 104 //var base_ctime = track_block.baseCTime; 105 var block_events = track_block.events; 106 107 var block_chromatic_durations = []; 108 for (var i=0; i<12; i++) { 109 block_chromatic_durations[i] = 0; 110 } 111 112 for (var ne=0; ne<block_events.length; ne++) { 113 var midi_pitch = block_events[ne].midiPitch; 114 115 if (midi_pitch < min_midi_pitch) { 116 min_midi_pitch = midi_pitch; 117 } 118 if (midi_pitch > max_midi_pitch) { 119 max_midi_pitch = midi_pitch; 120 } 121 122 var chromatic_pitch = midi_pitch % 12; 123 var chromatic_duration = block_events[ne].duration; 124 block_chromatic_durations[chromatic_pitch] += chromatic_duration; 125 126 track_chromatic_durations[chromatic_pitch] += chromatic_duration; 127 } 128 129 if (!("_computedKey" in track_block)) { 130 var strongest_profile = khKeyDetection(block_chromatic_durations); 131 track_block._computedKey = strongest_profile; 132 console.log("***### key prediction: " + strongest_profile); 133 } 134 135 } 136 137 if (!("_computedKey" in track)) { 138 var strongest_profile = khKeyDetection(track_chromatic_durations); 139 track._computedKey = strongest_profile; 140 } 141 142 return { "max_midi_pitch": max_midi_pitch, "min_midi_pitch": min_midi_pitch}; 143 } 144 145 90 146 function displayActiveTrackLayers(docStorage) 91 147 { … … 116 172 if (track != null) { 117 173 174 175 var midi_stats = computeMidiStats(track); 176 177 if (midi_stats.min_midi_pitch < min_midi_pitch) { 178 min_midi_pitch = midi_stats.min_midi_pitch; 179 } 180 if (midi_stats.max_midi_pitch > max_midi_pitch) { 181 max_midi_pitch = midi_stats.max_midi_pitch; 182 } 183 184 118 185 // calculate range of midi pitches present 186 /* 119 187 for (var b=0; b<track.length; b++) { 120 188 var track_block = track[b]; … … 132 200 } 133 201 } 202 */ 203 134 204 } 135 205 }
Note:
See TracChangeset
for help on using the changeset viewer.