Time Polyphony - 8 Channels — User Guide
Creates 8 copies of a Sound object with different time-stretching factors and combines them into an 8-channel output using Phase Vocoder synthesis.
What this does
This Praat script generates complex, multi-layered textures by creating eight independent voices from a single source sound, each subject to a unique time-stretching factor. The Phase Vocoder algorithm is used to perform the time-stretching without altering the original pitch. The eight processed mono voices are then combined into a single 8-channel output sound object.
The core process involves:
- Cloning and Manipulation: Creating a Manipulation object for each of the eight channels from the original Sound.
- Duration Tiers: Creating a DurationTier for each channel and setting a constant Time_scale value across the entire original duration. This value determines the speed of that specific voice.
- Resynthesis: Generating the time-stretched/compressed sound via resynthesis (overlap-add).
- Multi-channel Combination: Iteratively combining the eight resultant mono sounds into a single 8-channel Sound object.
- Scaling: The final output is scaled to a peak of 0.99 to prevent clipping.
Time Scale Interpretation:
The Time_scale value determines the duration of the output for that channel.
- 1.0: Normal speed.
- > 1.0: Slower (time-stretched).
- < 1.0: Faster (time-compressed).
Quick start
- In Praat, select a Sound object.
- Run script… →
Time Polyphony - 8 Channels.praat. - Choose a Preset (e.g., "Slow Motion") or set the eight individual
Time_scalevalues. - Click OK.
- The output object, named
[OriginalName]_polyphony_8ch, appears and plays automatically if thePlay_resultoption is checked.
Presets
The script offers seven predefined presets to quickly generate different sonic textures by setting the eight Time_scale values:
| Preset Name | Channel Time Scales |
|---|---|
| Classic Polyphony | 1.0, 1.15, 0.85, 1.3, 0.7, 1.1, 0.9, 1.2 |
| Slow Motion | 1.5, 1.7, 1.3, 1.6, 1.4, 1.8, 1.2, 1.9 |
| Fast Chaos | 0.5, 0.6, 0.4, 0.7, 0.3, 0.8, 0.2, 0.9 |
| Rhythmic Pulse | 1.0, 0.5, 1.0, 0.5, 1.0, 0.5, 1.0, 0.5 |
| Subtle Variation | 1.0, 1.05, 0.98, 1.02, 0.95, 1.03, 0.97, 1.01 |
| Extreme Stretch | 3.0, 2.5, 3.5, 2.0, 4.0, 2.2, 3.8, 2.7 |
| Glitch Matrix | 0.1, 0.8, 0.3, 1.5, 0.2, 1.2, 0.4, 2.0 |
Parameters (form fields)
| Name (GUI) | Type | Default (Classic Polyphony) | Description |
|---|---|---|---|
| Preset | optionmenu | Classic Polyphony | Selects a predefined set of Time_scale values. |
| Time_scale_1 | real | 1.0 | Time scale factor for Channel 1. |
| Time scale 2 | real | 1.15 | Time scale factor for Channel 2. |
| Time_scale_3 | real | 0.85 | Time scale factor for Channel 3. |
| Time_scale_4 | real | 1.3 | Time scale factor for Channel 4. |
| Time_scale_5 | real | 0.7 | Time scale factor for Channel 5. |
| Time_scale_6 | real | 1.1 | Time scale factor for Channel 6. |
| Time_scale_7 | real | 0.9 | Time scale factor for Channel 7. |
| Time_scale_8 | real | 1.2 | Time scale factor for Channel 8. |
| Play_result | boolean | 1 (checked) | If checked, the resulting sound plays automatically after processing. |
Outputs
- Object name:
[OriginalName]_polyphony_8ch - Type: Sound (8-channel)
- Normalization: Peak-scaled to 0.99
- Requirement: Requires a selected Sound object to run.