Overview | News | Windows | macOS | Android | iOS | Audio Formats | Components | Encoder Pack | Screenshots | Help & Support | Developer | Old Versions | Other Projects | Blog & Rants
SSF/DSF Decoder
By: oops
foo_input_ssf is a decoder component that adds playback support for SSF, DSF, DCSF, miniSSF, miniDSF and miniDCSF files ripped from Sega Saturn and Sega Dreamcast discs to foobar2000.
It is based on foo_input_ht by Christopher Snowhill (kode54).
It uses the Saturn and Dreamcast Sound Emulator Library (Highly_Theoretical) by Neill Corlett and the PSF Parser Library (PSFlib). The Motorola 68000 (Saturn sound CPU) emulator is Musashi by Karl Stenerud which uses the SoftFloat Floating-Point Library by John R. Hauser as its floating-point unit (FPU).
SSF/DSF soundtracks can be distributed as a single ".ssf"/".dsf"/".dcsf" file per song (with a lot of redundant data) or as a set of ".minissf"/".minidsf"/".minidcsf" and ".ssflib"/".dsflib"/".dcsflib" files, where all redundant data is stored together in a single ".ssflib"/".dsflib"/".dcsflib" file and the data unique to each song is stored in the ".minissf"/".minidsf"/".minidcsf" files.
Features
It is based on foo_input_ht by Christopher Snowhill (kode54).
It uses the Saturn and Dreamcast Sound Emulator Library (Highly_Theoretical) by Neill Corlett and the PSF Parser Library (PSFlib). The Motorola 68000 (Saturn sound CPU) emulator is Musashi by Karl Stenerud which uses the SoftFloat Floating-Point Library by John R. Hauser as its floating-point unit (FPU).
SSF/DSF soundtracks can be distributed as a single ".ssf"/".dsf"/".dcsf" file per song (with a lot of redundant data) or as a set of ".minissf"/".minidsf"/".minidcsf" and ".ssflib"/".dsflib"/".dcsflib" files, where all redundant data is stored together in a single ".ssflib"/".dsflib"/".dcsflib" file and the data unique to each song is stored in the ".minissf"/".minidsf"/".minidcsf" files.
Features
- Decodes music files from the Sega Saturn and Sega Dreamcast consoles, ripped to the SSF, DSF, DCSF, miniSSF, miniDSF and miniDCSF formats.
- Recognizes the ".ssf"/".minissf" (Saturn) and ".dsf"/".minidsf" (Dreamcast) extensions, plus the alternate ".dcsf"/".minidcsf" extension for Dreamcast. Handling of the bare ".dsf" extension is controlled by an Enable ".dsf" extension preference (enabled by default) so it can be turned off to leave ".dsf" to a DSD Stream File (DSD audio) decoder, which uses the same extension.
- Supports dark mode for its Preferences page and configuration dialogs.
- The DSP dynamic recompiler is only available in 32-bit x86 (Win32) builds; it emits raw 32-bit x86 machine code. 64-bit x86 and ARM64EC use the DSP interpreter.
- Includes 32-bit and 64-bit x86 component variants as well as ARM64EC.
- Tested on foobar2000 v2.25.10 (x86 64-bit) and Microsoft Windows 11 (Build 26200).
- Requires Windows 10 or later.
Current version: 2.2.0, released on 2026-09-03
Change log:
- Improve Preferences page layout [change]
- Update build recipe [developer]
Supported systems: Windows 32-bit, Windows 64-bit, Windows ARM.
Works with foobar2000 v2.0 and newer.
Works on Windows 10 and newer.
Links
View version history
Documentation
Discussion
More components
Browse all
Browse by author: oops
Tags: decoder, game music, Sega Dreamcast, Sega Saturn