1.3.0 Development Preview: lumina-mediaplayer 13


Next up in our preview series for Lumina version 1.3.0 is a brand-new utility: lumina-mediaplayer

This is a small utility designed to provide the ability for the user to play audio and video files on the local system, as well as stream audio from online sources. For now, only the Pandora internet radio service is supported via the “pianobar” CLI utility, which is an optional runtime dependency. However, we hope to gradually add new streaming sources over time.

 

Focus:

The primary focus for this utility is to let the user quickly set up their “playlist” or stream and then hide the utility. In this way, lumina-mediaplayer doesn’t distract the user from whatever they are trying to accomplish. It is definitely not trying to be a flashy “do anything” multimedia player, since there are plenty of those already available for download. As such it requires very few system resources and also associates with a system tray icon so that it can be “closed” to the tray for truly minimal distraction. However, the system tray icon can also be set to provide notifications to the user when Pandora changes songs or the local playlist moves to the next item, ifdesired.

 

Background:

What started this project was actually my normal day-to-day workflow. As a software developer for iXsystems, I tend to sit at my office computer for long stretches of time while working on projects related to TrueOS or FreeNAS. A bit of music in the background or a Pandora radio stream always helps me keep focused on the task at hand. For a long time I had been using another Pandora streaming client on my TrueOS desktop, but it was very fragile with respect to underlying changes: LibreSSL versions for example. The player would regularly stop functioning for a few update cycles until a version of LibreSSL which was “compatible” with the player was used. After enduring this for some time, I was finally frustrated enough to start looking for alternatives. A co-worker pointed me to a command-line utility called “pianobar“, which was also a small client for Pandora radio. After using pianobar for a couple weeks, I was impressed with how stable it was and how little “overhead” it required with regards to extra runtime dependencies. Of course, I started thinking “I could write a Qt5 GUI for that!”. Once I had a few free hours, I started writing what became lumina-mediaplayer. I started with the interface to pianobar itself to see how complicated it would be to interact with, but after a couple days of tinkering in my spare time, I realized I had a full client to Pandora radio basically finished.

This was not enough for me to include it in the Lumina project though. I needed to make the utility useful even if pianobar wasn’t available on the system. Because of my experience with the QtMultimedia framework after writing the Insight file manager, I knew that the next step was to implement local file playback using pure Qt5 since that was already required by the desktop itself and would not require anything extra. This would give the utility some lasting usefulness, even if Pandora Radio or pianobar up and vanished the next day for some reason. Once this was implemented, I determined that it was time to promote this project from a “hobby” project into a full member of the Lumina desktop’s “extra” utilities.

I am still going through the utility and polishing it up, but it will soon be enabled in the default build for the Lumina “desktop-utils” category and then distributed to TrueOS systems. Once that is finished, I’ll also start the release process for the Lumina desktop itself and hopefully announce version 1.3.0-Release of the Lumina desktop environment a couple weeks later.

 

~~ Ken Moore ~~

Lumina Desktop Founder


Leave a comment

Your email address will not be published. Required fields are marked *

13 thoughts on “1.3.0 Development Preview: lumina-mediaplayer

  • Alberto Bursi

    Neat little thing, a good addition.

    Only thing bothering me is the 4 rows of menus, buttons and tabs on top. Considering how most screens and videos nowadays are 16:9, it would leave more screen space for videos to have most of them in a column on the side (left or right).

    -Alberto

    • Ken Moore Post author

      I completely agree that the 4 rows of menus/tabs/buttons needs to get cleaned up. I am still polishing/tweaking this utility, so now that it is functional and doesn’t need any more buttons, I fully expect to re-arrange the UI to better accomodate the flow of the application.

  • YKaelig

    Absolutely nothing new in 2017. A nth copy of the 80’s with the same errors, the same horrible window with these menu and sub-sub menu and options, one after another, again and again and agin. For God Sake, let designers take care of graphic, leave the the 80’s DE and software scheme, because there is absolutely no innovation in what I see here .

    • Ken Moore Post author

      I am sorry if you missed the blog post in your rush to complain, but let me define a few of the terms you skipped over:

      • Development Preview – this means it is not done yet and is generally just a blank canvas with buttons attached to verify the backend functionality.
      • Focus is to be hidden away in the system tray – This means I am not going to suck in hundreds of Megabytes of pointless visual tweaks for a utility which you are not going to be looking at in the first place.

      If you actually have any comments of merit about Lumina, feel free to ask/post them on the TrueOS Community forums. Otherwise you can just slink back under your smelly bridge and continue to envy people whose computers are actually functional.

    • LeoLevevre

      I want to criticize another aspect: Why develop the nth media player? Please keep the kiss-principle in mind and use well-known, well-tested, mature tools. Of course it is possible to write a QT-skin for those tools if they don’t have one and of course they can be extended if they lack a certain feature. But in most cases it is no good idea to reinvent the wheel …
      And I think it is no good idea to provide a media-player that cannot play any media the user wants to play. What a mess if you needed player A to play mp3 and player B to play flac and player C to play wav for instance …

      I don’t know the media player market as a whole, but why not develop a Qt5-Skin for mpv (if it does not alreday exist) that let you create simple playlists and that hides away in the tray? While playing mpv does not use a lot of system ressources either …

      • Ken Moore Post author

        Did you read the blog post? This utility is primarily for playing streams from the pandora radio service (and possibly other streaming services later on).
        The local-file playback is only there because the ability to play local media files is already built-in to Qt using the same multimedia libraries that utilities like mpv use in the background themselves.

        In graphical form:
        Qt App -> multimedia library -> audio out

        Is a lot better/faster than:
        Qt App -> Other App -> multimedia library -> audio out

        Or if you look at the way many Linux media players work:
        App 1 -> App2 -> library 1 -> App 3 -> library 2 -> library 3 -> Sound system 1 -> Sound system 2 -> audio out

  • Lou Rosal

    I had just installed the TrueOS on my machine. But it does perform superbly so far… I am starting to like it. I can sense the developers did “truly put their hearts,” into it. Thanks a lot for your efforts guys… thanks too for giving me the opportunity to try it out…More power to you all…