Browse Source

Set fifth click to reset screen

offline
decentral1se 3 years ago
parent
commit
1839f91438
No known key found for this signature in database GPG Key ID: 92DAD76BD9567B8A
  1. 35
      voicegardens/static/voicegardens.js

35
voicegardens/static/voicegardens.js

@ -11,7 +11,7 @@ var _canvas;
var offlineRecordingDuration = 3000;
// Offline limits for hardware considerations
var offlineLimits = 4;
var offlineLimits = 5;
// URL which exposes the archive saving API end-point
var archiveUrl = window.location + "add-to-archive";
@ -87,7 +87,7 @@ function gardenOfflineLimits() {
/**
* Ensure shapes stay within limits
**/
if (shapes.length < offlineLimits) return;
if (shapes.length < offlineLimits) return false;
for (let i = 0; i < shapes.length; i++) {
let shape = shapes[i];
@ -97,6 +97,8 @@ function gardenOfflineLimits() {
while (shapes.length > 0) {
shapes.pop();
}
return true;
}
function sendToArchive() {
@ -583,18 +585,23 @@ function draw() {
// generate a new shape after a sound recording
if (newSoundJustRecorded === true) {
// build a new copy of the recording to store on the shape object
let soundBlob = recording.getBlob();
let data = new p5.File(soundBlob);
let sound = new p5.SoundFile(data, function () {
let amp = sound.getPeaks(1)[0] * 100;
let dur = sound.duration();
let shape = new GeneratedShape(sound, amp, dur);
gardenOfflineLimits();
shape.sound();
shapes.push(shape);
sendToArchive();
});
let limits = gardenOfflineLimits();
console.log("limits are:");
console.log(limits);
if (limits === false) {
console.log("making another one!");
// build a new copy of the recording to store on the shape object
let soundBlob = recording.getBlob();
let data = new p5.File(soundBlob);
let sound = new p5.SoundFile(data, function () {
let amp = sound.getPeaks(1)[0] * 100;
let dur = sound.duration();
let shape = new GeneratedShape(sound, amp, dur);
shape.sound();
shapes.push(shape);
sendToArchive();
});
}
newSoundJustRecorded = false;
}

Loading…
Cancel
Save