User-Guided Variable-Rate Time-Stretching Via Stiffness Control
User control over variable-rate time-stretching typically requires direct, manual adjustment of the time-dependent stretch rate. For time-stretching with transient preservation, rhythmic warping, rhythmic emphasis modification, or other effects that require additional timing constraints, however, direct manipulation is difficult. For a more user-friendly approach, we present work that allows a user to specify a time-dependent stiffness curve to warp the time axis of a recording, while maintaining other timing constraints, such as a desired overall recording length or musical rhythm quantization (e.g. straight-to-swing), providing a notion of stretchability to sound. To do so, the user-guided stiffness curve and timing constraints are translated into the desired time-dependent stretch rate via a constrained optimization program motivated by a physical spring system. Once the time-dependent stretch rate is computed, appropriately modified variable-rate time-stretch processors are used to process the sound. Initial results are demonstrated using both a phase-vocoder and pitch-synchronous overlap-add processor.