-
Notifications
You must be signed in to change notification settings - Fork 9
pyrespeeder
HENDRIX-ZT2 edited this page Sep 10, 2018
·
3 revisions
Remove tape wow and flutter from audio recordings via their spectra. A simple solution for a mean problem.
- Load an audio file
- Adjust the spectrogram settings, choose a tracing algorithm
- In the spectrum, trace sounds that should be of constant pitch with CTRL+LMB/drag
- In the speed chart, move the traces up or down with CTRL+LMB/drag so that overlapping pieces match up. Delete bad traces.
- 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.
- Save your traces so you can go back to them later.
- Adjust the resampling settings to your liking (see notes below for more instructions)
- Press CTRL+R to resample your file according to your traces.
Example of cyclic wow removal:
-
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.
-
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.
- 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.
- Linear: Fast, but causes some overtone artifacts. Use during speed curve development and for quick tests.
- Sinc: Slow, but accurate. No clicks or overtones. 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. [based on endolith (2011) and Hope (2015)]
- Czyzewski et al. (2007). DSP Techniques for Determining "Wow" Distortion. Journal of the Audio Engineering Society. 55.
- endolith (2011). Perfect Sinc Interpolation in Matlab and Python.
- Feaster, P. (2017). The Wow Factor in Audio Restoration.
- Hope, G. (2015). Sinc Interpolation of Signal using Numpy / Python.