I have tried a number of automatic volume control and limiter circuits mostly for regenerative receivers. Here is the circuit that worked best for me:
Since a regenerative receiver has no agc the dynamic range of the audio output is very large. You really have to turn up the volume to hear weak signals. The problem with that is you simply get blasted out of it when some strong impulse noise comes along or when some other strong signal comes along.
The AVC(L) circuit solves that and makes using such a receiver much more comfortable. You can also use the circuit for many other applications such as voice compression for a transmitter (add a low pass filter to the output of the AVCL circuit). Or for an intercom circuit for example.