Hi Dan,
I have made a video detailing what I want hope this helps. rotation expression explaination
You could try playing around with this, but it'll get pretty slow if your comp is long:
a = thisComp.layer("Audio Amplitude").effect("Both Channels")("Slider");
constSpeed = 10;
mult = 10;
n = a.numKeys;
if (n > 0 && a.key(1).time < time){
accum = a.key(1).value*(a.key(1).time - inPoint);
for (i = 2; i <= n; i++){
if (a.key(i).time > time) break;
k1 = a.key(i-1);
k2 = a.key(i);
accum += (k1.value + k2.value)*(k2.time - k1.time)/2;
}
accum += (a.value + a.key(i-1).value)*(time - a.key(i-1).time)/2;
}else{
accum = a.value*(time - inPoint);
}
value + accum*mult + constSpeed*(time-inPoint)
Adjust constSpeed to control how fast it rotates with low/no audio and adjust mult to control how much it responds to loud audio.