This commit is contained in:
2023-11-26 23:06:49 +01:00
parent fc47d598ac
commit 22508acb9f
21 changed files with 243 additions and 232 deletions

View File

@ -38,7 +38,7 @@ export class SoundEvent extends AudibleEvent {
public updateValue<T>(
key: string,
value: T | T[] | SoundParams[] | null
value: T | T[] | SoundParams[] | null,
): this {
if (value == null) return this;
this.values[key] = value;
@ -82,7 +82,7 @@ export class SoundEvent extends AudibleEvent {
a: number,
d: number,
s: number,
r: number
r: number,
) {
self.updateValue("fmattack", a);
self.updateValue("fmdecay", d);
@ -106,7 +106,7 @@ export class SoundEvent extends AudibleEvent {
a: number,
d: number,
s: number,
r: number
r: number,
) {
self.updateValue("attack", a);
self.updateValue("decay", d);
@ -152,7 +152,7 @@ export class SoundEvent extends AudibleEvent {
a: number,
d: number,
s: number,
r: number
r: number,
) {
self.updateValue("lpenv", depth);
self.updateValue("lpattack", a);
@ -198,7 +198,7 @@ export class SoundEvent extends AudibleEvent {
a: number,
d: number,
s: number,
r: number
r: number,
) {
self.updateValue("hpenv", depth);
self.updateValue("hpattack", a);
@ -241,7 +241,7 @@ export class SoundEvent extends AudibleEvent {
a: number,
d: number,
s: number,
r: number
r: number,
) {
self.updateValue("bpenv", depth);
self.updateValue("bpattack", a);
@ -336,7 +336,10 @@ export class SoundEvent extends AudibleEvent {
},
};
constructor(sound: string | string[] | SoundParams, public app: Editor) {
constructor(
sound: string | string[] | SoundParams,
public app: Editor,
) {
super(app);
this.nudge = app.dough_nudge / 100;
@ -367,7 +370,7 @@ export class SoundEvent extends AudibleEvent {
}
private processSound = (
sound: string | string[] | SoundParams | SoundParams[]
sound: string | string[] | SoundParams | SoundParams[],
): SoundParams => {
if (Array.isArray(sound) && typeof sound[0] === "string") {
const s: string[] = [];
@ -438,7 +441,7 @@ export class SoundEvent extends AudibleEvent {
(event.key as number) || "C4",
(event.pitch as number) || 0,
(event.parsedScale as number[]) || event.scale || "MAJOR",
(event.octave as number) || 0
(event.octave as number) || 0,
);
event.note = note;
event.freq = midiToFreq(note);
@ -458,7 +461,7 @@ export class SoundEvent extends AudibleEvent {
public invert = (howMany: number = 0) => {
if (this.values.chord) {
let notes = this.values.chord.map(
(obj: { [key: string]: number }) => obj.note
(obj: { [key: string]: number }) => obj.note,
);
notes = howMany < 0 ? [...notes].reverse() : notes;
for (let i = 0; i < Math.abs(howMany); i++) {
@ -500,7 +503,7 @@ export class SoundEvent extends AudibleEvent {
superdough(
filteredEvent,
this.nudge - this.app.clock.deviation,
filteredEvent.dur
filteredEvent.dur,
);
}
};

View File

@ -29,7 +29,7 @@ export class Player extends AbstractEvent {
input: string | number | Generator<number>,
options: InputOptions,
public app: Editor,
zid: string = ""
zid: string = "",
) {
super(app);
this.options = options;
@ -159,7 +159,7 @@ export class Player extends AbstractEvent {
if (this.areWeThereYet()) {
const event = this.next() as Pitch | Chord | ZRest;
const noteLengthInSeconds = this.app.clock.convertPulseToSecond(
event.duration * 4 * this.app.clock.ppqn
event.duration * 4 * this.app.clock.ppqn,
);
if (event instanceof Pitch) {
const obj = event.getExisting(
@ -169,7 +169,7 @@ export class Player extends AbstractEvent {
"key",
"scale",
"octave",
"parsedScale"
"parsedScale",
) as SoundParams;
if (event.sound) name = event.sound as string;
if (event.soundIndex) obj.n = event.soundIndex as number;
@ -184,14 +184,14 @@ export class Player extends AbstractEvent {
"key",
"scale",
"octave",
"parsedScale"
"parsedScale",
);
}) as SoundParams[];
const add = { dur: noteLengthInSeconds } as SoundParams;
if (name) add.s = name;
let sound = arrayOfObjectsToObjectWithArrays(
pitches,
add
add,
) as SoundParams;
return new SoundEvent(sound, this.app);
} else if (event instanceof ZRest) {
@ -212,7 +212,7 @@ export class Player extends AbstractEvent {
"key",
"scale",
"octave",
"parsedScale"
"parsedScale",
) as MidiParams;
if (event instanceof Pitch) {
if (event.soundIndex) obj.channel = event.soundIndex as number;