Diablo® III

How to convert DIII's sound files?

100 Dwarf Mage
11375
Posts: 28,079
I'm using Ladik's MPQ Editor to browse through Diablo's MPQs (in read-only mode, I'm not modifying them) and I noticed that most of the sound files are in FSB, SMP, SND or MUS format. Some of the music files are already in Ogg format, which I can use.

Does anyone know of a good program to convert any or all of these formats into something usable like Ogg or MP3? Windows seems to recognise the SND files as "AU Format Sound", but they won't play when opened in Windows Media Player or QuickTime.

I've done a bit of Googling and found FMOD Designer to play the FSB files, but it doesn't seem to have any way of converting them to other formats.

This is a lot easier to do with WoW since it stores all its sounds as Ogg or MP3 in the MPQs.
Edited by Choonster#1700 on 5/20/2012 7:12 AM PDT
Reply Quote
85 Orc Warrior
4215
Posts: 2
I'd very much be interested in this as well. I've done similar research and work with an MPQ editor (read-only) with a desire to convert the 'magic drop' tone into a viable file for when I receive texts on my phone. I've used converters to change the file from its extension into mp3 or wav which still won't play. Any constructive feedback would be appreciated.
Reply Quote
100 Dwarf Mage
11375
Posts: 28,079
I've also tried Watto's Game Extractor, but it seems that can't even open the MPQs, let alone FSBs or anything else. EkszBox-ABX v1.6 doesn't recognise any audio files in the MPQs or FSBs.
Reply Quote
100 Dwarf Mage
11375
Posts: 28,079
Still haven't found anything.
Reply Quote
any progress yet?
Reply Quote
100 Dwarf Mage
11375
Posts: 28,079
06/03/2012 02:48 PMPosted by Pellaeon
any progress yet?

Unfortunately not.
Reply Quote
You'll need a tool called fsbext to extract/convert the audio files from the fsb's to wav files. Use the -A option from the command line, or else it'll output in some weird xbox codec not playable on windows.

http://aluigi.altervista.org/papers.htm#fsbext

Sucks though, they're all named 00023.fsb or whatnot, and I'm going to have to convert all of them then listen to them to find out what they are. Apparently the .snd files are merely shortcuts to the fsb files, so no luck there. (source: http://diablo3dev.com/w/Archives)
Edited by pseudolobstr#1896 on 6/16/2012 5:18 PM PDT
Reply Quote
100 Dwarf Mage
11375
Posts: 28,079
Thanks for that link, it works perfectly.

I'm using this Lua script to convert all my extracted files with fsbext:#!/usr/bin/env lua

-- fsbext recursive conversion script.
-- Uses fsbxt[1] by Luigi Auriemma (aluigi AT autistici DOT org) to recursively convert FSB files to Wav.
--
-- REQUIREMENTS: Lua 5.1 or 5.2 with the appropriate version of LuaFileSystem (LFS) installed.
-- Lua For Windows[2] includes Lua 5.1 and LFS.
-- Many Unix systems will have Lua and LFS available from their package manager.
-- Usage:
-- Command line: lua "path/to/this/script.lua"
-- Executable script: On Unix, use chmod +x on this script to make it into an executable program.
-- The shebang (#!) at the start of the file may need to be changed if Lua is installed in a custom directory.
--
-- [1] http://aluigi.altervista.org/papers.htm#fsbext
-- [2] http://code.google.com/p/luaforwindows/

local FSBEXT = [[C:\Users\MyUser\Downloads\fsbext\fsbext.exe -A ]] -- This is the path to the converter followed by the -A command-line switch and a space.
local BASEDIR = [[G:\DIII MPQs\Sound.mpq]] -- This is the base directory containing the FSB files and/or subdirectories with the FSB files in them.

-----------------
--END OF CONFIG--
-----------------

local DIRSEP = package.config:sub(1, 1)
local unhandled = {}

local lfs = require"lfs"

local function convertFiles(dir)
print("entering drectory:", dir)
lfs.chdir(dir)
for obj in lfs.dir(dir) do
print("new object", obj)
if obj ~= "." and obj ~= ".." then
local attributes = lfs.attributes(obj)
if attributes and attributes.mode == "directory" then
convertFiles(obj)
lfs.chdir("..") -- Change back to our original directory.
elseif attributes and attributes.mode == "file" and obj:sub(-4, -1) == ".fsb" then
os.execute(FSBEXT .. obj)
else
print("Object not handled:", lfs.currentdir(), obj)
table.insert(unhandled, lfs.currentdir() .. DIRSEP .. obj)
end
end
end
end

convertFiles(BASEDIR)

print("--Undhandled--")
for k, v in pairs(unhandled) do
print(v)
end
Edited by Choonster#1700 on 6/17/2012 8:17 AM PDT
Reply Quote
Glad to hear you got it working. I just extracted all the FSB files to a directory then went:

for %a in (*.fsb) do fsbext -a %a

Then spent an hour going through and listening to each sound. Never did find the one I was looking for.
Reply Quote
I would LOVE the Auction House sound when you sell something! Has anyone run accross that sound file? I really want that please if anyone has found it let me know! Thanks!
Reply Quote
Can dBpoweramp convert the formats? http://www.dbpoweramp.com/

You may need to supplement the basic supported formats using their codec central: http://www.dbpoweramp.com/codec-central.htm

personally i have yet to find any format it does not support, nor have i ever found any program that is faster or more user friendly.
Reply Quote
90 Undead Rogue
11095
Posts: 7
Your script worked great for me but the .wav files it puts out are still unplayable. Is there a specific audio player I need to download to make them play?

I tried WMP, WMP Classic with CCCP and it just errors out after getting a successful extract with the script.
Edited by StoweBag#1673 on 3/30/2013 2:17 AM PDT
Reply Quote
Sir, do u know wich file is the "magic drop' ?
Reply Quote
I want to know which one produces the Legendary drop sound. Would be neat to use it for my Blackberry. =P
Reply Quote
05/19/2013 10:46 PMPosted by zeroxxx
I want to know which one produces the Legendary drop sound. Would be neat to use it for my Blackberry. =P


Trying to find this one as well for my SMS sound.

I guess I could just record the sound from my sound card as it happen in-game, but I would prefer to find it.

There is a .snd file called Halo_Legendary, but I don't know how to see what FSB file it links to.
Reply Quote
Your script worked great for me but the .wav files it puts out are still unplayable. Is there a specific audio player I need to download to make them play?

I tried WMP, WMP Classic with CCCP and it just errors out after getting a successful extract with the script.


Hey I was having the same problem and after a little digging I found out that the .wav files it outputs are multi-channel .wav files and my players were not able to play them.

I added this codec to my system and now they play fine in VLC player:

http://www.afterdawn.com/guides/archive/how_to_play_wav_dts_files.cfm

Happy hunting.
Reply Quote
09/09/2012 06:30 PMPosted by NzO
I would LOVE the Auction House sound when you sell something! Has anyone run accross that sound file? I really want that please if anyone has found it let me know! Thanks!


It is in the UI directory of sounds, as well as item drops, but unless my ears doth deceive me, I do not hear the legendary item drop.

I checked the Global, Miscellaneous, Object and UI folders, none of the other options make sense. I think it is in the UI section and I am just missing it because there are similar sounds in that folder.
Reply Quote
I greatly apologize for Necro'ing such an old thread but I really need some help.

I am trying to make a video of Taylor Swift's "I Knew You Were Trouble" with the Female Barbarian's scream. Such as https://www.youtube.com/watch?v=-bayV3wez50

By recording on death I unfortunately get the kill "boom". Maybe someone has or knows where I can get the audio files for the female barbarian death screams.

I am going to make a PvP montage along to the song haha.
Reply Quote

Please report any Code of Conduct violations, including:

Threats of violence. We take these seriously and will alert the proper authorities.

Posts containing personal information about other players. This includes physical addresses, e-mail addresses, phone numbers, and inappropriate photos and/or videos.

Harassing or discriminatory language. This will not be tolerated.

Forums Code of Conduct

Report Post # written by

Reason
Explain (256 characters max)
Submit Cancel

Reported!

[Close]