Qmmp - Qt-based multimedia player
This program is an audio-player, written with the help of the Qt library.
Official home page: http://qmmp.ylsoftware.com/
Supported operating systems:
- GNU/Linux
- FreeBSD
- Microsoft Windows
Supported formats:
- MPEG1 layer 2/3
- Ogg Vorbis
- Ogg Opus
- Native FLAC, Ogg FLAC
- Musepack
- WavePack
- tracker modules (mod, s3m, it, xm, etc)
- ADTS AAC
- CD Audio
- WMA, Monkey's Audio (and other formats provided by FFmpeg library)
- PCM WAVE (and other formats provided by libsndfile library)
- midi
- SID
- chiptune formats (AY, GBS, GYM, HES, KSS, NSF, NSFE, SAP, SPC, VGM, VGZ, VTX)
DSP effects:
- BS2B effect
- sample rate converter
- LADSPA effects
- extra stereo
- crossfade
Visual effects:
- projectM visualization
- spectrum analyzer
Output system support:
- OSS4 (FreeBSD)
- ALSA (Linux)
- Pulse Audio
- JACK
- WaveOut (Win32)
- DirectSound (Win32)
Other features:
- XMMS and Winamp 2.x skins support
- alternative user interface based on standard widgets set
- 10-band equalizer
- MP3, Vorbis, AAC, AAC+ streams support
- mms support
- MPRIS (1.0 and 2.0)
- removable device detection (via HAL or UDisks)
- video playback via Mplayer
- lyrics (using lyrics.wikia.com)
- cover art support
- CUE sheet support
- embedded CUE support (for FLAC and WavPack)
- multiple playlists
- automatic charset detection for cue files and ShoutCast metadata
- playlist formats: m3u, pls, xspf
- ReplayGain support
- Last.fm/Libre.fm scrobbler
- CDDB support
- audio converter
- stream browser
- audio formats converter
- external programs execution on track change
- ReplayGain scanner
Requirements:
- Qt >= 4.6
- tar, unzip, bzip2, gzip
- libmad
- libvorbis
- libogg
- libalsa >= 1.0.1
- taglib >= 1.6
- curl >= 7.16
- libmms >= 0.4 (Optional)
- flac >= 1.1.3 (Optional)
- libmpcdec >= 1.2.6 (Optional)
- jackit >= 0.102.5 (Optional)
- libsoxr >= 0.1.0 (Optional)
- libmodplug >= 0.8.4 (Optional)
- libsndfile >= 1.0.17 (Optional)
- wavpack >= 4.41 (Optional)
- pulseaudio >= 0.9.15 (Optional)
- ffmpeg >= 0.9.1 or libav >= 0.8.0 (Optional)
- libcdio >= 0.80 (Optional)
- libcdio-paranoia >= 10.2 (since libcdio 0.90)
- libcddb >= 1.3.1 (Optional)
- faad2 >= 2.6.1 (Optional)
- game-music-emu >= 0.5.5 (Optional)
- opus >= 1.0.2 (Optional)
- opusfile >= 0.2 (Optional)
- libWildMidi >= 0.2.3.4 (Optional)
- libsidplayfp >= 1.0.3 (Optional)
- libbs2b >= 3.0.0 (Optional)
- libprojectM >= 1.2.0 (Optional)
- libenca >= 1.9 (Optional)
- mplayer (Optional)
- cmake >= 2.8.6 (for build only)
Attention! Qmmp build needs lrelease installed. The libqt4-devel package often contains this utility.
Configure:
cmake ./
Build:
make
Installation:
make install
If someone plugin (for example, Jack plugin) doesn't build or doesn't needed you can disable it
by running:
cmake ./ -DUSE_JACK:BOOL=FALSE
Available options:
- USE_CURL, USE_MMS (transports);
- USE_MAD, USE_FLAC, USE_VORBIS, USE_MPC, USE_MODPLUG, USE_SNDFILE, USE_WAVPACK, USE_FFMPEG, USE_AAC, USE_CUE,
USE_MPLAYER, USE_CDA, USE_MIDI, USE_GME, USE_FFMPEG_LEGACY, USE_OPUS (decoders);
- USE_ALSA, USE_OSS, USE_JACK, USE_PULSE, USE_NULL, USE_OSS4, USE_WAVEOUT, UDE_DSOUND (output plugins);
- USE_SOXR, USE_BS2B, USE_LADSPA, USE_CROSSFADE, USE_STEREO (effects);
- USE_ANALYZER, USE_PROJECTM (visualization);
- USE_MPRIS, USE_SCROBBLER, USE_STATICON, USE_NOTIFIER, USE_LYRICS, USE_HAL, USE_HOTKEY, USE_FILEOPS, USE_COVER,
USE_KDENOTIFY, USE_UDISKS2, USE_UDISKS, USE_CONVERTER, USE_RGSCAN, USE_SB, USE_TRACKCHANGE, USE_COPYPASTE,
USE_GNOMEHOTKEY (general plugins);
- USE_QMMP_DIALOG (file dialog);
- USE_ENCA (automatic charset detection);
- USE_SKINNED (standard skinned UI);
- USE_QSUI (simple UI);
- USE_DIR_ASSOC (inode/directory mime type association);
- QMMP_DEFAULT_OUTPUT (default output plugin, example: -DQMMP_DEFAULT_OUTPUT=pulse).
Also you can use ccmake for changing plugins configuration.
By default program will be installed in /usr/local. You can change default path by running:
cmake ./ -DCMAKE_INSTALL_PREFIX=custom_path
OSS3 and UDisks support.
OSS3 and UDisks plugins are deprecated and disabled by default.
To enable them, run 'cmake ./ -DUSE_OSS:BOOL=TRUE' or 'cmake ./ -DUSE_OSS:UDISKS=TRUE' before compilation.
HAL and UDisks2 support.
Most Linux distributions does not include HAL anymore. To disable HAL plugin run following command before compilation:
cmake ./ -DUSE_HAL:BOOL=FALSE
UDisks2 project doesn't have port to FreeBSD, so it's recommended to disable Udisks2 plugin under FreeBSD by the
following command:
cmake ./ -DUSE_UDISKS2:BOOL=FALSE
In some cases, you can use qmake for building and installation.
Configure:
qmake
Build:
make
Installation:
make install INSTALL_ROOT=/usr/local
Executable:
./bin/qmmp
If someone module doesn't build or doesn't needed you can disable it in qmmp.pri file - just comment corresponding
line( symbol '#') or execute qmake with special parameters:
qmake DISABLED_PLUGINS+=JACK_PLUGIN DISABLED_PLUGINS+=OSS_PLUGIN
Attention! By default all plugins are enabled by default.
Changing shared library install path (needed by some 64-bit distributions).
By default, all libraries and plugins will be installed to $(INSTALL PREFIX)/lib. You can change "lib"
to "lib64" by running qmake-qt4 or cmake with special parameter:
qmake-qt4 LIB_DIR=/lib64
or
cmake ./ -DLIB_DIR=lib64
All patches, bug reports, ideas etc. send to forkotov02@hotmail.ru or use bug tracker
https://sourceforge.net/p/qmmp-dev/tickets/