-
Notifications
You must be signed in to change notification settings - Fork 0
Render and Export Settings
Render/export controls decide how long the file is, which WAV format it uses, and what final cleanup is applied. The complete settings are stored in JSON with the patch.
In Morph they live in the MORPH / EXPORT column. Bulk Random and Bulk Explorer have their own Render / File Settings controls so a search workspace can keep render/export policy separate from Morph.
For discrete wavetable-frame work, start with Creating Wavetables. For ordinary audio, see Creating Samples, Drones, Hits, Transitions, and Multisamples.
Render Length is the number of nominal root cycles:
seconds = cycles ÷ Root Frequency
🎹 Use Cycles when oscillator/wavetable geometry matters.
Render Length is direct duration.
🎹 Use Seconds for pads, drones, transitions, effects, and ordinary sample material.
Render Length is the exact total output PCM sample count.
🔧 Use Samples when a destination requires exact file geometry.
Sub-cycle rendering is still valid for clicks, bursts, glitches, and exact-length work. It is simply an edge case rather than an ordinary render assumption.
Longer renders can also become flat or quiet because of very low Root/Nominal Frequency, extreme negative Pitch Offset, low Filter Cutoff, slowly changing phase relationships, restrictive Windows, modulation, attenuation, collapsed states, or deliberately silent patch settings.
Whole File DC Removal subtracts the mean of the rendered fragment. A constant fragment therefore becomes digital silence. A nearly constant fragment followed by Peak Normalisation can have a tiny residual slope or variation amplified dramatically.
When a render is unexpectedly flat or silent, try:
- DC Removal and Normalisation Off;
- a length of at least one complete nominal root cycle;
- a higher Root/Nominal Frequency or Filter Cutoff;
- different Window, modulation, patch, or Morph settings.
- Render Unit: Cycles
- Render Length: 64
- Sample Rate: 44.1 kHz
- Bit Depth: 16-bit PCM
- DC Removal: Per Cycle
- Normalisation: Per Cycle Peak
- Headroom: 0.0 dB
- Cycle-stepped transition: Off
- ZIP downloads: On
Defaults are starting points, not universal recommendations.
Public choices:
- 44.1 kHz
- 48 kHz
- 88.2 kHz
- 96 kHz
- 176.4 kHz
- 192 kHz
WAV output sample rate affects output PCM sample count, file size, output PCM samples per nominal root cycle, aliasing under extreme FM/Pitch Offset, and CPU/RAM load.
Typed/imported values are internally bounded more broadly, but the public choices are the supported everyday path.
- 8-bit PCM
- 12-bit PCM stored in a 16-bit WAV
- 16-bit PCM
- 24-bit PCM
- 32-bit PCM
Bit depth changes amplitude quantisation/noise floor and file size. It does not set pitch or duration.
- Off
- Whole File
- Per Cycle
Whole File removes the average across the complete render.
Per Cycle uses nominal-root-cycle blocks. In detuned/FM material that can change beating, offsets, or cross-cycle movement.
- Off
- Whole File Peak
- Per Cycle Peak
Per Cycle can make every nominal-root-cycle block approach the same peak, which may alter natural dynamics or beating.
Crossfade branches are cleaned before the fade so Per Cycle Peak does not erase the fade curve itself.
🔧 Final DC Removal/Normalisation is not the only centring or level operation in every Morph algorithm.
Current one-oscillator Wavetable modes centre and peak-normalise intermediate tables. Current Spectral / FFT modes centre and peak-normalise anchors before analysis and reconstructed tables after synthesis. Comb, Warm, and Softened paths may finalise more than once.
Therefore:
- DC Removal: Off does not guarantee that a Wavetable/Spectral Morph preserves raw endpoint DC;
- Normalisation: Off does not guarantee raw endpoint/intermediate peak relationships;
- final cleanup can add processing but cannot restore information already discarded earlier.
Crossfade modes are less affected because complete endpoint branches remain separate. Phase-Aligned Crossfade uses centred copies only for alignment analysis.
Headroom is the target peak used by final normalisation. When Normalisation is Off, Headroom is disabled because it cannot affect rendered audio; the stored value is preserved and returns when normalisation is enabled again.
The range is −60 to 0 dB. Fresh default is 0.0 dB. The control shows one decimal place because stored precision is 0.1 dB.
Synced Morph, Bulk Random, and Explorer Transition / Cleanup controls follow global Normalisation. A detached workspace follows its own local state and retains its own Headroom value.
🔧 Morph, Bulk Random, and Explorer capture one per-file render/export job before rendering. WAV metadata and the JSON sidecar are built from that captured result rather than rereading mutable live controls afterward.
The implementation objects are not the public contract. The contract is simpler: a WAV and its matching JSON describe the same captured result.
Morph and batch exports create a mono WAV plus matching JSON sidecar. There is no ordinary WAV-only switch.
FWG keeps batch output together with a small STORE-only ZIP writer:
- no in-archive DEFLATE;
- no ZIP64;
- files are generated in browser memory before download.
Export naming has the same layout across Morph, Bulk, and Explorer but is scoped independently. Editing one workspace does not rename another workspace's next export.
Automatic preview tokens are the tokens used by the next export and rotate after successful automatic-name exports.
🔧 A WAV and its JSON sidecar share the artifact pair's captured created_utc, so their ZIP entries reflect when the pair was created rather than final ZIP-build time. Explorer recipe and format.json entries receive their own creation times.
FWG writes ordinary DOS date/time fields for compatibility and an extended Unix modification timestamp for whole-second precision. Archive viewers may choose which field to display.
🔧 FWG rejects unsafe jobs before large allocation. v3.0 limits one render to 24,000,000 output PCM samples and 768 MiB projected working memory; ZIP batches are limited to 512 MiB retained payload and 1 GiB projected peak memory. These are conservative browser-safety policies.
Entered names are reduced to portable ASCII using A-Z a-z 0-9 space - _ .; unsupported runs become separators, reserved names are rewritten, and generated suffixes/extensions are preserved. User stems/folders are limited to 96 bytes, final components to 128 bytes, and complete ZIP entry paths to 240 bytes.
PCM export is deterministic and undithered, including 8- and 12-bit modes.
🔧 The compact UI labels Sample Rate, Samples per Cycle, Samples, and Cycles remain conventional. In explanatory prose:
- Sample Rate = WAV output sample rate;
- Samples per Cycle = output PCM samples per nominal root cycle;
- Samples = total output PCM samples when discussing render length;
- Cycles = nominal root cycles unless MPC single cycles are explicitly named.
These quantities are separate from FWG's fixed 512-internal-cycle-sample table domain.
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