Last Weeks Activity in Elisa

Elisa is a music player developed by the KDE community that strives to be simple and nice to use. We also recognize that we need a flexible product to account for the different workflows and use-cases of our users.

We focus on a very good integration with the Plasma desktop of the KDE community without compromising the support for other platforms (other Linux desktop environments, Windows and Android).

We are creating a reliable product that is a joy to use and respects our users privacy. As such, we will prefer to support online services where users are in control of their data.

We have released the version 0.1 alpha 2 last week.

Screenshot_20180202_172327
Elisa with Breeze Dark color theme

Now is really a good time to join the Elisa team. Alexander did quite a lot of changes to lower the barrier to entry. He is actively maintaining the community Elisa wiki page. We have plenty of small tasks open in Elisa workboard.

We also welcome other kind of contributions like design, graphics, promo, etc.

The project is trying to stay agile and to give users an easy way to follow our work by supporting distributions channels like binary-factory or the flatpak build of KDE applications. There are also some distributions with ways to build latest code as a package (Arch AUR).

The following things have been integrated in Elisa git repository:

  • Remove duplicated property in AbstractMediaProxyModel by Matthieu Gallien ;
  • Makes AllAlbumsModel use a thread for long operations in order to not block the UI by Matthieu Gallien ;
  • Reorder methods in mediaplaylist by Alexander Stippich ;
  • Fix comment about license of the documentation to match the one in kdoctools by Matthieu Gallien ;
  • Always explain that support for UPnP is currently broken by Matthieu Gallien ;
  • Add missing runtime dependencies to README.packagers by Matthieu Gallien ;
  • Add one missing dependency for packagers by Matthieu Gallien ;
  • Move application menu to own file by Alexander Stippich ;
  • Fix artist name in album view by Alexander Stippich ;
  • Use clearPlayList instead of extra code in qml by Alexander Stippich ;
  • Add dependency to readme and fix link by Alexander Stippich ;
  • Implement a filter view and play buttons for all views by Alexander Stippich ;
  • Remove duplicate MimeType entry in the desktop file by Robert-André Mauchin ;
  • Fixes warnings reported by clazy checker tool by Matthieu Gallien ;
  • Fix installation of elisa qml package for the configuration dialog by Matthieu Gallien ;
  • Small tweak to the qmlpackage for the elisa configuration module by Matthieu Gallien ;
  • Avoid crashing when invoked from dbus without a valid list of files to open by Matthieu Gallien ;
  • Unbreak the ability to configure shortcuts by Matthieu Gallien ;
  • Fix restore of playlist position on start by Matthieu Gallien ;

Elisa has moved to kdereview. The feedback from the different releases has motivated this move in order to be able to (if Elisa is accepted by the KDE community) make regular releases to allow user to give feedback.

Advertisements

Elisa 0.0.81 Released

The Elisa team is happy to announce the second alpha release of the Elisa music player.

When building this release we have worked on our vision for the Elisa music player:

  • Elisa is a music player developed by the KDE community that strives to be simple and nice to use. We also recognize that we need a flexible product to account for the different workflows and use-cases of our users.
  • We focus on a very good integration with the Plasma desktop of the KDE community without compromising the support for other platforms (other Linux desktop environments, Windows and Android).
  • We are creating a reliable product that is a joy to use and respects our
    users privacy. As such, we will prefer to support online services where
    users are in control of their data.

We also want to align with the KDE wide goals that have been chosen by the whole community. Since the last release we updated our community wiki page and cleaned some cruft accumulated from the very early time of the development to lower the barrier for new people willing to join the development.

The user interface was further tuned for a smooth experience. Several issues with dark themes were fixed and the appearance of the buttons and sliders were slightly altered to improve their readability.

Screenshot_20180202_172327
Elisa with Breeze Dark color theme

We also worked on improving the performance with a focus on the Elisa files indexer. We still recommend to use baloo when possible because the experience is better.

We added the possibility to directly open a music track from a file browser in Elisa or by specifying files as command line options. This is the first step to add support for browsing your music directories directly from Elisa.

Support for reading and writing m3u playlist has been added. There is one know issue when opening playlist with track file names including non ascii characters.

Screenshot_20180202_172839

 

Finally, Elisa is know able to show you the metadata of your tracks and extending the set of supported metadata is an ongoing work.

Screenshot_20180202_173256

We hope you will enjoy this release as much as we enjoyed building it.

This version is available from KDE servers.

There are binary packages available from Neon, arch and Fedora Linux distributions. KDE provides automatic builds of flatpak packages for Elisa (it may not be always up to date). You can follow KDE wide documentation (the package name is org.kde.elisa) . A Windows setup is also provided from the Craft and binary-factory teams (binary-factory).

Last Weeks Activity in Elisa

Elisa is a music player designed to be simple and nice to use. It allows to browse music by album, artist or all tracks. You can build and play your own playlist. We aim to build a fluid interface that is easy to use.

Alexander did several changes to ease on boarding for new developers. For example, he renamed files that have difficult to understand names (this project started as a pure UPnP/DLNA client). This is really important if we want to be able to grow the number of developers working on Elisa. Kudos to him.

Alexander is working on a quite big feature. It will add “enqueue” and “replace and play” buttons to all views. Here is a preview of that feature:

Screenshot_20180128_122745
New view header with the extra buttons
Screenshot_20180128_122821
New header of view with filter visible

The new buttons will add all music currently shown by the view. It means that one can directly adds the result of a search. This is a big improvement in productivity.

The following things have been integrated in Elisa git repository:

  • Optimize files indexing by doing more stuff in pure c++ instead of mixing c++ and qml in inefficient ways by Matthieu Gallien
  • use ModelTest from Qt to better test all models by Matthieu Gallien
  • fix import tracks count being wrong when not built with Baloo by Matthieu Gallien
  • add elisaImport executable to perform benchmarks by Matthieu Gallien
  • unbreak qml automatic tests by Matthieu Gallien
  • use qrc url instead of relative path by Alexander Stippich
  • query all metadata and make them available by Alexander Stippich
  • fix keyboard focus problem in GridBrowserDelegate with an automatic qml test by Matthieu Gallien
  • move qml files to subfolder by Alexander Stippich
  • Disable track number for songs that don’t have it by Diego Gangl
  • fix missing argument by Alexander Stippich
  • rename main elisa files by Alexander Stippich
  • Change color of elapsed time in seek/volume bars by Diego Gangl
  • Fix minor typo by Yuri Chornoivan
  • improve the documentation to match the current state by Matthieu Gallien
  • harmonize handling for all content delegates by Alexander Stippich
  • use PropertyAction by Alexander Stippich
  • use real instead of var by Alexander Stippich
  • implement a metadata view for tracks by Alexander Stippich
  • change contrast in player controls by Alexander Stippich
  • replace default background for HeaderBar by a wallpaper from Breeze by Matthieu Gallien
  • introduce GridBrowserView and GridBrowserDelegate for generic grid view by Matthieu Gallien
  • cleanup of src directory by Alexander Stippich

Last Weeks Activity in Elisa

Elisa is a music player designed to be simple and nice to use. It allows to browse music by album, artist or all tracks. You can build and play your own playlist. We aim to build a fluid interface that is easy to use.

We are preparing for the next alpha release when the following features will be done. Alexander is working on a metadata view for tracks. I am working on cleaning the different grid views into a generic one.

Diego Gangl did several modifications of the interface as part of the interactions with KDE VDG.

All in all, Elisa now looks like that:

Screenshot_20180112_174013
Snapshot of album view including the changed application menu

The following things have been integrated in Elisa git repository:

  • Fix modification of files with DatabaseInterface::modifyTracksList by Matthieu Gallien ;
  • This patch increases the blur in the headerbar background, increases contrast
    between background and text, and brings the labels closer together by Diego Gangl ;
  • Tune appearance of all albums and all artists views by Matthieu Gallien ;
  • Fix wrong id reference in FilterBar by Matthieu Gallien ;
  • In all models, calls base class roleNames before adding new role names by Matthieu Gallien ;
  • Simplify the definition of custom roles in all models by Matthieu Gallien ;
  • Allow MusicArtist to be stored in a QVariant by Matthieu Gallien ;
  • Allow to enqueue artist in MediaPlayList by using MusicArtist objects by Matthieu Gallien ;
  • Change height of delegate in GridView by Matthieu Gallien ;
  • Fix a typo in the imported tracks notification by Diego Gangl ;
  • Make shadows centered and slightly larger. Fits better with other shadows in the
    desktop (like dolphin and widgets), and it also aligns with the new shadows for
    breeze (D9549) by Diego Gangl ;
  • Fixes key arrow navigation in list and gridviews and implements enter and return key actions for delegates by Alexander Stippich ;
  • Allow elisa to open any external files, scan them and enqueue them by Matthieu Gallien ;
  • Syncs the windows theme file with the current main theme file. Removes bundled icons for windows which are not needed as proven by ViewSelector.qml, but also tested on windows by Alexander Stippich ;
  • Make the delegates more appealing when using a dark theme also add hover animations while keeping the loader component by Alexander Stippich ;
  • Fix keyboard navigation for album artist view too by Alexander Stippich ;
  • Move all icon and image definitions to theme file and make some consistency fixes. In anticipation of a colorized version of the artist image, there are two definitions which currently hold the same icon. Also enables the display of a default cover in context view by Alexander Stippich ;
  • qml profiler shows a few percent of cpu time spent just for the creation for simple buttons for the delegates. cut this by loading on demand by Alexander Stippich ;
  • Try to find png files for covers if jpegs do not exist can probably be made a lot smarter than this, but kept it simple for now by Alexander Stippich ;
  • Try to fix build (as seen on binary-factory.kde.org) by Matthieu Gallien ;
  • Re-order menu items to fit better with the order used in other KDE applications by Diego Gangl.

 

Last Weeks Activity in Elisa

Elisa is a music player designed to be simple and nice to use. It allows to browse music by album, artist or all tracks. You can build and play your own playlist. We aim to build a fluid interface that is easy to use.

I enjoy working on the elisa music player. I hope some people enjoy using it. All of this would not have been possible without the KDE community. There is an ongoing fundraising campaign. Please support it.

https://www.kde.org/fundraisers/yearend2017/

Not much have been done due to Christmas and end of year holidays.

The following things have been integrated in Elisa git repository:

  • Disable shadows when no artist image is present by Diego Gangl ;
  • Unify track delegate handling by Alexander Stippich ;
  • Fix missing assignment of music listener for MediaArtistAlbumView by Alexander Stippich ;

There are also some pending diff request in phabricator.

We have also some ongoing work to organize work with KDE VDG. Some future changes following their feedback is planned.

I am also driving an effort to more clearly communicate what elisa is about (inspired by the work on KDE goals and plasma vision). I hope to be able to also have a vision for elisa and to derive some goals aligned with those of the KDE community.

Last Weeks Activity in Elisa

Elisa is a music player designed to be simple and nice to use. It allows to browse music by album, artist or all tracks. You can build and play your own playlist. We aim to build a fluid interface that is easy to use.

Alexander has made yet another round of improvements to the UI and especially improved a lot the playlist by making it more fluid. It really feels much better now (at least for me).

I have added the possibility to load or save playlists. It is currently restricted to tracks already known to Elisa. More work is needed to support any audio files.

Screenshot_20171214_212504
Current state of the interface.

The following things have been integrated in Elisa git repository:

  • delete outdated todo list by Alexander Stippich ;
  • fix player being stuck when same track is played in random mode by Matthieu Gallien ;
  • enhance content view navigation by Alexander Stippich:
    • The backspace key is now also accepted for back navigation in e.g. the artist album view ;
    • A mouse area is added to MediaBrowser to allow back navigation with the mouse backbutton ;
    • Focus is forced on the stackview when arist or album is opened. Without this, the back key navigation is only working when it is actively focused by the user, e.g. by a mouse click ;
  • deduplicate code for the content view and adjust visual appearance by Alexander Stippich ;
  • merge MediaPlayList and PlayListControler to reduce size of code by Matthieu Gallien ;
  • make margins consistent and remove horizontal separator in playlist by Alexander Stippich ;
  • show passive notification when a track fail to play by Matthieu Gallien ;
  • remove context menus by Alexander Stippich ;
  • overhaul RatingStar by Alexander Stippich ;
  • add possibility to load and save a playlist at format m3u from two buttons at bottom of playlist by Matthieu Gallien ;
  • fix problems with dependencies and make some optional ones be required. Require all tier1 dependencies if they are also supported on Windows and
    Android by Matthieu Gallien ;
  • more improvements to playlist by Alexander Stippich:
    • Some more improvements to the playlist. First of all, adds more animations and fixes T6295.
    • Fixes some scaling issues and makes Show Current Track also select the item to highlight it better.
    • Converts actions to use signals
  • shorten the play now and replace play list button text by Alexander Stippich;
  • add a readme for packagers following some feedback in #kde-devel by Matthieu Gallien ;

Elisa 0.0.80 Released

The Elisa team is happy to release the first alpha release of a future 0.1 version of the Elisa music player.

Screenshot_20171207_231959

Elisa is a music player designed to be simple and nice to use.

Elisa allows to browse music by album, artist or all tracks. The music is indexed using either a private indexer or an indexer using Baloo. The private one can be configured to scan music on chosen paths. The Baloo one is much faster because Baloo is providing all needed data from its own database. You can build and play your own playlist.

It is available in source form only at https://download.kde.org/unstable/elisa/0.0.80/elisa-0.0.80.tar.xz. KDE also provides regular flatpak and windows builds. The windows builds are provided by binary-factory.kde.org and are using Craft. Thanks to the people in the flatpak and windows teams. A binary package is provided for Fedora thanks to Robert-André Mauchin. Other Linux distributions may provide binary packages from the git repository (as far as I know, there is an AUR package and a package for Neon).

The development is still continuing and we will regularly release an alpha version until we have completed review by other KDE developers. We plan to move to kdereview as soon as we have finished a few missing features.

For the curious reader, the phabricator workboard of Elisa is a good way to know what is happening (https://phabricator.kde.org/project/board/193/).

Any help is very much welcome. We have open tasks for code but also for design.

Last Weeks Activity in Elisa

Elisa is a music player designed to be simple and nice to use.

Elisa project has now an official mailing list hosted by kde (Elisa mailing list). Alexander Stippich is now a regular KDE developer and we felt a list was good to coordinate work on Elisa. I am also very happy, to nine years after I joined KDE, to have the honor to recommend somebody. I still remember how excited I was at that time.

Following blog post from Kevin Funk on binary-factory service (KDE binary factory), Elisa windows installers are regularly built. Thanks a lot to the KDE windows contributors. They do a lot of work to help projects like mine.

2017-11-30 14_28_43-
Snapshot of Elisa on Windows 10

The following things have been integrated in Elisa git repository:

  • Fix the case of albums with same title but different cover images by Matthieu Gallien ;
  • Do not duplicate albums when a track is missing album artist metadata by Matthieu Gallien ;
  • Hopefully fix compilation for neon distribution by Matthieu Gallien ;
  • By default tracks are from disc 1 now: fix some tracks being from disc 0 by Matthieu Gallien ;
  • Fix play list save and restore when exiting and launching the application by Matthieu Gallien ;
  • Rename default license file to match documentation on community KDE wiki by Matthieu Gallien ;
  • Add a reference to a snapshot for Elisa appstream metadata by Matthieu Gallien ;
  • Rename Qml import to org.kde.elisa by Matthieu Gallien ;
  • Give credit to astippich by Matthieu Gallien ;
  • Lower requirement for frameworks except for kdoctools. This is needed to built on binary-factory.kde.org by Matthieu Gallien ;
  • Print a warning if KFileMEtaData version is older than 5.39.0 that can crash when used the way Elisa code is using it by Matthieu Gallien ;
  • Add a test for MediaPlayList persistence by Matthieu Gallien ;
  • Make text vertically aligned to center for NavigationActionBar by Alexander Stippich ;
  • Alexander Stippich changed icons in playlist entry such that :
    • Playing indicator and remove button now share the position. indicator becomes invisible when entry is hovered or selected ;
    • Play button is transformed into a play pause button, allowing pause in the playlist entry. this is also a nice way to indicate the playing status when hovered or selected ;
  • Add automatic tests for MediaPlayList by Matthieu Gallien ;
  • Remove extra rowsInserted signals in MediaPlayList when adding tracks from an artist by Matthieu Gallien ;
  • When reselecting e.g. the all albums view with the view selector, the stackview shows a previously opened album. Reset to the initial item when the view selector is used by Alexander Stippich ;
  • Add a test for tracks removal via TracksListener and fix some bugs by Matthieu Gallien ;
  • Fix XML in copyright text for about dialog by Alexander Potashev ;
  • Allow to display all albums from an artist directly from the view of one of its albums by Matthieu Gallien ;
  • Do not extract i18n messages from localFileConfiguration/ to elisa.pot by Alexander Potashev.

Last Weeks Activity in Elisa

Elisa is a music player designed to be simple and nice to use.

Alexander Stippich did several fixes in the interface while I focused on bugs related to the music database.

KDE community has been working on flatpak. For that, a runtime including Qt5 and KF5 frameworks has been written. Aleix Pol has written a recipe to build Elisa under flatpak. It is now built regularly from the git repository.

I am very enthusiastic about that since that should allow easy testing of the application thanks to the work of a lot of people on Flatpak and the support inside the KDE community.

Currently some features are not well working and some audio codecs are missing in the current runtime. Use it at your own risk and keep in mind that some parts are known not to work correctly. Please report any bugs or suggestions to the bugs.kde.org tracker.

In order to test, you can (extracted from the KDE community wiki) do the following steps:

I am afraid I have no snapshots to show today.

The following things have been integrated in Elisa git repository:

  • Fix context menu for MediaAllTrackView and MediaAlbumView by Alexander Stippich ;
  • Improvements of the single entry in the playlist by Alexander Stippich ;
  • Fixes in the play list for different albums with the same title ;
  • Fix mouse interaction and dragging while LabelWithTooltip is truncated by Alexander Stippich ;
  • Preliminary work to allow to store multiple artists for a track or an album ;
  • Report database errors and check for them during tests. I fail to see how to report such an error to an user (being a developer or a non technical user does not make any difference here) ;
  • Preliminary work to allow database versioning and evolution ;
  • Fix several bugs around the music database ;
  • Modify a bit the way tracks are tested for uniqueness ;

I am still planning to do an alpha release soon. This is an important milestone to test that everything needed to make a proper release after review will be possible.

Last Weeks Activity in Elisa

Elisa is a music player designed to be simple and nice to use.

I have missed those regular posts due to real life interrupting me a lot the last two weeks.

The following things have been integrated in Elisa git repository:

  • Fix a bug related to error management during play of music (no longer block on an erroneous track, …) ;
  • Update of the Elisa docbook documentation by Burkhard Lück ;
  • Elisa now requires KDE Frameworks 5.39 to prevent a crash of Elisa ;
  • Allow to start play if in pause using the play button in the play list by Alexander Stippich ;
  • Increase test coverage of the code used to manage the list of audio tracks, albums and artists. Fix some newly discovered bugs ;
  • Colorize the icons in the list of views on right the same way text is colorized: Screenshot_20171102_224101
  • Allow keyboard navigation of the playlist ;
  • Fix management of albums with the same title but different authors ;
  • Implement double click actions for delegates in content views by Alexander Stippich ;

I would like to thank Burkhard Lück and Alexander Stippich for their much appreciated contributions.