Neuer Node Mix im Sound-FX-Graph: zwei Audio-Eingänge a und b und ein Zahleneingang mix (0 bis 1). Bei 0 hört man nur a, bei 1 nur b, dazwischen anteilig. mix soll wie die anderen Zahlen auch von einem Parameter des Input-Nodes kommen können.
Was sich dafür ändern muss:
Heute ist ein Sound FX eine Kette: jeder Eingang nimmt eine Kante, der Compiler macht daraus eine Linie von Stufen. Mit Mix verzweigt sich der Graph (Input → zwei Wege → Mix), der Compiler muss also einen Baum statt einer Linie liefern und der Player ihn als Web-Audio-Graph aufbauen (zwei Gain-Knoten mit 1 - mix und mix, dann zusammen).
Pitch ist ein Sonderfall: er ist die Abspielgeschwindigkeit der Quelle und gilt deshalb für den ganzen Sound. Ein Pitch nur auf einem der beiden Wege ginge nur mit einer zweiten Quelle. Zu klären: zweite Quelle starten, Pitch auf Zweigen verbieten (mit Hinweis am Node), oder bewusst weiter global lassen.
Ein Node neben der Kette ist heute stumm. Mit Mix gilt weiter: was nicht beim Output ankommt, hört man nicht.
Abgezweigt aus #311.
Neuer Node **Mix** im Sound-FX-Graph: zwei Audio-Eingänge `a` und `b` und ein Zahleneingang `mix` (0 bis 1). Bei 0 hört man nur `a`, bei 1 nur `b`, dazwischen anteilig. `mix` soll wie die anderen Zahlen auch von einem Parameter des Input-Nodes kommen können.
Was sich dafür ändern muss:
- Heute ist ein Sound FX **eine Kette**: jeder Eingang nimmt eine Kante, der Compiler macht daraus eine Linie von Stufen. Mit Mix verzweigt sich der Graph (Input → zwei Wege → Mix), der Compiler muss also einen Baum statt einer Linie liefern und der Player ihn als Web-Audio-Graph aufbauen (zwei Gain-Knoten mit `1 - mix` und `mix`, dann zusammen).
- **Pitch ist ein Sonderfall:** er ist die Abspielgeschwindigkeit der Quelle und gilt deshalb für den ganzen Sound. Ein Pitch nur auf einem der beiden Wege ginge nur mit einer zweiten Quelle. Zu klären: zweite Quelle starten, Pitch auf Zweigen verbieten (mit Hinweis am Node), oder bewusst weiter global lassen.
- Ein Node neben der Kette ist heute stumm. Mit Mix gilt weiter: was nicht beim Output ankommt, hört man nicht.
Umgesetzt in 072537b „Blend two ways of a sound FX with a Mix node #316“.
Was jetzt geht
Neuer Node Mix im Sound-FX-Graph: Audio-Eingänge a und b, dazu der Zahleneingang mix (0 bis 1, Standard 0,5). Bei 0 ist nur a zu hören, bei 1 nur b. mix kann wie jede Zahl von einem Parameter des Input-Nodes kommen und wird auf 0 bis 1 begrenzt.
Verzweigen: Ein Ausgang darf mehrere Kanten haben, der Input kann also zwei Wege starten. Zusammengeführt werden sie nur vom Mix. Ein Mix ohne a oder b zeigt „Nothing comes in“.
Pitch pro Weg geht (die Frage „Pitch ist ein Sonderfall“ aus dem Issue): Seit #312 wird Pitch beim Start als verschobene Kopie gleicher Länge gerechnet. Die Stimme startet je Tonhöhe eine Quelle, alle im selben Moment und gleich lang. Zwei Wege mit gleicher Tonhöhe teilen sich eine Quelle, ein Pitch hinter dem Mix gilt für beide Wege.
Mix genau auf 0 oder 1: Der stumme Weg fällt weg und wird gar nicht berechnet.
Einschränkung: Pitch wird auf den Sound beim Start gerechnet. Ein EQ vor einem Pitch wirkt deshalb so, als käme er danach. Die Beschreibung am Node sagt das.
Tests
soundfx.test.ts 27 Tests (+5), sound-library.test.ts 12 (+2), node-catalog.test.ts 368, alle grün. Typcheck, ESLint und Prettier sauber.
Gegenprobe: Pitch hinter dem Mix nur an a, bzw. b mit 1 - mix gemischt, lässt jeweils den passenden neuen Test fallen.
e2e 34 auf melektaus-atx: ALL PASSED – 29 checks (+1). Der neue Check spielt im echten Browser den Weg Pitch → Gain gemischt mit dem unbearbeiteten Input: zwei Quellen auf 5 und 0 Halbtönen, beide so lang wie der Sound.
Das volle Gate lief vor dem Commit nicht, der CI-Lauf zu 072537b ist noch nicht gelesen.
Nicht geprüft
Gehört habe ich nichts, der Browser im Test ist stumm. Wie der Mix klingt, ist also ungeprüft.
Wiki: Sounds (Tabelle, Absätze zu Wegen und Pitch auf einem Weg), Concepts und Home in 69c1847.
Umgesetzt in `072537b` „Blend two ways of a sound FX with a Mix node #316“.
## Was jetzt geht
- **Neuer Node *Mix*** im Sound-FX-Graph: Audio-Eingänge `a` und `b`, dazu der Zahleneingang `mix` (0 bis 1, Standard 0,5). Bei 0 ist nur `a` zu hören, bei 1 nur `b`. `mix` kann wie jede Zahl von einem Parameter des Input-Nodes kommen und wird auf 0 bis 1 begrenzt.
- **Verzweigen:** Ein Ausgang darf mehrere Kanten haben, der Input kann also zwei Wege starten. Zusammengeführt werden sie nur vom Mix. Ein Mix ohne `a` oder `b` zeigt „Nothing comes in“.
- **Pitch pro Weg** geht (die Frage „Pitch ist ein Sonderfall“ aus dem Issue): Seit #312 wird Pitch beim Start als verschobene Kopie gleicher Länge gerechnet. Die Stimme startet je Tonhöhe eine Quelle, alle im selben Moment und gleich lang. Zwei Wege mit gleicher Tonhöhe teilen sich eine Quelle, ein Pitch hinter dem Mix gilt für beide Wege.
- **Mix genau auf 0 oder 1:** Der stumme Weg fällt weg und wird gar nicht berechnet.
- **Einschränkung:** Pitch wird auf den Sound beim Start gerechnet. Ein EQ vor einem Pitch wirkt deshalb so, als käme er danach. Die Beschreibung am Node sagt das.
## Tests
- `soundfx.test.ts` 27 Tests (+5), `sound-library.test.ts` 12 (+2), `node-catalog.test.ts` 368, alle grün. Typcheck, ESLint und Prettier sauber.
- Gegenprobe: Pitch hinter dem Mix nur an `a`, bzw. `b` mit `1 - mix` gemischt, lässt jeweils den passenden neuen Test fallen.
- e2e 34 auf `melektaus-atx`: `ALL PASSED – 29 checks` (+1). Der neue Check spielt im echten Browser den Weg Pitch → Gain gemischt mit dem unbearbeiteten Input: zwei Quellen auf 5 und 0 Halbtönen, beide so lang wie der Sound.
- Das volle Gate lief vor dem Commit nicht, der CI-Lauf zu `072537b` ist noch nicht gelesen.
## Nicht geprüft
Gehört habe ich nichts, der Browser im Test ist stumm. Wie der Mix klingt, ist also ungeprüft.
Wiki: *Sounds* (Tabelle, Absätze zu Wegen und Pitch auf einem Weg), *Concepts* und *Home* in `69c1847`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Abgezweigt aus #311.
Neuer Node Mix im Sound-FX-Graph: zwei Audio-Eingänge
aundbund ein Zahleneingangmix(0 bis 1). Bei 0 hört man nura, bei 1 nurb, dazwischen anteilig.mixsoll wie die anderen Zahlen auch von einem Parameter des Input-Nodes kommen können.Was sich dafür ändern muss:
1 - mixundmix, dann zusammen).Umgesetzt in
072537b„Blend two ways of a sound FX with a Mix node #316“.Was jetzt geht
aundb, dazu der Zahleneingangmix(0 bis 1, Standard 0,5). Bei 0 ist nurazu hören, bei 1 nurb.mixkann wie jede Zahl von einem Parameter des Input-Nodes kommen und wird auf 0 bis 1 begrenzt.aoderbzeigt „Nothing comes in“.Tests
soundfx.test.ts27 Tests (+5),sound-library.test.ts12 (+2),node-catalog.test.ts368, alle grün. Typcheck, ESLint und Prettier sauber.a, bzw.bmit1 - mixgemischt, lässt jeweils den passenden neuen Test fallen.melektaus-atx:ALL PASSED – 29 checks(+1). Der neue Check spielt im echten Browser den Weg Pitch → Gain gemischt mit dem unbearbeiteten Input: zwei Quellen auf 5 und 0 Halbtönen, beide so lang wie der Sound.072537bist noch nicht gelesen.Nicht geprüft
Gehört habe ich nichts, der Browser im Test ist stumm. Wie der Mix klingt, ist also ungeprüft.
Wiki: Sounds (Tabelle, Absätze zu Wegen und Pitch auf einem Weg), Concepts und Home in
69c1847.