Simple. Get the waveform of your audio file (You could screenshot the audio file in a sound editor to do this).
Animate it moving sideways.
Less simple: Bring the audio into your comp. Right click the audio layer and chose Animation Assistant>Convert audio to keyframes
Now use the keyframes to drive the scale, rotation, position etc of some elements of your comp. E.G. you could add a solid and apply this to the scale property:
[value, value*thisComp.layer("Audio Amplitude").effect("Both Channels")("Slider")]
That will multiply the vertical scale of the solid by the amplitude of the audio (both channels).
If you make an array of layers like the one above you can offset the time at which they read the audio level. You can use the
valueAtTime() function to use each solid layer's
index (the layer number) to add a two frame delay to each successive layer like this (two or more frames looks better than one frame, because a one-frame delay makes it look like you used method 1):
[value, value*thisComp.layer("Audio Amplitude").effect("Both Channels")("Slider").valueAtTime(time + index*thisComp.frameDuration)]
Pro tip: easily make a horizontal array of your solid layers by using this on the position property:
[index*width*1.2 - width/2, thisComp.height/2]
that will line up the layers horizontally with a small gap between each one. Remove the
*1.2 bit to align them next to each other. Apply that expression to one layer and just keep duplicating till you've filled your screen.
Here's an example which I've pre-comped with an adjustment layer over the top to give graduated colour to the bars:
also, turn on motion blur, it'll look a lot betterer.