Reverb node as a device with a radial picture of its tail #389

Closed
opened 2026-10-10 16:13:39 +02:00 by meleki · 1 comment
Owner

Wunsch des Users (2026-10-10): der Reverb-Node bekommt wie Compressor, Gain, Chip und Envelope ein eigenes Gerät mit fester Größe. Was sich visuell darstellen lässt, soll es zeigen, gern radial.

Plan:

  • Platte fester Größe, Eingänge links, Ausgang rechts.
  • Runder Schirm: die Quelle in der Mitte, der Nachhall als Ringe nach außen (Radius = Zeit), hell nach Pegel, Farbe nach Damping (Höhen fallen schneller). Pre-delay als Lücke um die Mitte, Ende bei -60 dB.
  • Type als Knöpfe (Room, Hall, Cave, Plate, Custom, Sound), Sound-Auswahl im Gerät.
  • Chromknöpfe für Decay, Damping, Pre-delay und Wet.
Wunsch des Users (2026-10-10): der Reverb-Node bekommt wie Compressor, Gain, Chip und Envelope ein eigenes Gerät mit fester Größe. Was sich visuell darstellen lässt, soll es zeigen, gern radial. Plan: - Platte fester Größe, Eingänge links, Ausgang rechts. - Runder Schirm: die Quelle in der Mitte, der Nachhall als Ringe nach außen (Radius = Zeit), hell nach Pegel, Farbe nach Damping (Höhen fallen schneller). Pre-delay als Lücke um die Mitte, Ende bei -60 dB. - Type als Knöpfe (Room, Hall, Cave, Plate, Custom, Sound), Sound-Auswahl im Gerät. - Chromknöpfe für Decay, Damping, Pre-delay und Wet.
Author
Owner

Erledigt mit e8021b1, Wiki 55cdec9.

Was gebaut ist

  • Reverb-Gerät im Graphen: feste Größe 640 × 280 in blassem Lavendel. Die Eingänge sitzen links, der Ausgang rechts.
  • Runder Schirm: Der weiße Punkt in der Mitte ist der Klang, der Nachhall läuft als Ringe nach außen.
    • Radius = Zeit (Wurzel der Sekunden), auf einer festen Skala bis 10,5 s mit Ringen bei 0,1 bis 10 s. Room ist eine kleine Scheibe, Cave füllt zwei Drittel, die Größen lassen sich also direkt vergleichen.
    • Helligkeit = Pegel, linear in dB bis −60 dB. Dort sitzt ein gestrichelter Ring.
    • Farbe = Höhen: Eisblau, solange die Höhen noch da sind, violett, wenn Damping sie Richtung 500 Hz geschlossen hat. Die Formel ist dieselbe wie bei der Impulsantwort (reverbCutoff, jetzt geteilt).
    • Pre-delay ist die dunkle Lücke um den Punkt, verstreute Punkte stehen für die Reflexionen. Wet blendet den Nachhall gegen den Punkt.
    • Texte: unten „PRE 20 ms“ und „ENDS 2.52 s“, oben „HIGHS 5.5 kHz“.
    • Type Sound: Der Schirm zeichnet die echten Spitzenwerte des gewählten Sounds aus der Bibliothek, bis sie da sind steht „LOADING“.
  • Bedienung: je ein Knopf für Room, Hall, Cave, Plate, Custom und Sound, darunter die Sound-Auswahl, dann die Chromknöpfe Decay, Damping, Pre-delay und Wet. Ziehen ist ein Undo-Schritt.
  • Aufbau: ReverbPanel, ReverbFace, reverbView (reine Regeln), Test-Hook __gm.reverb.panel(nodeId) für Sound-FX- und Instrument-Graph.

Selbst entschieden

  • Ein Knopf, den der Type nicht nutzt, ist blass, dreht aber trotzdem. Er schaltet auf Custom und nimmt die Werte des Types mit, alles in einem Undo-Schritt. Wer das Damping eines Hall dreht, bekommt einen Hall mit diesem Damping.
  • Ein Sound aus der Liste setzt den Type gleich auf Sound, ebenfalls ein Undo-Schritt.
  • NodeParamDrag schreibt jetzt mehrere Werte in einem Zug. Compressor, Chip und Co. nutzen denselben Weg wie vorher.

Tests

Unit reverb-view → 10 neu, grün
e2e 34 (atx)     → ALL PASSED, 133 Checks (1 neu)
Gate (atx)       → CHECK EXIT 0, 287 Dateien, 4393 Tests
  • Neuer e2e-Check: Gerät zwischen den Ports, Decay-Knopf eines Hall dreht von 2,5 auf 3,85 s und schaltet auf Custom mit Damping 0,35 und Pre-delay 0,02, ein Undo stellt den Hall her. Cave-Knopf schaltet um. „blip“ aus der Liste setzt Sound, der Schirm zeichnet den Sound, ein Undo stellt den vorigen Stand her.
  • Gegenprobe: Ignoriert der Schirm das Damping, wird genau der Höhen-Test rot.
  • Bilder angesehen: Room, Hall, Cave, Plate, Custom mit Damping 100 % und 300 ms Pre-delay, Sound. Dabei behoben: die fehlende HIGHS-Angabe und die weggefallene Marke „1s“ (Marken stehen jetzt abwechselnd links und rechts der Achse).

Nicht geprüft:

  • ein verkabelter Reverb-Wert im Browser
  • ein Reverb im Instrument-Graphen
  • CI-Lauf zu e8021b1 (nicht abgewartet)

Nebenbei gesehen, nicht angefasst: In der Wiki-Seite Sounds steht ein × („560 × 414 px“) aus einem früheren Issue, Gitea zeigt dafür die Warnbox zu mehrdeutigen Zeichen.

Erledigt mit e8021b1, Wiki 55cdec9. ## Was gebaut ist - **Reverb-Gerät im Graphen:** feste Größe 640 × 280 in blassem Lavendel. Die Eingänge sitzen links, der Ausgang rechts. - **Runder Schirm:** Der weiße Punkt in der Mitte ist der Klang, der Nachhall läuft als Ringe nach außen. - **Radius = Zeit** (Wurzel der Sekunden), auf einer festen Skala bis 10,5 s mit Ringen bei 0,1 bis 10 s. Room ist eine kleine Scheibe, Cave füllt zwei Drittel, die Größen lassen sich also direkt vergleichen. - **Helligkeit = Pegel**, linear in dB bis −60 dB. Dort sitzt ein gestrichelter Ring. - **Farbe = Höhen:** Eisblau, solange die Höhen noch da sind, violett, wenn Damping sie Richtung 500 Hz geschlossen hat. Die Formel ist dieselbe wie bei der Impulsantwort (`reverbCutoff`, jetzt geteilt). - **Pre-delay** ist die dunkle Lücke um den Punkt, verstreute Punkte stehen für die Reflexionen. **Wet** blendet den Nachhall gegen den Punkt. - Texte: unten „PRE 20 ms“ und „ENDS 2.52 s“, oben „HIGHS 5.5 kHz“. - **Type *Sound*:** Der Schirm zeichnet die echten Spitzenwerte des gewählten Sounds aus der Bibliothek, bis sie da sind steht „LOADING“. - **Bedienung:** je ein Knopf für Room, Hall, Cave, Plate, Custom und Sound, darunter die Sound-Auswahl, dann die Chromknöpfe Decay, Damping, Pre-delay und Wet. Ziehen ist ein Undo-Schritt. - Aufbau: `ReverbPanel`, `ReverbFace`, `reverbView` (reine Regeln), Test-Hook `__gm.reverb.panel(nodeId)` für Sound-FX- und Instrument-Graph. ## Selbst entschieden - **Ein Knopf, den der Type nicht nutzt, ist blass, dreht aber trotzdem.** Er schaltet auf *Custom* und nimmt die Werte des Types mit, alles in einem Undo-Schritt. Wer das Damping eines Hall dreht, bekommt einen Hall mit diesem Damping. - **Ein Sound aus der Liste setzt den Type gleich auf *Sound***, ebenfalls ein Undo-Schritt. - **`NodeParamDrag` schreibt jetzt mehrere Werte in einem Zug.** Compressor, Chip und Co. nutzen denselben Weg wie vorher. ## Tests ``` Unit reverb-view → 10 neu, grün e2e 34 (atx) → ALL PASSED, 133 Checks (1 neu) Gate (atx) → CHECK EXIT 0, 287 Dateien, 4393 Tests ``` - Neuer e2e-Check: Gerät zwischen den Ports, Decay-Knopf eines Hall dreht von 2,5 auf 3,85 s und schaltet auf Custom mit Damping 0,35 und Pre-delay 0,02, ein Undo stellt den Hall her. Cave-Knopf schaltet um. „blip“ aus der Liste setzt *Sound*, der Schirm zeichnet den Sound, ein Undo stellt den vorigen Stand her. - Gegenprobe: Ignoriert der Schirm das Damping, wird genau der Höhen-Test rot. - Bilder angesehen: Room, Hall, Cave, Plate, Custom mit Damping 100 % und 300 ms Pre-delay, Sound. Dabei behoben: die fehlende HIGHS-Angabe und die weggefallene Marke „1s“ (Marken stehen jetzt abwechselnd links und rechts der Achse). **Nicht geprüft:** - ein verkabelter Reverb-Wert im Browser - ein Reverb im Instrument-Graphen - CI-Lauf zu e8021b1 (nicht abgewartet) **Nebenbei gesehen, nicht angefasst:** In der Wiki-Seite *Sounds* steht ein `×` („560 × 414 px“) aus einem früheren Issue, Gitea zeigt dafür die Warnbox zu mehrdeutigen Zeichen.
admin added this to the Development project 2026-10-10 16:47:14 +02:00
admin moved this to Next in Development on 2026-10-10 16:47:31 +02:00
admin moved this to Done in Development on 2026-10-10 16:47:48 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: meleki/feuerwerk#389