-
Notifications
You must be signed in to change notification settings - Fork 0
Scanning Generator Wrapper Architecture
This is the implementation view of Scanning. For ordinary use, import, and export, start with Scanning Recipes.
Scanning automates an ordinary FWG generator rather than introducing duplicate generator DSP.
For each resolved LFO position, the wrapper converts the Scanning recipe into one ordinary Pot1/Pot2/Pot3 coordinate and then calls the selected base generator's normal Smooth/Crunchy A–D path. Wavetable Type, routing, windows, Table Safety, Phase-Coherent Mode, Morph and downstream render processing therefore remain ordinary FWG stages.
A Scanning recipe is data:
- base generator;
- Pot 1 trajectory;
- Pot 2 trajectory;
- Pot 3 trajectory.
It contains no executable DSP and is variant-agnostic. See Scanning Recipes for the public file format and custom-recipe workflow.
Built-in Scanning entries are curated named recipes using the same trajectory grammar as imported custom recipes. A custom recipe is resolved through the same base-generator implementation as a built-in recipe.
The important invariant is:
same recipe + variant + resolved LFO position + routing + Wavetable Type ⇒ the same ordinary-generator table regardless of whether the state came from a direct/static path or the Scanning runtime.
FWG's regression suite exercises this across the built-in Scanning catalogue.
Scanning LFO Rate spans 0.1–30 Hz. Live audition, animated display and offline deterministic rendering have different workload constraints, but they resolve the same declarative trajectory. Offline rendering is authoritative for exported audio; display frame-rate optimisations do not reduce audio/render precision.
Scanning caches store deterministic intermediate candidates, not history-dependent standby substitutions. Table Safety is resolved in the ordinary ownership path after cache lookup. This prevents earlier preview history, a cancelled render, or support diagnostics from changing an otherwise identical render plan.
Caches are bounded and treated as disposable optimisations.
Imported custom recipes live only in the current page session. Reloading clears the session library. Morph/Explorer JSON embeds any custom recipe definitions it needs so exported work remains portable without requiring the recipient's session library.
When START and END carry different Drawn LFO contours, semantic interpolation uses the exact continuous Morph position rather than rounding it to a 1/512 cache coordinate. Nearby Morph positions inside the old bucket therefore continue to produce changing LFO shapes instead of held states followed by a jump.
The expensive 512-point spectral inverse reconstruction is implemented as a radix-2 inverse FFT of the same Hermitian spectrum. This is an implementation optimisation only: pre-release direct-inverse-DFT versus IFFT equivalence tests produced Float32-identical reconstructed LFO tables and matching representative rendered PCM.
Documentation rule: The executable code is authoritative. This Wiki describes the supported Fractured Wavetable Generator v3.0 contract and workflows.
- Generator Families
- Classic Waveforms
- Classic Split
- Drawn Waveform
- Drawn Wave-Shape Recipes
- Source Taps and Routing
- Wavetable Types
- Modulation and Filter
- Pitch, MIDI, and Pitch Offset
- Source and Result Windows
- Visualisers
- Morph Render Modes
- Morph Curve and Cycle Stepping
- Phase-Coherent Mode
- Loop Safety and Table Safety
- Creating Wavetables
- Creating Samples, Drones, Hits, Transitions, and Multisamples
- MPC Wavetable Mode
- Installing and Auditioning on MPC
- Render and Export Settings
- Auditioning, Curation, and Building a Personal Library
- Saving, Loading, and JSON Sidecars
- Sharing and Cleaning JSON Sidecars
- Randomisation and Seeds
- Keyboard Shortcuts
- Browser Requirements and Performance
- Troubleshooting
- FAQ
- Glossary
- Compatibility and Versioning
- Version 3 Release Notes
- Drawn Mathematical Reference
- Signal Path and Core Concepts
- Meditations on the 512-Sample Core
- Scanning Generator Wrapper Architecture
- Deterministic Randomisation — Technical Reference
- Render Diagnostics and Support
- Proof of Zero Prior-Work Knowledge and Forensic Evidence
- Authenticating and Timestamping FWG Outputs
- License, Provenance, and Outputs