Summary first - I’m looking for software to use for web-controlled music playback. Main requirement is playback via a DAC on the hosting device and a half-decent UI for it (though streaming would be nice…).

Hardware-wise, I’ve currently got a Pi Zero W paired with a HiFiBerry DAC+ Zero, which has been fine for me quality-wise, routed as an aux input to an old HiFi. That, plus plenty of space elsewhere to host split apps - currently running Emby as a main streaming host for other media, and the media is just on a NAS pulling over NFS.

I’ve been using Volumio for a while, but have been frustrated with a few things (UI, playlist management, etc) so I’m looking for a change. Streaming from Emby/Jellyfin via DLNA looks like it might be a decent fallback, but I’m wondering if there are any nicer ways to handle it.

Any ideas? Open to switching a few bits of infrastructure around, of course :)

    • @[email protected]
      link
      fedilink
      English
      41 year ago

      I would even go as far as to recommend checking out the project underlying Jellyfin integration, mopidy - it’s a well-rounded audio server, which allows you to play your local collection, network shares, as well as to integrate different external music services. Several front-ends are available as extensions, plus you can install additional extension to expose the MPD protocol, allowing you to control it remotely via one of many MPD clients.

      For playback, you can install it on the Pi itself, or have it running on a separate machine, with the Pi itself running a low-complexity RTP receiver. :)

      • @easeKItMAn
        link
        English
        11 year ago

        I second this approach and have it running since several years. Tried volumio/jelly and others but mpd/snap is the most flexible one. Spin up docker mopidy/snapserver/snapweb, and if required shairport. It basically enables you streaming like Sonos to other instances running snapclients connected to speakers. All controlled via webUI, or native apps or Airplay. My setup is controlled via homeassistant and handles playlist generation via custom bash scripts + syncing to Navidrome. Though, it may require some fiddling compared to other out-of-the-box but lesser flexible solutions, imho.

      • @TCB13
        link
        English
        11 year ago

        Hmm… what’s your experience with running Mopidy standlone? What client are you using, does it perform better than Jellyfin?

        • @[email protected]
          link
          fedilink
          English
          21 year ago

          Relatively straightforward; it works well as essentially fancier mpd, and performs quite well. :) It is audio-only unlike Jellyfin; if you like to have your media all in one place, then Jellyfin might be a better option.

          As for the client, nowadays I do most of the handling through the MPD protocol (I like having native clients on both desktop and mobile devices for the same audio setup), but before I developed that setup, I had good experience with the Iris web client.

          • @TCB13
            link
            English
            1
            edit-2
            1 year ago

            I’m not into having “all my media in one place”, for me it is more about having my NAS playing music in a surround system in a way that I don’t need to have a computer / my phone actually doing the stream. I want to launching an app / webui on the phone to control the music but the NAS is actually playing it. I don’t like things draining my phone’s battery not having 200GB of music on a phone. On my laptop and desktop I simply sync the music with Syncthing and use Dopamine to play it. Thank you.

    • @[email protected]OP
      link
      fedilink
      English
      21 year ago

      Thanks for the pointers- I’d been meaning to look into swapping Emby out for Jellyfin anyway, so this has given me a good excuse to spin another container up - will probably have Jellyfin on a separate host though, given I’ve got the capacity for it, and it’d be nice to unify the video/audio server. Mopidy certainly looks like it ticks the boxes though, and looks like extensible enough that it should cover a bunch of future uses as well.