VGMTrans - a tool to convert proprietary, sequenced videogame music to industry-standard formats
VGMTrans - a tool to convert proprietary, sequenced videogame music to industry-standard formats
[!IMPORTANT] Notice regarding vgmtrans.com
vgmtrans.com is not an official VGMTrans website and is not authorized to represent or speak on behalf of the VGMTrans project. The VGMTrans project does not operate or endorse vgmtrans.com, and does not provide or verify downloads distributed through it.
For official VGMTrans downloads, use the links in the Download section below.
VGMTrans is a cross-platform desktop app for detecting, inspecting, and converting sequenced video game music into standard formats like MIDI, SoundFont2 (SF2), and DLS.
Key features
Audio demo: https://vgmtrans.github.io/audiodemo/
Note: data in screenshot is randomized.
Prebuilt binaries for Windows, macOS, and Linux:
The following formats are supported with varying degrees of accuracy:
Load files by dragging them into the application window or by choosing Scan File from the File menu. The program will scan a
file for contained music files, which when found will appear under the "Detected Music Files" panel.
VGMTrans is able to
unpack portable sound format files (psf) and related formats (psf2, ssf, etc). SNES formats generally must be loaded
from spc or rsn files. Arcade formats are loaded via mame rom set zip files, which are catalogued in mame_roms.json.
The Scanned Files panel lists all files that have been scanned by VGMTrans which yielded detected files.
A scanned file can be removed by selecting it and pressing Delete or Backspace, or by selecting Remove from the File menu or right-click context menu.
When removed, all detected files contained in the scanned file will also be removed.
Selecting files enables actions in the Convert menu and right-click context menu. Double-clicking
a detected file will open it in an Analysis View. Detected Files can be removed by pressing Delete or Backspace, or by selecting Remove from the File menu or right-click context menu.
For some formats, when files representing musical sequences, instruments, and samples are all loaded, VGMTrans may
associate these files together into a Collection. Collections are listed in the Collections panel at the bottom of the
main window. Double-clicking a collection or selecting one and pressing Space Bar, choosing Play / Pause from the Preview menu, or clicking the green Play button
will attempt to play back the sequence using its associated instrument data.
Conversion commands are available from the Convert menu or by right-clicking a collection.
Sometimes VGMTrans cannot properly group detected files into Collections. In this event, the Create collection manually
button at the bottom of the Collection panel can be used. The button opens a dialog to select a set of detected files for
which to create a new Collection.
Double-clicking a detected file opens an interactive Analysis View. The Analysis View provides a visual breakdown of a file's structure as color-coded hexadecimal data. The accompanying File Structure panel on the right of the view provides a hierarchical list of all the elements within the file. Clicking an element, either in the Analysis View or the File Structure panel, highlights it and displays more information about the element in the status bar at the bottom of the main window. When enabled, the "Show Details" toggle button in the top right corner of the File Structure panel will display details for each element directly in the File Structure panel.
To convert files in batch, select multiple files of the same type (denoted by icon) in the Detected Music Files panel, then use the Convert menu or right-click the selection and choose a conversion action. Similarly, Collections can be converted in batch by selecting multiple.
Please refer to BUILDING.md for compilation instructions.
Pull requests are greatly appreciated. Check out our guidelines for contributing effectively.
View more contributors on GitHub.
Licensed under the zlib License. See LICENSE.
This project bundles some third‑party components, each under its own license. You can review every license in the
licenses/ folder of the source tree or, in the compiled app, via About → License.
No open issues yet, or sync has not completed.