How to control a servo with sound level

I want to move the mouth of a skeleton in (near) sync with the volume of an audio file. I have a couple of ideas but want to see if anyone has done this before and find the simplest method.

I could sample the audio across a diode bridge or I could use some already existing device or shield.

The idea is to sample the p-p voltage at some frequency (maybe 20 Khz) and do an A-D conversion, then use the digital value to determine the servo position.

Suggestions? Comments?

when i worked on speakerphones, the rectified signal was averaged to to determine a level. The rectified signal can pass thru a low pass filter (20Hz) and sampled with the ADC (50 Hz). That sample may require some averaging, such as leaky integration (A += (s - A) / R)