Auto-Swell (Musical Dynamics) — User Guide
Dynamic amplitude modulation: applies periodic or envelope-shaped amplitude modulations with stereo spatialization for musical dynamic effects.
What this does
This script implements auto-swell dynamic modulation — applying sophisticated amplitude envelopes and periodic modulations to create musical dynamic effects. The process: (1) Waveform generation: Create modulation signals using 12 different swell shapes, (2) Stereo processing: Apply independent or related modulations to left/right channels, (3) Amplitude modulation: Multiply audio signals by modulation envelopes, (4) Output combination: Create stereo result with spatial dynamic effects. Result: rich, evolving amplitude modulations that can simulate tremolo, auto-pan, rhythmic gating, and complex dynamic textures.
Key Features:
- 12 Swell Shapes — From smooth sine to complex random walk
- 4 Stereo Modes — Mono, phase offset, polyrhythmic, contrasting textures
- Precise Control — Rate, depth, phase, and shape parameters
- Musical Dynamics — Natural-sounding amplitude modulations
- Stereo Spatialization — Creates movement and width
- Flexible Applications — From subtle tremolo to extreme effects
Technical Implementation: (1) Input handling: Convert mono to stereo, extract separate channels. (2) Modulation generation: Create LFO signals using mathematical formulas for each shape. (3) Stereo processing: Generate left/right modulations based on selected mode. (4) Amplitude application: Multiply audio signals by modulation envelopes. (5) Output combination: Recombine channels, normalize, and rename. Key insight: Mathematical waveforms × stereo configurations × amplitude scaling = rich dynamic modulations.
Quick start
- In Praat, select exactly one Sound object (mono or stereo).
- Run script… →
auto_swell.praat. - Choose swell shape: Sine wave for tremolo, Square for gating, etc.
- Set swell rate (0.1-10 Hz typical, lower = slower swells).
- Adjust depth (0-100%, how much modulation applies).
- Choose stereo mode for spatial effects.
- Click OK — processes audio, creates "originalname_autoswelled_stereo".
Dynamic Modulation Theory
Amplitude Modulation Fundamentals
Basic Concepts
Mathematical foundation:
Musical Dynamic Ranges
Practical depth settings:
Temporal Characteristics
Rate and Musical Tempo
Rate to musical timing conversion:
Phase Starting Points
Musical impact of phase initialization:
Stereo Spatialization
Panning and Width Effects
Creating spatial movement:
Complete Processing Pipeline
Swell Shapes
Standard Waveforms
1. Sine wave (smooth)
Shape: ▄▅▆▇█▇▆▅▄ Smooth sinusoidal curve
Formula: 0.5 + 0.5 × sin(2π × rate × t)
Character: Natural, musical, classic tremolo
Best for: General purpose, vocal tremolo, string vibrato simulation
2. Triangle wave (linear)
Shape: ▁▂▃▄▅▆▇█▇▆▅▄▃▂▁ Linear ramps up and down
Formula: Triangle function with 0-1 range
Character: Clean, synthetic, even sweeps
Best for: Synthetic sounds, sci-fi effects, even dynamics
3. Sawtooth (rise, instant drop)
Shape: ▁▂▃▄▅▆▇█▁▂▃▄▅▆▇█ Gradual rise, instant reset
Formula: (rate × t) mod 1
Character: Forward-moving, building tension
Best for: Rhythmic builds, scanner effects, tension creation
4. Reverse sawtooth (instant rise, fall)
Shape: █▇▆▅▄▃▂▁█▇▆▅▄▃▂▁ Instant attack, gradual decay
Formula: 1 - ((rate × t) mod 1)
Character: Percussive, decaying, reversed
Best for: Reverse effects, percussive sweeps, impact tails
5. Square wave (hard gate)
Shape: ████▁▁▁▁████▁▁▁▁ Instant on/off transitions
Formula: 1 if (rate × t mod 1) < 0.5 else 0
Character: Rhythmic, choppy, trance-like
Best for: Trance gates, rhythmic chopping, on/off effects
Complex Envelopes
6. Exponential rise
Shape: ▁▂▃▄▅▆▇█ Exponential curve up
Formula: 1 - exp(-6 × (rate × t mod 1))
Character: Natural attack, building intensity
Best for: Crescendos, swells, intensity builds
7. Exponential fall
Shape: █▇▆▅▄▃▂▁ Exponential decay down
Formula: exp(-6 × (rate × t mod 1))
Character: Natural decay, release tail
Best for: Decays, releases, echo tails
8. S-curve (ease in-out)
Shape: ▁▂▃▄▅▆▇█▇▆▅▄▃▂▁ Smooth acceleration/deceleration
Formula: Cosine-based ease function
Character: Very smooth, natural, musical
Best for: Vocal phrases, string lines, natural dynamics
9. Double peak (two swells per cycle)
Shape: ▁▂▃▄▅▆▇█▆▅▄▃▂▁▂▃▄▅▆▇█ Two peaks per period
Formula: |sin(4π × rate × t)|
Character: Rhythmic, double-time feel
Best for: Fast rhythms, double-time effects, energetic patterns
Specialized Shapes
10. Random walk (organic chaos)
Shape: ▁▃▂▅▄█▆▂▄▇▅▁ Unpredictable, smooth random
Formula: Smoothed Gaussian random values
Character: Organic, evolving, unpredictable
Best for: Evolving textures, natural sounds, aleatoric music
11. Pulse gate (rhythmic chopping)
Shape: ██▁▁▁▁██▁▁▁▁ Variable width pulses
Formula: 1 if (rate × t mod 1) < pulse_width else 0
Character: Rhythmic, stuttering, precise
Best for: Stutter effects, rhythmic patterns, glitch effects
12. Rise-fall envelope (single arc)
Shape: ▁▂▃▄▅▆▇█▇▆▅▄▃▂▁ Single rise and fall over entire duration
Formula: Exponential rise/fall across full sound
Character: Macro dynamics, overall shape
Best for: Overall dynamics, phrase shaping, macro envelopes
Shape Selection Guide
| Musical Application | Recommended Shapes | Typical Rate | Typical Depth |
|---|---|---|---|
| Vocal tremolo | Sine, S-curve | 5-8 Hz | 20-40% |
| String vibrato | Sine, Triangle | 4-7 Hz | 15-30% |
| Rhythmic gating | Square, Pulse gate | 1-4 Hz | 60-90% |
| Ambient evolution | Random walk, Exponential | 0.1-0.5 Hz | 30-60% |
| Build-up tension | Sawtooth, Exponential rise | 0.5-2 Hz | 50-80% |
| Trance effect | Square, Double peak | 2-4 Hz | 70-95% |
| Natural phrasing | S-curve, Exponential | 0.2-1 Hz | 40-70% |
| Special FX | Reverse sawtooth, Random | 0.5-3 Hz | 80-100% |
Stereo Modes
Mode 1: Same effect both sides (mono)
🎵 Centered Dynamic Effects
Behavior: Identical modulation on left and right channels
Spatial effect: Centered, no movement
Perception: Overall amplitude changes, traditional tremolo
Best for: Mono compatibility, centered instruments, when stereo width already exists
Mode 2: Phase offset (left/right out of phase)
🌀 Rotating Auto-Pan
Behavior: Same shape and rate, but right channel phase-shifted
Spatial effect: Sound appears to rotate between speakers
Phase options: 90° (quadrature), 180° (opposite), custom 0-180°
Best for: Auto-panning, rotating effects, stereo enhancement
Phase Offset Examples
Mode 3: Different rates (polyrhythmic)
🎶 Polyrhythmic Dynamics
Behavior: Same shape, but different rates for left/right
Spatial effect: Complex, evolving patterns as rates interact
Rate relationships: Simple ratios create predictable patterns
Best for: Complex textures, evolving patterns, mathematical music
Rate Ratio Examples
Mode 4: Different shapes (contrasting textures)
🎨 Textural Contrast
Behavior: Different swell shapes on left/right channels
Spatial effect: Contrasting dynamic characters create complexity
Shape combinations: Smooth vs rhythmic, rising vs falling, etc.
Best for: Complex textures, experimental music, sound design
Effective Shape Combinations
| Left Shape | Right Shape | Result Character |
|---|---|---|
| Sine wave | Square wave | Smooth vs rhythmic contrast |
| Sawtooth | Reverse sawtooth | Rising vs falling tension |
| Exponential rise | Exponential fall | Building vs releasing energy |
| Random walk | Sine wave | Chaotic vs ordered interplay |
| Triangle | Double peak | Simple vs complex rhythms |
Parameters & Settings
Core Modulation Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| Swell_shape | optionmenu | Sine wave | Modulation waveform shape |
| Swell_rate_Hz | positive | 0.5 | Modulation frequency in Hz |
| Depth_percent | positive | 80 | Modulation depth (0-100%) |
Stereo Spatialization Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| Stereo_mode | optionmenu | Phase offset | Left/right channel relationship |
| Phase_offset_degrees | positive | 90 | Phase difference for offset mode |
| Right_rate_multiplier | positive | 1.5 | Rate multiplier for different rates mode |
| Right_swell_shape | optionmenu | Triangle wave | Shape for right channel (different shapes mode) |
Advanced Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| Normalize_output | boolean | 1 | Normalize output to prevent volume loss |
| Phase_start | optionmenu | Start at minimum | Initial phase of modulation |
| Pulse_width_percent | positive | 50 | Pulse width for pulse gate shape |
| Random_smoothness | positive | 10 | Smoothing amount for random walk |
Parameter Interactions
Applications
Music Production
Use case: Adding dynamic interest to static sounds
Technique: Apply subtle modulation to pads, strings, vocals
Example: Sine wave tremolo on synth pads for organic movement
Sound Design
Use case: Creating rhythmic and textural effects
Technique: Extreme settings with complex shapes
Example: Random walk on noise for evolving textures
Live Performance
Use case: Auto-accompaniment and dynamic backing
Technique: Pre-programmed modulation patterns
Example: Polyrhythmic patterns for electronic performance
Film Scoring
Use case: Emotional dynamics and tension building
Technique: Slow rates with exponential shapes
Example: Exponential rise for building tension in scenes
Practical Workflow Examples
🎤 Vocal Tremolo Enhancement
Goal: Add natural-sounding vibrato to sustained vocals
Settings:
- Shape: Sine wave
- Rate: 6 Hz (natural vibrato rate)
- Depth: 25% (subtle enhancement)
- Stereo: Same both sides
- Phase: Start at middle
Result: Natural vocal vibrato without artificial sound
🎹 Trance Gate Effect
Goal: Create rhythmic trance gate on synth chords
Settings:
- Shape: Pulse gate
- Rate: 3 Hz (180 BPM feel)
- Depth: 90% (strong effect)
- Pulse width: 30% (short pulses)
- Stereo: Phase offset 90°
Result: Rhythmic gating with auto-pan movement
🎻 String Section Swell
Goal: Create natural phrasing for string ensemble
Settings:
- Shape: S-curve
- Rate: 0.3 Hz (slow phrasing)
- Depth: 60% (musical dynamics)
- Stereo: Different rates (1:0.9)
- Phase: Start at minimum
Result: Natural string section phrasing with stereo width
Advanced Techniques
- Fast + Slow: Apply both fast tremolo and slow swells simultaneously
- Different stereo modes: Process left/right separately with different settings
- Serial processing: Apply auto-swell, then other effects like reverb
- Parallel processing: Mix dry and wet signals for subtle effects
- Automation: Process short segments with different settings for evolving effects
- Extreme rates: 0.01 Hz for very slow evolution, 20+ Hz for tonal effects
- Minimal depth: 5-10% for barely perceptible movement
- Complex ratios: Use irrational numbers for never-repeating patterns
- Contrasting shapes: Combine organic and mechanical shapes
- Phase relationships: Experiment with unusual phase offsets
Troubleshooting Common Issues
Cause: High depth with normalization disabled
Solution: Enable normalize_output or reduce depth
Cause: Hard transitions in square/pulse shapes
Solution: Use smoother shapes or apply gentle fade-in
Cause: Too high rate or inappropriate shape
Solution: Lower rate, choose more natural shape (sine, S-curve)
Cause: Same mode with high depth
Solution: Use phase offset or different rates modes
Cause: Low smoothness setting
Solution: Increase random_smoothness (10-30 typical)