-
Notifications
You must be signed in to change notification settings - Fork 0
Music player for game music
License
chrg127/gmplayer
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
GMPLAYER gmplayer is a music player for retro game music. It's a minimal player directed at a more casual audience, and offers the usual features such as playlists, playback speed, fade, MPRIS support and more. SUPPORTED FORMATS The supported formats correspond to GME's supported formats. Here's a comprehensive list: - SPC (SPC700, Super Nintendo Entertainment System) - GYM (Gensis YM2612, Sega Genesis) - NSF (Nintendo Entertainment System) - NSFE (Nintendo Entertainment System) - GBS (Game Boy) - AY (AY-3-8910 chip, used on Amstrad CPC, ZX Spectrum) - KSS (Konami Sound System chip, used in MSX, Sega Master System and Game Gear) - HES (NEC Home Entertainment System i.e. PC Engine/TurboGrafx) - VGM (Video Game Music, generic) - SAP (Slight Atari Player, used on Atari computers) OTHER FEATURES - Playlists, of course. - An MPRIS interface. - A small visualizer. - GUI and console/terminal interfaces. - Very, very small. DEPENDECIES The following libraries have been used for building this player and are required when installing: - Game_Music_Emu (GME): https://bitbucket.org/mpyne/game-music-emu/wiki/Home - Qt5 (base, gui, widgets): https://www.qt.io/ - SDL2: https://www.libsdl.org Assuming you are in a debian-based distribution, Qt5 and SDL2 can be installed with the following command: sudo apt install qtbase5-dev libsdl2-dev For other distributions the specific names of the package may vary. COMPILING AND INSTALLING Once the dependencies above have been installed, the project can simply be built using CMake: cmake . -B build -DCMAKE_BUILD_TYPE=Release make -C build make -C build install # currently may not work The commands should be run under the project's root directory. For cmake: - -B specifies the directory to put the build files - -DCMAKE_BUILD_TYPE=Release specifies to build in release mode - -DCMAKE_CXX_FLAGS="-mwindows" should be added in case you are doing a windows build: it will cause not to spanw a useless cmd window when running the program When running CMake, you can also choose what interface to compile using -DGMP_INTERFACE=[interfacename]. [interfacename] can be: - qt: the default interface. The program will use a full GUI interface that should be fully cross-platform. - console: a more minimal interface, intended for console/terminal/headless interfaces. It probably won't work on non-linux OSes. You can also choose to build with or without MPRIS support by passing -DBUILD_MPRIS=ON or OFF. For make, -C specifies the directory where to find the Makefile. When compilation is completed, the executable should be found inside build/. WINDOWS On Windows, you must install both conan and Qt already. You should install Qt through the online installer. When everything is installed, issue the following commands on the project root: set QT_DIR=/path/to/qt conan install . --output-folder=build --build=missing cd build cmake .. -DGMP_INTERFACE=qt -DBUILD_MPRIS=OFF -DCMAKE_TOOLCHAIN_FILE=conan_toolchain.cmake -DCMAKE_PREFIX_PATH=%QT_DIR% cmake --build . --config Release cmake --install . Where: - /path/to/qt is where your Qt installation is located. Note that it's not enough to specify C:\Qt here; for example, if you've got an installation with Qt 6.6.1 and MSVC 2019, you should specify C:\Qt\6.6.1\msvc2019_64 - conan will install the needed libraries (zlib, sdl, fmt) inside the build/ directory - The CMake command specifies the Qt interface and turns off MPRIS support - The second CMake command specifies to build in Release mode - In the third CMake command you may specify a directory to install to by using --prefix <dir>
About
Music player for game music
Topics
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published