-
Notifications
You must be signed in to change notification settings - Fork 0
Bulk Random
Use Bulk Random when you want FWG to search broadly and render many unrelated candidates. The pool defines the search bias; the seed makes the search repeatable; curation decides what deserves to survive.
Each iteration can create a new START patch, END patch, resolved Morph mode, and output under the selected render/export settings. Bulk Random is a discovery system, not a promise that every file will be useful.
🎹 Start deliberately small:
- Open Bulk Random.
- Set Random Iterations = 5 (the fresh default).
- Under Bulk Random Pools, select Smooth. A curated pool clears mutually exclusive Unrestricted.
- Leave Use each selected preset/pool’s Morph Mode pool selected.
- Leave Directions = Forward only and MPC Wavetable Mode off.
- Press Bulk Export.
- Unpack the ZIP and audition the numbered WAV files. Keep useful WAVs with their matching JSON sidecars.
That is the basic loop:
choose a search space → render a small batch → audition → keep or refine.
Once the selected pool/settings are pointing in a useful direction, move to 10–25 iterations or more. Use New Random Seed when you want a different lottery under the same search settings.
- Set Random Iterations.
- Confirm or replace the visible Seed.
- Select one or more compatible public pools.
- Choose preset/pool Morph selection or one fixed override.
- Choose direction and render settings.
- Optionally enable MPC Wavetable Mode.
- Press Bulk Export.
- Audition the WAVs.
- Keep useful WAV/JSON pairs.
- Load promising sidecars into Morph or Explorer.
See Randomisation and Seeds for seed behaviour.
Clean Classic Waveforms material with Wavetable Type 0 – Input 1. Each endpoint chooses Input 1 from tap A or B and guarantees deliberate primary-generator movement.
🎹 Good for clean oscillator banks, low-risk wavetable sources, and reference material.
Broad but controlled variation with conservative crossfade/phase/FFT movement.
🎹 Good for a high keeper rate, playable synth material, and first curated batches. “Smooth” describes the search profile; it does not guarantee a soft timbre.
Brighter, sharper, more animated coherent material.
🎹 Good for assertive digital sources, brighter scans, and harder transitions that should remain coherent.
Broken, unstable, noisy, digitally damaged, and atonal recipe lanes.
A broad stable pool constrained toward wavetable-oriented waveform states.
🎹 Use it when cyclical/wavetable usefulness matters but you still want a broad Generator Family search.
🔧 Uses the full-range general endpoint generator rather than a curated recipe. Base Generator Chance is browser-persistent, defaults to 80%, and ranges from 0 (Scanning-only) to 100 (base-only). FWG draws the category first, then chooses uniformly within that category.
For Unrestricted/Absurd, the percentage also prefixes that file's deterministic random sound-design namespace. Changing it therefore deliberately selects a different START/END and random Morph-policy lottery for the same seed.
The 21 current manual-only Scanning trajectories remain outside these broad random pools pending further listening/curation.
Unrestricted still observes Table Safety, unsuitable blind-random Morph exclusions, and structural requirements imposed by MPC Mode.
🔧 START and END use the same persistent Base Generator Chance category-first lottery as Unrestricted. They then range across the complete public sound-design domains, including extreme Pitch Offset. Manual-only Scanning trajectories remain excluded unless explicitly curated into the broad pool.
Absurd preserves six equally weighted broad Morph-family lanes. Moving and Fixed START-mod-END lanes choose equally among Phase, Frequency, Pulse Width, Amplitude, and Ring Modulation; Depth is uniform across 1–256; Source Rate is uniform across the seven public rates. This keeps the large START-mod-END matrix from overwhelming the other broad Morph families.
Curve, Cycle-stepped transition, DC Removal, Normalisation, and Headroom remain manual batch settings. Standard finite-file protections, cancellation, encoding, and ordinary Table-Safety fallback remain active.
Each iteration chooses one checked pool.
Unrestricted and Absurd are each mutually exclusive with all other pools. Defensive normalisation resolves any impossible mixed state before planning.
Preset/pool selection lets each file use that pool's Morph policy.
Fixed override uses the chosen Morph Render Mode and fixed FFT Anchor States for every file.
🔧 Random planning does not draw blindly from every concrete combination. Curated pools retain their established restrictions. Classic Waveforms, Edge, Glitch & Noise, and Unrestricted can reach their established Moving Phase-Modulation choices; Smooth and Cycle-coherent do not use START-mod-END. Absurd broadens its START-mod-END lanes to all five modulation families, full Depth, and all Source Rates.
🔧 The checkbox pool is consumed only when preset/pool selection resolves an FFT Morph for:
- Unrestricted;
- Cycle-coherent random;
- Classic Waveforms.
Overrides:
- Smooth uses 2/3 anchors;
- Edge uses 3/5;
- Absurd weights 2/3/5/9 equally for each spectral file;
- Glitch & Noise does not currently use FFT.
Per-file JSON includes random_fft_anchor_pool only when the pool was actually consumed. spectral_states appears only for a spectral Morph mode.
🔧 Bulk Random independently retains these last committed controls across reloads:
- Morph Mode Selection: preset/pool or fixed override;
- selected fixed Morph Render Mode;
- fixed FFT Anchor States;
- random FFT-anchor checkbox pool;
- Curve Mode and Curve Amount;
- Directions.
Selected pools, Random Seed, iteration count, naming, and render progress remain session-owned. Persistence does not alter listening-tested preset definitions.
The watch-while-you-wait display uses FFT Anchors as its compact heading. START-mod-END files use readable Moving/Fixed, modulation-family, Depth, and Source Rate text rather than internal xmod_… identifiers.
🔧 Bulk Random owns a visible seed independent of the other workspaces. A successful batch advances it. Cancellation, validation failure, or render failure retains it for an exact retry.
Bulk Random does not create a separate batch-recipe file. Each numbered result sidecar records the resolved complete patch plus its generation context.
🔧 Render-affecting settings are captured when the batch begins. Controls that would change the active render are locked; later edits apply to the next batch, not halfway through the current ZIP.
Each WAV/JSON pair describes its captured per-file plan rather than rereading live controls after rendering.
🎹 Do not classify every file only as good/bad. A weak conventional wavetable may still be a useful oscillator, pad, drone, riff, hit, transition, bass/noise/glitch layer, granular source, resampling source, or template.
See Auditioning, Curation, and Building a Personal Library.
The final rendered file remains visible in the live readout after a successful batch, including the Random Seed. This is separate from the visible seed field, which advances after successful output. Live-status category labels use trailing colons for readability.
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