Extracting music from XWB files on Linux

I just picked up Shipwreck for $1 on sale and decided I really liked two of the tracks. Like other MonoGame ports, it uses the same XWB-format bundles for music as XNA games on Windows and X-Box do, so you need unxwb to extract them.

Since not everyone is a programmer and unxwb is under the GPL, here’s a copy of the unxwb Zip to which I’ve added a Makefile and both 32-bit and 64-bit x86 binaries built on Ubuntu 12.04 LTS.

Just run it like this and you should get a bunch of audio files dumped into the current working directory.

unxwb -b music.xsb music.xwb

For those who aren’t running Linux, aren’t using an x86-compatible processor, have older system libraries than Ubuntu 12.04 LTS, or don’t trust binaries off random websites, here’s how to build from source on a Debian-family distro:

  1. sudo apt-get install build-essential zlib1g-dev
  2. unzip unxwb-ubuntu12.04-x86_64.zip
  3. cd unxwb
  4. make

If you want to replicate exactly what I provided, make sure you’re building on Ubuntu 12.04.4 LTS for x86_64 and replace that last step with this:

  1. sudo dpkg --add-architecture i386
  2. sudo apt-get update
  3. sudo apt-get upgrade
  4. sudo apt-get install zlib1g-dev:i386 advancecomp
  5. make dist

You can start from either the contents of the original zip or mine. As long as you add my Makefile, make dist should produce the same result.

CC BY-SA 4.0 Extracting music from XWB files on Linux by Stephan Sokolow is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

This entry was posted in Web Wandering & Opinion. Bookmark the permalink.

1 Response to Extracting music from XWB files on Linux

Leave a Reply

Your email address will not be published.

By submitting a comment here you grant this site a perpetual license to reproduce your words and name/web site in attribution under the same terms as the associated post.

All comments are moderated. If your comment is generic enough to apply to any post, it will be assumed to be spam. Borderline comments will have their URL field erased before being approved.