BARS-to-BWAV Switch

From GameBrew
bars-to-bwav
Switch-logo.png
General
Authorjackz314
TypeHack Utilities
Version2020
LicenseMixed
Last Updated2020/05/20
Links
Download
Website
Source

This code extracts BWAV files in BARS containers and saves them into respective folders (based on their names). You can run it against a single BARS file or multiple BARS files in a folder.

BARS files are usually used as sound containers in newer Nintendo Switch games (e.g. Animal Crossing: New Horizon). They can usually be found in the Sound/Resource folder in the game's extracted ROM.

The extracted BWAV files can then be opened or converted to other more common format elsewhere (vgmstream is recommended), they are essentially a new container for sound data encoded in one of the two ways, either plain 16-bit little endian PCM (usually shorter sound effects), or Nintendo's DSP 4-bit ADPCM (longer ones).

The code is written in C++, should be cross-platform (only tested it on Ubuntu).

User guide

Usage:
bars-to-bwav <bars file or folder containing bars files> [bwav output folder] [--no-overwrite]
or: `bars-to-bwav -h` to bring out this menu.
add `--no-overwrite` flag to prevent from overwriting files with the same names.

Changelog

v0.1.2 2020/07/21

  • Change the build to static link, removes the need for DLLs on target machines (especially MinGW on Windows).

v0.1.1 2020/06/17

  • Use C++17, add Windows (MinGW) support. Now deals with illegal characters in file name and inconsistent file structures.

v0.1 2020/05/20

  • Release for Linux.

External links

Advertising: