Back at the previous job, I supplied customers with literature, samples, and excellent applications help regarding the use of DCPs (digitally controlled potentiometers). I remembered a zany idea I'd had back then when I saw a recent press release from Microchip about its new series of DCPs (the MCP41HVX1). The parts would work with signal voltages of ±18V and could settle to a new setting in around 5μs — perfect for audio.
My zany idea was this: Use the pot to adjust the level of audio (not especially unique) but do that based on its level (somewhat more unique). The intent here is to make an automatic level control (ALC) or an automatic gain control (AGC), two slight variations on a well-known circuit function.
Normally, this is done in a purely analog function. You monitor the audio level with a circuit that produces a DC voltage proportional to the average level of the audio. A precision full-wave rectifier circuit followed by a simple RC filter will work, though you have to tinker with the time constant to optimize performance. Then, use that control voltage to act upon some sort of a voltage variable gain control cell. That can be done several different ways.
You could use an incandescent lamp or an LED shining on a CdS photocell as a voltage-controlled variable resistor. Or you can use an N-channel JFET similarly. It's fairly linear as long as you keep the drain-to-source voltage quite low. Use either of these as part of an op-amp gain stage. There's the Gilbert cell. There are (or were) a few ICs available that were intended as combination microphone preamps and AGCs.
My plan was to use a small microcontroller (MCU) that had a built-in ADC and SPI port. I'd use the ADC to monitor and digitize the audio. Or if there were bandwidth/processing speed limitations in the MCU, I'd add a similar circuit to that one described above to rectify and filter the audio and then digitize what would be a slowly varying DC voltage. I could probably use a much shorter time constant than in the all analog version. Then, the SPI bus would tell the DCP what setting to go to.
This would eventually become part of some guitar stompbox widget that I was (or perhaps still am) working on. Some advantages of this design: I'm not dependent on a sole manufacturer of an AGC IC. I can tweak the “RC” time constant called out above via software changes as needed — adjusting attack and release time would be very easy.
So, let me know if this would work or not.