Portable Sound Format

The Portable Sound Format (PSF) is an audio file format ripped directly from video games from a variety of video game consoles. The format was originally used for PlayStation video games, but has since been adapted to support other systems.

The PSF format was created by Neill Corlett in 2003, who also wrote the Winamp plug-in Highly Experimental that plays PSF1 and PSF2 files.

Generally, PSF files contain a number of samples and a Music sequencer player program. This takes far less space than an equivalent streamed format of the same music (WAV, MP3) while still sounding exactly like the original track. Background music stored in PSF files can usually be looped forever, as the sequencer handles its own loop points.

Several PSF sub-formats also have a miniPSF/PSFlib capability, wherein data used by multiple tracks is stored only once in an accompanying PSFlib file. Further differences are stored in a miniPSF file, which can be zlib compressed to further increasing storage efficiency.

A PSF2 file is the PlayStation 2 equivalent of a PSF. PSF2 is internally structured as a file system, rather than PSF, which is a single PS executable. PSF's native sample rate is 44,100 Hz, while PSF2's is 48,000 Hz. Rates may vary from 8,000 Hz to 96,000 Hz.

Both PSF and PSF2 files contain a header which specifies the type of video game system the file contains data for, and an optional set of tags at the end which can give detailed information such as game name, artist and length.

PSF sub-formats
PSF initially stood only for "PlayStation Sound Format", but with the addition of the PSF2, SSF (Sega Saturn Sound Format), DSF (Dreamcast Sound Format), USF (Nintendo Ultra 64 Sound Format), QSF (Capcom Q-Sound Format), GSF (Game Boy Advance Sound Format), and 2SF (Nintendo DS Sound Format) sub-formats, the more generic backronym "Portable Sound Format" was developed. As a result, PSF and PSF1 interchangeably refer to PlayStation sound data files.

GSF
GBA Sound Format (GSF) is an emulated Game Boy Advance audio format developed by Caitsith2 and Zoopd. The basic GSF file structure is a sub-format of PSF.

GSF files can be played on the Windows platform using Nullsoft's Winamp and the Highly Advanced plug-in. macOS users can play them using Audio Overload v2.0b7 or later. Linux users can use PlayGSF, or the port of Highly Advanced to Audacious.

The players emulate the files as sound-only Game Boy Advance ROMs, and as such can be processor intensive when compared to mainstream audio formats.

QSF
Capcom Q-Sound Format (QSF) is based upon Portable Sound Format, with a few modifications. Designed to support lower-end consoles, such as the original PlayStation and older PCs, a QSF's data is stored in an uncompressed form.

USF
Nintendo Ultra64 Sound Format (USF) is a file format by Adam Gashlin that contains the sound-generating code from a Nintendo 64 video game. The basic USF file structure is a sub-format of PSF.

USF files can be played back in Winamp and foobar2000 through the use of an appropriate plug-in, such as 64th Note and Game Emu Player, respectively. It requires two files be present in the same directory: the song file (extension ".miniusf") which is quite small (typically less than a kilobyte), and a library file specific to each game (extension ".usflib") which can be somewhat larger (up to several megabytes).

Players and plug-ins

 * Audio Overload Mac/Windows/Linux chiptune player that supports 33 different music formats including PSF1 and PSF2.
 * Audacious Media Player Linux player that supports playback of PSF1 and PSF2 via plug-in.
 * Chipamp - Winamp plug-in bundle compiled by OverClocked ReMix allowing playback of over 40 chiptune and tracker formats
 * UPSE123 - UNIX Playstation Sound Emulator, advanced playstation sound emulator which concentrates on sound correctness. It plays PSF and MiniPSF format files.