To perfectly synchronize a gif with the audio, the actual song has to start (that is, start on a downbeat) immediately when jPlayer hits play. There can't be any preroll silence. This is pretty much the same thing as a DJ syncing beats.
That's probably not a big deal if we go this route, depending on what kind of visuals we would use. If they're abstract, i.e. a Winamp visualizer but good, it probably doesn't matter.
To perfectly synchronize a gif with the audio, the actual song has to start (that is, start on a downbeat) immediately when jPlayer hits play. There can't be any preroll silence. This is pretty much the same thing as a DJ syncing beats.
That's probably not a big deal if we go this route, depending on what kind of visuals we would use. If they're abstract, i.e. a Winamp visualizer but good, it probably doesn't matter.