LibSoundIndex
A standalone, embeddable WoW addon library developed to finally give addon authors and players surgical control over in-game audio, bypassing the destructive SetCVar("Sound_EnableSFX", "0") method used for years. It provides an efficient, categorized index of game sound FileDataIDs and a surgical muting API via MuteSoundFile()/UnmuteSoundFile().
Why does this exist?
For years, addons that needed to hide specific noises (like automated gear swappers, transmog managers, macro toolkits, or error-hiding scripts) had to mute the entire game engine for a split second by setting CVars. This meant you lost voice dialogue, environment ambiance, and critical combat sounds just because you changed a trinket or spammed a button!
LibSoundIndex directly targets ONLY the rustling, equipping, UI clicks, and sheathing noises of WoW's audio engine natively so you can silence only what you want, keeping the rest of the game world perfectly intact.
For Players
If an addon you run uses LibSoundIndex, you'll immediately notice smoother audio playback when performing complex macros or automated gear swaps! Better yet, you can also download this as a standalone mod to selectively mute parts of the game via slash commands or simple macros.
- Ever tired of hearing the Fel Reaver sound? Mute it!
- Tired of the Auction House coin noises? Silenced!
- Use the
/lsi listen command in-game to open a live diagnostics window that shows exactly which Sound IDs are playing around you in real time!
For Addon Authors
LibSoundIndex currently tracks upwards of 315,000+ UI constants and 40+ core FileDataID material equip sounds dynamically indexed across Modern Retail, MoP Classic, Classic Era, SoD, and The Burning Crusade (TBC) Anniversary Edition!
- Memory & Loading Optimization: The library ships with version-specific TOC files (
LibSoundIndex_Vanilla.toc, LibSoundIndex_Mainline.toc, etc.). Your users' clients will automatically load only the data relevant to their game version, drastically reducing memory footprint and load times.
You can surgically mute entire classes of noises effortlessly:
local LSI = LibStub("LibSoundIndex-1.0")
-- Need to swap armor silently without losing background music or combat noises?
LSI:MuteForDuration("ALL_EQUIP", 1.0)
-- Just want to suppress plate armor clanking?
LSI:MuteMaterial("PLATE_FOLEY")
-- Just want to suppress annoying chat window scroll noises?
LSI:MuteCategory("CHAT")
👉 See the API Documentation on Github for detailed instructions on embedding the library, querying FileDataIDs, and hooking into the LibStub Callback Handler!
Developed by Bl4ut0