NixOS/nixpkgs — pull request #5431 by chongli (2014-12-22 07:20:33+00:00)
Title: Added Game_Music_Emu, a decoder plugin for mpd.

Added is a library for playing video game music and an option to the mpd package to support it. From the Game_Music_Emu website:

Game_Music_Emu is a collection of video game music file emulators that support the following formats and systems:

AY	ZX Spectrum/Amstrad CPC
GBS	Nintendo Game Boy
GYM	Sega Genesis/Mega Drive
HES	NEC TurboGrafx-16/PC Engine
KSS	MSX Home Computer/other Z80 systems (doesn't support FM sound)
NSF/NSFE	Nintendo NES/Famicom (with VRC 6, Namco 106, and FME-7 sound)
SAP	Atari systems using POKEY sound chip
SPC	Super Nintendo/Super Famicom
VGM/VGZ	Sega Master System/Mark III, Sega Genesis/Mega Drive,BBC Micro

Features:

Can be used in C and C++ code
High emphasis has been placed on making the library very easy to use
One set of common functions work with all emulators the same way
Several code examples, including music player using SDL
Portable code for use on any system with modern or older C++ compilers
Adjustable output sample rate using quality band-limited resampling
Uniform access to text information fields and track timing information
End-of-track fading and automatic look ahead silence detection
Treble/bass and stereo echo for AY/GBS/HES/KSS/NSF/NSFE/SAP/VGM
Tempo can be adjusted and individual voices can be muted while playing
Can read music data from file, memory, or custom reader function/class
Can access track information without having to load into full emulator
M3U track listing support for multi-track formats
Modular design allows elimination of unneeded emulators/features

This library has been used in game music players for Windows, Linux on several architectures, Mac OS, MorphOS, Xbox, PlayStation Portable, GP2X, and Nintendo DS.