Tempus is an open-source and lightweight music client for Subsonic, designed and built natively for Android.

This app works with any service that implements the Subsonic API, including:

https://github.com/eddyizm/tempus/releases/tag/v4.6.0

My last release post was for v4.2.4 so I’ve included whats changed since that post.

Highlighting these 4 really lovely features that people have wanted for some time and were well received. Added screenshots for each below

What’s Changed

  • feat: added regular playlist to home view

  • feat: add heart to artist/album pages, fixed artist cover art failing

  • feat: playerqueue fab allowing actions on full play queue Download

  • feat: add play functionality to library folder/index items

  • fix: player queue soft-lock
  • feat: Add Catalan language
  • performance: Refactor MediaService
  • chore: Update Spanish translation
  • chore: Update Italian translation
  • chore: Add clickable Obtainium badge to README
  • fix: refactor start queue to put the db writing in the background all , save to playlist, shuffle, clean and if enabled, load queue.
  • chore: Update Polish translation
  • fix: updates to starred syncing to user defined directory which was saving the tracks to internal storage and not a shared location
  • fix: handle empty albums and null mappings
  • feat: integrate sort recent searches chronologically
  • chore: Update description_empty_title in English, Italian, Polish French and Spanish
  • fix: checks preference and writes files externally, updates the ui for playerqueue downloads

note app-tempo* <- The github release with all the android auto/chromecast features

app-degoogled* <- The izzyOnDroid release that goes without any of the google stuff.

As usual, any dev contributions appreciated as I am not actually a java/mobile dev, so my progress is significantly slower than those who do this on the daily.

Big thanks to all the folks who have been contributing. We have a new icon designed but I could use some help if anyone wants to do a PR to implement it.

  • Statick@programming.dev
    link
    fedilink
    English
    arrow-up
    0
    ·
    20 days ago

    Been using this for the past month since I found out Tempo development died.

    Works great on my phone.

    The Android Auto UI needs work though.

    • eddyizm@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      20 days ago

      no worries mate. I was going to mention the same thing about the android status. It is one of my milestones but as you have seen, the app needs work and I am slowly learning the code base as I go through sections at a time.

      Just started working through the playlist milestone with this release, will spend some time here and Android Auto has a milestone where I am grouping all the tickets. I will get to it in the near future for sure. Proper Offline milestone might come before it though.

    • eddyizm@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      20 days ago

      the github version has android auto/chromecast support. I don’t think it works with grapheneos - people use the degoogled version for that os and it doesn’t generally support the google libraries.

      • Spaniard@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        edit-2
        20 days ago

        I don’t know much about android google libraries but I have Android Auto enabled and some apps work (maps, whatsapp) but tempus doesn’t (using github). I have to try with another sonic music player that allows it.

        Anyway thanks for the effort and merry Christmas.

        • eddyizm@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          0
          ·
          20 days ago

          It does work if you use the github version, not the degoogled version. There’s also a few things you need to do detailed here in order for a non appstore app to work.

  • sludgewife@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    0
    ·
    20 days ago

    love it! the tag view seems to return random tracks when connected to funkwhale, but dsub can return albums. would you be open to a PR that uses the album api/album list view for tags?

  • irmadlad@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    20 days ago

    I self host Navidrome, and after deploying one or two companion apps for Navidrome, I’m right now digging Substreamer. I have never heard of Tempus, so I have added it to the ‘apps to try’ list. One of the features of Substreamer that I really enjoy is the Playlist Builder. Substreamer apparently goes through your collection and pre-creates playlists based on commonalities like genre, tags, etc. Let’s say that you click on the Blues playlist. It then has the Blues master playlist broken down into All Time, Recent, 2010+, etc. After you listen to/edit the playlist, you can save it to Navidrome. I find this feature to be quite handy and it just works very well for me. Not only can I physically make playlists in Navidrome, but in Substreamer automatically as well.

    Saying all of that to say, does Tempus have any such feature? Like I said, I’ve never heard of Tempus, which really doesn’t mean much, but it looks very well put together. I’m sure OP didn’t set out to make Tempus a Substreamer copycat, I just find that one feature of Substreamer very handy.

    • eddyizm@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      20 days ago

      You can create and edit playlists on Tempus (currently working on overhauling this aspect of the app) however it does not have that playlist builder style thing. It can take your created playqueue and save it to a playlist. I’ve used substreamer in the past but it does not seem , at least on android, to have been updated in over 2 years now.

  • SpatchyIsOnline@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    20 days ago

    It might be a bit out of scope (at least for now) but something I’d love to see eventually is the ability to pull down weekly recommendations from ListenBrainz and view them natively in-app. Even if they just linked to the YouTube video, it would make self hosting music feel like it had the last remaining benefits of streaming services.

    • i_uuuh_what@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      20 days ago

      You might be interested in Tapesonic then (a shameless plug). Streaming YouTube stuff is borked though (needs newer yt-dlp - you can try rebuilding the container yourself with a new alpine version); also grabbing non-library tracks is not supported for ListenBrainz for now (their API doesn’t return the URLs, I’ll work around this in the future; meanwhile you can still get the playlists of the stuff you already have in your library).

      • SpatchyIsOnline@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        19 days ago

        Thanks for the recommendation, it certainly seems like an interesting project, although it’s current capabilities are almost backwards from what I actually want. My current workflow is:

        • Listen to my library in Navidrome via Feishin/Tempus
        • Scrobble my listens to ListenBrainz
        • ListenBrainz generates my weekly recommendations playlist (things not in my library)
        • I listen to the playlist on the ListenBrainz site via YouTube embeds
        • Any songs I like, I download high quality FLAC files of using slskd by buying legitimately

        Just being able to see my recommended songs in Tempus would remove some of the barrier of having to log in to ListenBrainz every week (which I often push to the bottom of my to-do list and end up missing recommendations). I don’t even really need to stream them directly in the app, just being able to see them and open the YouTube link would be a good start.

        I get that this might be a bit of a niche way of doing things and everyone will have a slightly different idea though, I don’t really expect my exact personal workflow to be catered for by open source devs.

  • claymore@pawb.social
    link
    fedilink
    English
    arrow-up
    0
    ·
    19 days ago

    Looks great, maybe this will convince me to setup a music server to free up space on my phone :) One question, does it support browsing by album artist instead of just artist? I organise my music with Picard which moves features to the artist tag, which breaks up albums when using just the artist view. Great work either way

    • eddyizm@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      19 days ago

      I use Picard to tag my music as well but it is really only responds to the servers subsonic api response at this point. I would need to dig into it a little more to get you a definitive answer.

  • epyon22@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    0
    ·
    20 days ago

    This player is so close to replacing dsub/dsub2000 for me. But I really miss the background song cache in dsub. Tempus makes it more of an explicit action to download.

    • eddyizm@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      20 days ago

      It’s something I’d like to add as part of the offline milestone, there’s a lot of stuff needing attention, currently working on some playlist stuff atm.

  • electric_nan@lemmy.ml
    link
    fedilink
    English
    arrow-up
    0
    ·
    20 days ago

    Thanks! Just started using this recently (been having problems with Substreamer), and so far, so good :)

    • eddyizm@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      20 days ago

      Glad to hear! It seems like it has (and many other apps) have not had many updates recently.

  • zingo@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    0
    ·
    19 days ago

    I seem to get an error when adding my server.

    • 40 Wrong username or password.

    Can you help me out?

    Thanks!

    • bless@lemmy.ml
      link
      fedilink
      English
      arrow-up
      0
      ·
      19 days ago

      I’m not affiliated with this, but perhaps it would make things easier to give server logs for that as well?

    • eddyizm@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      edit-2
      19 days ago

      What back end are you using? Depending on that, you may need to use the token and check the low security box. Edit: I just read your reply. I use LMS for you definitely need to set up the api key and check the low security box and you should be good. Also depends on how your set is, are you behind a reverse proxy? If so, what is the web server and your config?

      • zingo@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        0
        ·
        19 days ago

        Oh yes. I think I forgot about setting up the API key in LMS.

        Not running a reverse proxy on LMS. I do run traefik for most of my infrastructure but choose not to with my music server. One less moving part that can break. Can’t have any interruptions while I’m recharging my soul. ;)

        Thanks a lot.

  • atzanteol@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    0
    ·
    20 days ago

    Links to lms, navidrome, gonic, ampache, nextcloud, airsonic, the previous post… But none to the thing you posted about?

    • eddyizm@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      20 days ago

      Lol damn it, I had caught that earlier and started to edit the post and forgot to hit save. Thanks for the nudge!