Sound envelop detector and auto-correlation


The idea behind this topic is to measure the frequency of the beats of a mechanical watch (typically : 5,6 or 8 Hz) and to have a plugin if possible. This could make an affordable timing machine to adjust the watch. :astonished:)
I’ve joined a 10 s record just in case…

The steps are the following :

  1. (optional) a notch filter on the 50/60 Hz if the microphone is not so good …this already exists in Audacity !
  2. a rectifier/diode envelop detector :
  • keep the absolute value of the sound
  • then apply a low pass filter to realize the envelop detection of the tics (pulses) of the watch (duration of the pulses is about 5 ms so the frequency should be of the 100 Hz order)
  1. a high pass filter to suppress the continuous component with a very low cutoff frequency (typically a fraction of 1 Hz) to prepare the following step
  2. an autocorrelation of the signal that should allow to detect a local maximum of the curve in the vincinity of 5, 6 or 8 Hz depending on the movement of the watch (the algorithm already exists in the “analyse> spectrum” menu but the time delay range might be adapted to reach 250 ms wathever the sampling frequency ist).

Since I’m not familiar with Nyquist, could someone just propose an enveloppe detector module ? Or even more basically, a rectifier, i.e., just applying the absolute value ? I’ve tried with the console but I can’t obtain a sound return :astonished:( .

Any help welcome,


An audio track rectifier with Nyquist in Audacity_1.3.13-beta is dead easy. Select the [part of the] Audacity audio track you want to rectify, then open “Effect > Nyquist Prompt” and copy the following code into the “Nyquist Prompt” text field:

(s-abs s)

Then click “OK”. A complete “analyze” plugin is of course more work, I will try to help later on [not much time yet].

  • edgar