Spotify Connect Frontend Plugin
Hi,
I am new here and I like how the way mopidy is structured compared to other open source audio players. Last week I had some time and managed to develop a spotify connect render plugin you may want to have a look at. https://github.com/varungujjar/mopidy-spotify-render
I actually came across your project earlier today! I was going to reach out, thanks for getting in touch. How you've integrated this is very interesting. But the thing that's put me off doing this (although implemented a different way) is how does it play with other media sources? Or do you just treat it entirely separately? If I have a playlist some local tracks and some Spotify, what's the experience there?
Basically picked up on some ideas from moode
- The render is loaded with mopidy and is always running in the background with the name defined in mopidy config.
- The render connects to alsa directly and does not use gstreamer (I did not know how to figure this out) may be it needs to be compiled with gstreamer support? ( its treated seperately )
- As soon as a spotify player connects to the renderer any ongoing playback will be stopped.
- Track meta details are loaded to the core seperately which can then be fetched from the frontend api.
- In order to playback/resume any previous tracks from mopidy the renderer must be disconnected from your spoitify app. (Still figuring this out)
Ah ok, I mistakingly thought all the actual playback was still happening through Mopidy and it was just Spotify status and control via the external librespot renderer. But if I recall there isn't a controller only mode for librespot today, that would be a custom build.
So if you're using a Mopidy frontend for control (of any track, even from Mopidy-Spotify), there will be no status of what's happening in your Spotify-Connect controller, and it'll look like playback has stopped? But if you are using a Spotify-Connect controller you'll get playback status in your Mopidy frontends too?
My original idea (which is still far down my to-do list) was to generate python bindings for librespot and interface with Spotify Connect that way, whilst keeping all playback through Mopidy. I've never been sure how to present non-Spotify tracks in that case. Maybe this shows ignoring them is just fine. Perhaps that's not a common use-case anyway.
Hoping to take your project for a spin soon. Great job.
@varungujjar is your extension still available?