Skip to content

Commit f00fe8e

Browse files
committed
build
1 parent 9306b83 commit f00fe8e

File tree

2 files changed

+52
-38
lines changed

2 files changed

+52
-38
lines changed

dist/1.x/ByteBeat.js

Lines changed: 26 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* ByteBeat@1.0.8, license MIT */
1+
/* ByteBeat@1.0.9, license MIT */
22
(function (global, factory) {
33
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
44
typeof define === 'function' && define.amd ? define(factory) :
@@ -276,7 +276,6 @@
276276
tiltX: 0,
277277
tiltY: 0,
278278
compass: 0,
279-
sampleRate: 0,
280279
};
281280
}
282281

@@ -423,26 +422,29 @@
423422
array: [
424423
// case 0: // bytebeat
425424
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
425+
const sampleRate = extra?.sampleRate || 8000;
426426
for (let i = 0; i < lastSample; ++i) {
427-
const s = fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra);
427+
const s = fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra);
428428
buffer0[time % buffer0.length] = (s[0] & 255) / 127 - 1;
429429
buffer1[time % buffer1.length] = (s[1] & 255) / 127 - 1;
430430
++time;
431431
}
432432
},
433433
// case 1: // floatbeat
434434
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
435+
const sampleRate = extra?.sampleRate || 8000;
435436
for (let i = 0; i < lastSample; ++i) {
436-
const s = fn0.call(ctx0, (time / divisor), undefined, stack0, ctx0, extra);
437+
const s = fn0.call(ctx0, (time / divisor), sampleRate, stack0, ctx0, extra);
437438
buffer0[time % buffer0.length] = Number.isNaN(s[0]) ? 0 : s[0];
438439
buffer1[time % buffer1.length] = Number.isNaN(s[1]) ? 0 : s[1];
439440
++time;
440441
}
441442
},
442443
// case 2: // signed bytebeat
443444
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
445+
const sampleRate = extra?.sampleRate || 8000;
444446
for (let i = 0; i < lastSample; ++i) {
445-
const s = fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra);
447+
const s = fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra);
446448
int8[0] = s[0];
447449
buffer0[time % buffer0.length] = int8[0] / 128;
448450
int8[0] = s[1];
@@ -454,27 +456,30 @@
454456
twoChannels: [
455457
// case 0: // bytebeat
456458
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
459+
const sampleRate = extra?.sampleRate || 8000;
457460
for (let i = 0; i < lastSample; ++i) {
458-
buffer0[time % buffer0.length] = (fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra) & 255) / 127 - 1;
459-
buffer1[time % buffer1.length] = (fn1.call(ctx1, (time) / divisor, undefined, stack1, ctx1, extra) & 255) / 127 - 1;
461+
buffer0[time % buffer0.length] = (fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra) & 255) / 127 - 1;
462+
buffer1[time % buffer1.length] = (fn1.call(ctx1, (time) / divisor, sampleRate, stack1, ctx1, extra) & 255) / 127 - 1;
460463
++time;
461464
}
462465
},
463466
// case 1: // floatbeat
464467
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
468+
const sampleRate = extra?.sampleRate || 8000;
465469
for (let i = 0; i < lastSample; ++i) {
466-
const s0 = fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra);
470+
const s0 = fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra);
467471
buffer0[time % buffer0.length] = Number.isNaN(s0) ? 0 : s0;
468-
const s1 = fn1.call(ctx1, (time) / divisor, undefined, stack1, ctx1, extra);
472+
const s1 = fn1.call(ctx1, (time) / divisor, sampleRate, stack1, ctx1, extra);
469473
buffer1[time % buffer1.length] = Number.isNaN(s1) ? 0 : s1;
470474
}
471475
},
472476
// case 2: // signed bytebeat
473477
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
478+
const sampleRate = extra?.sampleRate || 8000;
474479
for (let i = 0; i < lastSample; ++i) {
475-
int8[0] = fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra);
480+
int8[0] = fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra);
476481
buffer0[time % buffer0.length] = int8[0] / 128;
477-
int8[0] = fn1.call(ctx1, (time) / divisor, undefined, stack1, ctx1, extra);
482+
int8[0] = fn1.call(ctx1, (time) / divisor, sampleRate, stack1, ctx1, extra);
478483
buffer1[time % buffer1.length] = int8[0] / 128;
479484
++time;
480485
}
@@ -483,23 +488,26 @@
483488
oneChannel: [
484489
// case 0: // bytebeat
485490
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
491+
const sampleRate = extra?.sampleRate || 8000;
486492
for (let i = 0; i < lastSample; ++i) {
487-
buffer0[time % buffer0.length] = (fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra) & 255) / 127 - 1;
493+
buffer0[time % buffer0.length] = (fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra) & 255) / 127 - 1;
488494
++time;
489495
}
490496
},
491497
// case 1: // floatbeat
492498
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
499+
const sampleRate = extra?.sampleRate || 8000;
493500
for (let i = 0; i < lastSample; ++i) {
494-
const s = fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra);
501+
const s = fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra);
495502
buffer0[time % buffer0.length] = Number.isNaN(s) ? 0 : s;
496503
++time;
497504
}
498505
},
499506
// case 2: // signed bytebeat
500507
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
508+
const sampleRate = extra?.sampleRate || 8000;
501509
for (let i = 0; i < lastSample; ++i) {
502-
int8[0] = fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra);
510+
int8[0] = fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra);
503511
buffer0[time % buffer0.length] = int8[0] / 128;
504512
++time;
505513
}
@@ -538,8 +546,8 @@
538546
this.expressionType = 0;
539547
this.functions = [
540548
{
541-
f: function(t) {
542-
return Math.sin(t) * 0.1;
549+
f: function() {
550+
return 0;
543551
},
544552
array: false,
545553
},
@@ -577,7 +585,6 @@
577585

578586
setDesiredSampleRate(rate) {
579587
this.desiredSampleRate = rate;
580-
this.extra.sampleRate = rate;
581588
}
582589

583590
getDesiredSampleRate() {
@@ -630,7 +637,7 @@
630637
const buffer0 = this.buffer0;
631638
const buffer1 = (fn0Array || fn1) ? this.buffer1 : buffer0;
632639
const extra = this.extra;
633-
const divisor = 1; //this.expressionType === 3 ? this.getDesiredSampleRate() : 1;
640+
const divisor = this.expressionType === 3 ? this.getDesiredSampleRate() : 1;
634641

635642
const startSrcId = Math.max(this.srcSampleCount, neededSrcStartSampleId);
636643
const numSrcSampleToGenerate = neededSrcEndSampleId - startSrcId;
@@ -694,7 +701,7 @@
694701
}
695702

696703
getSampleForTime(time, context, stack, channel = 0) {
697-
const divisor = 1; //this.expressionType === 3 ? this.getDesiredSampleRate() : 1;
704+
const divisor = this.expressionType === 3 ? this.getDesiredSampleRate() : 1;
698705
let s = 0;
699706
try {
700707
if (this.functions[0].array) {

dist/1.x/ByteBeat.module.js

Lines changed: 26 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* ByteBeat@1.0.8, license MIT */
1+
/* ByteBeat@1.0.9, license MIT */
22
class WrappingStack {
33
constructor(stackSize = 256) {
44
let sp = 0;
@@ -270,7 +270,6 @@ class ByteBeatCompiler {
270270
tiltX: 0,
271271
tiltY: 0,
272272
compass: 0,
273-
sampleRate: 0,
274273
};
275274
}
276275

@@ -417,26 +416,29 @@ class ByteBeatProcessor {
417416
array: [
418417
// case 0: // bytebeat
419418
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
419+
const sampleRate = extra?.sampleRate || 8000;
420420
for (let i = 0; i < lastSample; ++i) {
421-
const s = fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra);
421+
const s = fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra);
422422
buffer0[time % buffer0.length] = (s[0] & 255) / 127 - 1;
423423
buffer1[time % buffer1.length] = (s[1] & 255) / 127 - 1;
424424
++time;
425425
}
426426
},
427427
// case 1: // floatbeat
428428
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
429+
const sampleRate = extra?.sampleRate || 8000;
429430
for (let i = 0; i < lastSample; ++i) {
430-
const s = fn0.call(ctx0, (time / divisor), undefined, stack0, ctx0, extra);
431+
const s = fn0.call(ctx0, (time / divisor), sampleRate, stack0, ctx0, extra);
431432
buffer0[time % buffer0.length] = Number.isNaN(s[0]) ? 0 : s[0];
432433
buffer1[time % buffer1.length] = Number.isNaN(s[1]) ? 0 : s[1];
433434
++time;
434435
}
435436
},
436437
// case 2: // signed bytebeat
437438
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
439+
const sampleRate = extra?.sampleRate || 8000;
438440
for (let i = 0; i < lastSample; ++i) {
439-
const s = fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra);
441+
const s = fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra);
440442
int8[0] = s[0];
441443
buffer0[time % buffer0.length] = int8[0] / 128;
442444
int8[0] = s[1];
@@ -448,27 +450,30 @@ class ByteBeatProcessor {
448450
twoChannels: [
449451
// case 0: // bytebeat
450452
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
453+
const sampleRate = extra?.sampleRate || 8000;
451454
for (let i = 0; i < lastSample; ++i) {
452-
buffer0[time % buffer0.length] = (fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra) & 255) / 127 - 1;
453-
buffer1[time % buffer1.length] = (fn1.call(ctx1, (time) / divisor, undefined, stack1, ctx1, extra) & 255) / 127 - 1;
455+
buffer0[time % buffer0.length] = (fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra) & 255) / 127 - 1;
456+
buffer1[time % buffer1.length] = (fn1.call(ctx1, (time) / divisor, sampleRate, stack1, ctx1, extra) & 255) / 127 - 1;
454457
++time;
455458
}
456459
},
457460
// case 1: // floatbeat
458461
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
462+
const sampleRate = extra?.sampleRate || 8000;
459463
for (let i = 0; i < lastSample; ++i) {
460-
const s0 = fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra);
464+
const s0 = fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra);
461465
buffer0[time % buffer0.length] = Number.isNaN(s0) ? 0 : s0;
462-
const s1 = fn1.call(ctx1, (time) / divisor, undefined, stack1, ctx1, extra);
466+
const s1 = fn1.call(ctx1, (time) / divisor, sampleRate, stack1, ctx1, extra);
463467
buffer1[time % buffer1.length] = Number.isNaN(s1) ? 0 : s1;
464468
}
465469
},
466470
// case 2: // signed bytebeat
467471
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
472+
const sampleRate = extra?.sampleRate || 8000;
468473
for (let i = 0; i < lastSample; ++i) {
469-
int8[0] = fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra);
474+
int8[0] = fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra);
470475
buffer0[time % buffer0.length] = int8[0] / 128;
471-
int8[0] = fn1.call(ctx1, (time) / divisor, undefined, stack1, ctx1, extra);
476+
int8[0] = fn1.call(ctx1, (time) / divisor, sampleRate, stack1, ctx1, extra);
472477
buffer1[time % buffer1.length] = int8[0] / 128;
473478
++time;
474479
}
@@ -477,23 +482,26 @@ class ByteBeatProcessor {
477482
oneChannel: [
478483
// case 0: // bytebeat
479484
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
485+
const sampleRate = extra?.sampleRate || 8000;
480486
for (let i = 0; i < lastSample; ++i) {
481-
buffer0[time % buffer0.length] = (fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra) & 255) / 127 - 1;
487+
buffer0[time % buffer0.length] = (fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra) & 255) / 127 - 1;
482488
++time;
483489
}
484490
},
485491
// case 1: // floatbeat
486492
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
493+
const sampleRate = extra?.sampleRate || 8000;
487494
for (let i = 0; i < lastSample; ++i) {
488-
const s = fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra);
495+
const s = fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra);
489496
buffer0[time % buffer0.length] = Number.isNaN(s) ? 0 : s;
490497
++time;
491498
}
492499
},
493500
// case 2: // signed bytebeat
494501
function(buffer0, buffer1, fn0, fn1, time, divisor, stack0, stack1, ctx0, ctx1, extra, lastSample) {
502+
const sampleRate = extra?.sampleRate || 8000;
495503
for (let i = 0; i < lastSample; ++i) {
496-
int8[0] = fn0.call(ctx0, (time) / divisor, undefined, stack0, ctx0, extra);
504+
int8[0] = fn0.call(ctx0, (time) / divisor, sampleRate, stack0, ctx0, extra);
497505
buffer0[time % buffer0.length] = int8[0] / 128;
498506
++time;
499507
}
@@ -532,8 +540,8 @@ class ByteBeatProcessor {
532540
this.expressionType = 0;
533541
this.functions = [
534542
{
535-
f: function(t) {
536-
return Math.sin(t) * 0.1;
543+
f: function() {
544+
return 0;
537545
},
538546
array: false,
539547
},
@@ -571,7 +579,6 @@ class ByteBeatProcessor {
571579

572580
setDesiredSampleRate(rate) {
573581
this.desiredSampleRate = rate;
574-
this.extra.sampleRate = rate;
575582
}
576583

577584
getDesiredSampleRate() {
@@ -624,7 +631,7 @@ class ByteBeatProcessor {
624631
const buffer0 = this.buffer0;
625632
const buffer1 = (fn0Array || fn1) ? this.buffer1 : buffer0;
626633
const extra = this.extra;
627-
const divisor = 1; //this.expressionType === 3 ? this.getDesiredSampleRate() : 1;
634+
const divisor = this.expressionType === 3 ? this.getDesiredSampleRate() : 1;
628635

629636
const startSrcId = Math.max(this.srcSampleCount, neededSrcStartSampleId);
630637
const numSrcSampleToGenerate = neededSrcEndSampleId - startSrcId;
@@ -688,7 +695,7 @@ class ByteBeatProcessor {
688695
}
689696

690697
getSampleForTime(time, context, stack, channel = 0) {
691-
const divisor = 1; //this.expressionType === 3 ? this.getDesiredSampleRate() : 1;
698+
const divisor = this.expressionType === 3 ? this.getDesiredSampleRate() : 1;
692699
let s = 0;
693700
try {
694701
if (this.functions[0].array) {

0 commit comments

Comments
 (0)