Ideas for MellowPlayer 4
Last week I've decided to stop maintaining some of my older projects in order to focus exclusively on MellowPlayer.
I have a series of ideas to improve MellowPlayer and make it more powerful. These ideas are new to me and have not been thought through to the end yet and I am not sure everything is doable. It will take some time before they become a reality and will require a major redesign of the internals of the project.
Feel free to comment here if you have some feedback or some other ideas.
Player and plugins improvements
I want to add more possibilities to player plugins in order to bring the following features:
- search (and play) songs across services
- build cross-service playlists
- full control of the player (seeking, rating,...)
- rely on the operating system's multimedia codecs to play songs
Native player plugins
A native player plugin is a player interface written in QML that use the operating system's audio libraries (via QtMultimedia framework) to play audio.
There could be a native player that play and let you manage your local music collection.
And there could be native dedicated players that use the REST API or native SDK of a web streaming service to retrieve and play songs and allow user to interact with the service (search, add to collection, manage playlists, discover new songs, smart radios,...).
This category of player would bring all the above mentioned features (1, 2, 3 and 4).
Hybrid players plugins
For service where the API does not allow to download and play songs ourself, we could have hybrid players: that is a player interface written mostly in QML/C++ except for the player widget that still be a web view based control.
This category of player would still have issues with proprietary codecs but would bring features 1, 2 and 3.
Web Players plugins
Same plugin API as the one we currently have in MellowPlayer 3. Used for all services that I cannot port to native/hybrid players or that I cannot maintain myself.
This category of player won't bring any new feature, they continue to exist so that we can support old plugins and offer the web interface to user that prefer it that way.
Maybe we would need a unified player that relies on the native and hybrid players to offer a seamless interface to manage and play songs across services, e.g. to build cross platform playlists or search songs across services.
I am not sure if this is the right idea but if we keep the current UI and the idea of dedicated player interface per service then this is the only solution that I can imagine.
I'd like to add some companion apps to e.g. provide remote control of a MellowPlayer instance in your local network. There could be a desktop and some mobile applications (iOS and Android).