Skip to content

pyrespeeder

HENDRIX-ZT2 edited this page Jul 24, 2019 · 3 revisions

pyrespeeder

Remove tape wow and flutter from audio recordings via their spectra. A simple solution for a mean problem.

Imgur

How to use

  1. Load an audio file
  2. Adjust the spectrogram settings, choose a tracing algorithm
  3. In the spectrum, trace sounds that should be of constant pitch with CTRL+LMB/drag
  4. In the speed chart, move the traces up or down with CTRL+LMB/drag so that overlapping pieces match up. Delete bad traces.
  5. If you are dealing with cyclic wow, you can use sine regression to get more accurate results quickly. Only sample parts of the file (like start and end) with the tracing methods, then select your suspected source medium and perform sine regression over your sampled areas. (Note: this is currently - somewhat counterintuitively - done in spectral view)
  6. Save your traces so you can go back to them later.
  7. Adjust the resampling settings to your liking (see notes below for more instructions)
  8. Press CTRL+R to resample your file according to your traces.

Example of cyclic wow removal: Imgur

Hotkeys

Navigation

  • LMB-Drag: Move the spectral and speed view.

  • Scroll: Zoom in time only.

  • Shift + Scroll: Zoom in frequency only.

  • CTRL + Scroll: Zoom in time and frequency.

  • You can also scroll (but currently not drag) the axes directly.

Functions

  • CTRL + LMB-Drag: In spectral view: runs the current tracing function in the dragged area; In speed view: offsets the currently selected speed curves and changes the amplification of selected sine regression curves.

  • RMB: Single line selection, deselects all previously selected lines.

  • Shift + RMB: Multi line selection, click align again to deselect it.

Tracing Modes

  • Adaptive Center of Gravity [adapted from Czyzewski et al. (2007)]: The trace starts in the given frequency band, which should be relatively narrow and not too low.
  • Peak: Traces the loudest bin. Not really stable for normal music!
  • Freehand Draw: Just draw the speed curve as you see it.
  • Correlation: Tries to correlate the selected spectrum sequentially. Only works well for big FFT sizes. Works best for short sections.
  • Sine Regression: Sample the master speed curve in some points to get the parameters of cyclic wow in these areas, which are then used to extrapolate the sine over the whole duration.

Resampling Modes

  • Linear: Fast, but causes some overtone artifacts and dropouts in the high frequency bands. Use during speed curve development and for quick tests.
  • Sinc: Slow, but accurate. No clicks, dropouts, overtones or aliasing artifacts. About 3-4x slower than Linear, but worth it - use this mode in the end after you have perfected the speed curve. Accurate because of digital sampling theory. The Quality parameter controls the number of input samples that will contribute to each output sample. Perfect sinc sampling would require an infinite number of samples as the sinc function is, albeit quickly approaching zereo, technically infinite. The default value is a good trade-off between high quality and tolerable speed, and should be sufficient for all intents and purposes. [based on endolith (2011) and Hope (2015)]

References