The "syncaudio" or "soundsync" has been there since the beginning, always activated. It just appeared as an option a few versions ago, to be able to avoid the issues described here.
In old versions, previous to the existence of fame delay, the emulation speed was assumed to be perfectly constant, so syncaudio was a good compromise to deal with situations where the speed was slightly (or greatly) off 100%, provided it was a constant value. This tipically happened when running vertical games such as 1942 or galaga on a horizontal monitor. The pitch was lowered as a trade-off.
Now, since the introduction of frame delay, it's become common to have "erratic" speed rates, even if just in a few situations. These speed drops cause annoying pitch variations. If these cases are common, it's a better compromise to dissociate audio from video, and just maybe just cope with an sporadic sample underrun that will probably pass unperceived.
Other sources of these speed fluctuations may be the actual apis used for timing in C++, that might be changing their behaviour over time and provide bad measurements on certain hardware. This would explain some appearently random speed flutuations on otherwise perfectly capable hardware.
For all these reasons I think nowadays it's better to leave syncaudio disabled. You'll just notice crackling when speed can't follow the original like with vertical games on horizontal monitor and progressive modes, that you can bypass by lowering -syncrefresh_tolerance.