Differences from Clementine: Difference between revisions

From Strawberry Music Player Wiki
Jump to navigation Jump to search
(Created page with "Strawberry is a fork of Clementine, it looks and behaves very similar. Beneath the hood there are more changes than immediately seen in the GUI. Also, it does not include all features that Clementine got, but focus on other features instead. == Project goals, focus and advantages == * Active development * Compatible with Qt 5 and 6 * Frequent stable releases * Focus on local music playback * Focus on playback of high resolution audio and without resampling * Focus on c...")
 
No edit summary
(4 intermediate revisions by the same user not shown)
Line 12: Line 12:
* Depend on less libraries and less 3rdparty code
* Depend on less libraries and less 3rdparty code


== Engine ==
== Playpack ==


* Support for multiple backends including Gstreamer and VLC engine
* Support for multiple backends including Gstreamer and VLC engine
Line 24: Line 24:
== Other ==
== Other ==


* SQLite uses FTS5 with unicode61 tokenizer instead of the old FTS3 with a custom tokenizer.
* The collection model has been rewritten.
* New context view with song playing info and album cover
* New context view with song playing info and album cover
* Improved album cover fetching and cover manager with better album covers from Tidal and Deezer
* Improved album cover fetching and cover manager with better album covers from Tidal and Deezer
Line 47: Line 47:
Basically, the more code, the more job it is to maintain a project. Also, to make sure features work it require developers and testers who actually use the features. Some features might have been dropped because we want to rewrite it or do it differently.
Basically, the more code, the more job it is to maintain a project. Also, to make sure features work it require developers and testers who actually use the features. Some features might have been dropped because we want to rewrite it or do it differently.


* CD Ripper - (better options exist such as k3b, also the main focus is a music player, not a cd ripper)
* CD Ripper: Better options exist such as k3b, also the main focus is a music player, not a cd ripper.
* Podcast support (The main focus is music)
* Podcast support: Work was started on integrating it, but due to lack of time, it was never finished.
* Various streaming services and radios (these require each a API token for Strawberry, they require lot of work to test, maintain and make sure they work for each release, an account with each service, also, some of them were broken)
* Various streaming services and radios: These require each a API token for Strawberry, they require lot of work to test, maintain and make sure they work for each release, an account with each service, also, some of them were broken.
* Cloud storage (same as above, also few people use them and the main focus is local music)
* Cloud storage: Same as above, also few people use them and the main focus is local music.
* Spotify (they don't support the SDK for Linux anymore, also Spotify only offer low resolution streaming in MP3 quality which we dont want anyway)
* Spotify: A new Spotify integration based on GStreamer has been made and will be available in the next release on Linux and Windows MSVC.
* Song info, it is replaced by the context which also has lyrics
* Song info: It is replaced by the context which also has lyrics.
* Artist bio, it depended on clementine services, we plan to do our own.
* Artist bio: It depended on clementine services. Work started on a new one, but didn't find a good API with artist biography.
* Visualizations
* Visualizations: We have attempted to add this back, but because of major changes in the Qt framework and a new projectM API, it's has not been resolved yet. Getting projectM to work with Qt has been challenging.
* The extras stuff and background streams (never liked it, few people use it)
* The extras stuff and background streams.
* Network remote (we don't have an android app as of yet)
* Network remote: We don't have an android app. Because of lack of contributors we have currently decided not to add it at this time.
* wii remote control (few people use it, we don't have anyone to maintain the code)
* wii remote control: Few people use it, we don't have anyone to maintain the code.

Revision as of 11:26, 2 July 2024

Strawberry is a fork of Clementine, it looks and behaves very similar. Beneath the hood there are more changes than immediately seen in the GUI. Also, it does not include all features that Clementine got, but focus on other features instead.

Project goals, focus and advantages

  • Active development
  • Compatible with Qt 5 and 6
  • Frequent stable releases
  • Focus on local music playback
  • Focus on playback of high resolution audio and without resampling
  • Focus on code improvements and bugfixes instead of adding more features
  • Adapt faster to newer libraries and API changes
  • Depend on less libraries and less 3rdparty code

Playpack

  • Support for multiple backends including Gstreamer and VLC engine
  • Advanced audio output and device configuration for bit-perfect playback on Linux
  • The GStreamer engine code is different and uses playbin
  • GStreamer engine is changed so that the analyzer does not cause resampling
  • Equalizer elements in the pipeline are not activated unless the equalizer is enabled which fixes problems with resampling
  • Error handling is improved
  • Option to disable volume

Other

  • The collection model has been rewritten.
  • New context view with song playing info and album cover
  • Improved album cover fetching and cover manager with better album covers from Tidal and Deezer
  • Lyrics are retrieved using API's instead of scraping HTML
  • New rewritten scrobbler with caching and support for multiple providers: Last.fm, Libre.fm and ListenBrainz
  • The queue manager is moved into the tab for easier access
  • Improved playlist background image settings for displaying album cover and custom image
  • Option to automatically save album covers to the album directory
  • Streaming support for Subsonic and Tidal
  • Tabbar is improved
  • Organizing music is improved
  • Transcoding music is improved
  • Settings have been reorganized
  • New global shortcuts backend for X11 and Windows
  • Lots of improvements to code and bugfixes

Features missing

Some features found in Clementine have not been included. Some of them, like the internet services and song and artist bio depended on clementine services. Others have not been included to make maintaining the project easier and less time consuming. Basically, the more code, the more job it is to maintain a project. Also, to make sure features work it require developers and testers who actually use the features. Some features might have been dropped because we want to rewrite it or do it differently.

  • CD Ripper: Better options exist such as k3b, also the main focus is a music player, not a cd ripper.
  • Podcast support: Work was started on integrating it, but due to lack of time, it was never finished.
  • Various streaming services and radios: These require each a API token for Strawberry, they require lot of work to test, maintain and make sure they work for each release, an account with each service, also, some of them were broken.
  • Cloud storage: Same as above, also few people use them and the main focus is local music.
  • Spotify: A new Spotify integration based on GStreamer has been made and will be available in the next release on Linux and Windows MSVC.
  • Song info: It is replaced by the context which also has lyrics.
  • Artist bio: It depended on clementine services. Work started on a new one, but didn't find a good API with artist biography.
  • Visualizations: We have attempted to add this back, but because of major changes in the Qt framework and a new projectM API, it's has not been resolved yet. Getting projectM to work with Qt has been challenging.
  • The extras stuff and background streams.
  • Network remote: We don't have an android app. Because of lack of contributors we have currently decided not to add it at this time.
  • wii remote control: Few people use it, we don't have anyone to maintain the code.