|
|
|
@@ -1,9 +1,12 @@ |
|
|
|
import { Source } from "./Source"; |
|
|
|
import { exposedRange, context } from "../audio"; |
|
|
|
import { exposedNumber, exposedRange, context } from "../audio"; |
|
|
|
|
|
|
|
export class IntervalSource extends Source { |
|
|
|
kind = "Interval"; |
|
|
|
|
|
|
|
@exposedNumber("Pitch", 0.25, 4) |
|
|
|
public pitch = 1; |
|
|
|
|
|
|
|
@exposedRange("Interval", 0.25, 30) |
|
|
|
public interval: [number, number] = [1, 5]; |
|
|
|
|
|
|
|
@@ -55,6 +58,7 @@ export class IntervalSource extends Source { |
|
|
|
node.connect(pan); |
|
|
|
pan.connect(this.gain); |
|
|
|
|
|
|
|
node.playbackRate.value = this.pitch; |
|
|
|
node.start(); |
|
|
|
|
|
|
|
node.onended = () => { |
|
|
|
|