3rdparty | ||
cmake | ||
data | ||
dist | ||
ext | ||
src | ||
.gitignore | ||
.travis.yml | ||
Changelog | ||
cmake_uninstall.cmake.in | ||
CMakeLists.txt | ||
COPYING | ||
Dockerfile | ||
README.md |
🍓 Strawberry Music Player
Strawberry is a audio player and music collection organizer. It is a fork of Clementine created in 2013 with a diffrent goal. It's written in C++ and Qt 5. The name is inspired by the band Strawbs.
- Website: http://www.strawbs.org/
- Github: https://github.com/jonaski/strawberry
- Buildbot: http://buildbot.strawbs.net/
- Latest builds: http://builds.strawbs.org/
✔️ Features:
- Play and organize music
- Supports WAV, FLAC, WavPack, DSF, DSDIFF, Ogg Vorbis, Speex, MPC, TrueAudio, AIFF, MP4, MP3 and ASF
- Audio CD playback
- Native desktop notifications
- Playlists in multiple formats
- Advanced output and device options with support for bit perfect playback on Linux
- Edit tags on music files
- Fetch tags from MusicBrainz
- Album cover art from Last.fm, Musicbrainz and Discogs
- Song lyrics from AudD and API Seeds
- Support for multiple backends
- Audio analyzer
- Equalizer
- Transfer music to iPod, iPhone, MTP or mass-storage USB player
- Integrated Tidal and Deezer support
It has so far been tested to work on Linux, OpenBSD, MacOs and Windows.
❗ Requirements
To build Strawberry from source you need the following installed on your system with the additional development packages/headers:
- GLib, GIO and GObject
- POSIX thread (pthread) libraries
- CMake and Make tools
- GCC or clang compiler
- Protobuf library and compiler
- Boost development headers
- Qt 5 with components Core, Gui, Widgets, Concurrent, Network, Sql, Xml, OpenGL, X11Extras and DBus
- SQLite3
- TagLib 1.11.1 or higher
- Chromaprint library
- ALSA library (linux)
- DBus (linux)
- PulseAudio (linux optional)
Either GStreamer, Xine, VLC, Deezer or Phonon engine is required, but only GStreamer is fully implemented so far. You should also install the gstreamer plugins base and good, and optionally bad and ugly.
Deezer streams with full songs are encrypted and only urls for preview streams (MP3) are exposed by the API. Full length songs requires the use of deezers own engine (Deezer SDK) or the dzmedia library (I dont have it). Deezer SDK can be found here: https://build-repo.deezer.com/native_sdk/deezer-native-sdk-v1.2.10.zip
Optional:
- The Qt 5 LastFM library is required for fetching album covers from LastFM.
- libcdio - To enable Audio CD support
- libmtp - MTP support.
- libgpod - iPod Classic support.
🔧 Compiling from source
Get the code:
git clone https://github.com/jonaski/strawberry
Compile and install:
mkdir strawberry-build
cd strawberry-build
cmake ../strawberry
make -j8
sudo make install
(dont change to the source directory, if you created the build directory inside the source directory type: cmake .. instead).