SoundIntercept is a currently work-in-progress addon that intercepts Addon/Interface sounds, providing the option to either silence them, or to replace them with another.
EDIT: I've learned since the time v0.1 was posted that it is impossible to use an addon to intercept non-addon sounds. That is to say, SoundIntercept can only intercept sounds that are played by another addon, or by the in-game UI, NOT by the game engine.
This was mostly done per-request, but after I thought about it, I figured this addon may have its uses in being flexible.
That being said, its current capabilities are to silence/replace a sound, and to provide a function check for each sound to indicate when/where/etc. this change should be done.
Currently the intercepts are only configurable if you change the Lua code. In the future, I'll likely write a system that lets any user easily add new/modify "Intercepts."
It comes pre-packaged with one "Intercept," which was the request:
Replace the DBM sound "Run Away, Little Girl!" with a Female Dwarf's /flee sound.
This will not replace the sound in Karazhan (where it's actually used in the game).
EDIT: I've learned since the time v0.1 was posted that the zone check for Karazhan isn't needed, as the boss sound isn't played via the API function, and thus not interceptable. I will update the addon to reflect this when I get some time.
Valid replacements can even be placed within the addon's folder and referenced:
Possible Future Features
Interface to allow users to easily specify sounds to intercept
Write the ability to specify a random replacement from a list
Prepackaged dropdown-style (or similar) scripts, similar to how Outfitter has configurable outfit scripts
Sound-tracker: when turned on, prints the path of any sound into the chat frame, allowing you to know what sound to replace.
Ability to pick whether the sound is disabled by the in-game option to disable all sounds, or not
More filtering functionality, such as the ability to check if a sound path contains a string, is in a certain "folder", etc. Also would grant the ability to add checkFuncs to all sounds, so you could, for instance, disable all sounds when you're AFK
Make the pre-packaged list (and all user-entered intercepts) be easily enableable/disableable
Want to help?
I'm always interested in Bug Reports and Feature Requests. I try to keep this addon lightweight and simple, so in some cases I may turn down extensive requests.
Please notify me if you want to silence/intercept a specific sound, and I can add it to the pre-packaged list.