home.social

#mopidy — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #mopidy, aggregated by home.social.

  1. @karen With even small computers like a #RaspberryPi, you can run @homeassistant to automate your home. Or #Navidrome as a music player, maybe with #mopidy to sync it across various speakers in your house.

    #OsmAnd and #OrganicMaps are FLOSS #OpenStreetMap apps for Android. Both let you download maps for offline navigation.

    @GrapheneOS is a fully FLOSS Android distribution with many privacy features.

    @fdroidorg is a FLOSS app store for Android.

    4/

  2. 📰 New blog article

    Self-host your own multi-service #music server on #Android

    How to replace your music streaming apps with a setup that supports multiple streaming services, multiple devices and multiple outputs from a single Webapp.

    #mopidy #platypush #termux #ntfy #Tasker #python

    @Selfhosted @Android @python

    https://blog.platypush.tech/article/Self-host-your-music-experience-on-mobile

  3. ok fediverse hive mind I'm looking for a solution to playing music from Navidrome (hosted on proxmox) on a Raspberry Pi with a dac hat. I'm currently using Moode without subsonic (I couldn't get it to work). I've got a VM running Mopidy/Iris/Mopidy-Subidy but album art wasn't implemented (not the end of the world I guess).

    What's my best solution?

    #selfhosted #navidrome #mopidy #moode

  4. Me canse de complejidades, volvi a music on console, #mocp para los amigos, en mis equipos portables. Si aun tengo algun recopilado musical en local . Si ya estoy en el homelab, mantengo #mopidy para retransmitirlo por la LAN, aunque me tienta desplegar #jellyfin . En fin, tiempo al tiempo. Buenas noches.

  5. Me canse de complejidades, volvi a music on console, #mocp para los amigos, en mis equipos portables. Si aun tengo algun recopilado musical en local . Si ya estoy en el homelab, mantengo #mopidy para retransmitirlo por la LAN, aunque me tienta desplegar #jellyfin . En fin, tiempo al tiempo. Buenas noches.

  6. Me canse de complejidades, volvi a music on console, #mocp para los amigos, en mis equipos portables. Si aun tengo algun recopilado musical en local . Si ya estoy en el homelab, mantengo #mopidy para retransmitirlo por la LAN, aunque me tienta desplegar #jellyfin . En fin, tiempo al tiempo. Buenas noches.

  7. Me canse de complejidades, volvi a music on console, #mocp para los amigos, en mis equipos portables. Si aun tengo algun recopilado musical en local . Si ya estoy en el homelab, mantengo #mopidy para retransmitirlo por la LAN, aunque me tienta desplegar #jellyfin . En fin, tiempo al tiempo. Buenas noches.

  8. Me canse de complejidades, volvi a music on console, #mocp para los amigos, en mis equipos portables. Si aun tengo algun recopilado musical en local . Si ya estoy en el homelab, mantengo #mopidy para retransmitirlo por la LAN, aunque me tienta desplegar #jellyfin . En fin, tiempo al tiempo. Buenas noches.

  9. Playing music with Mopidy or with mpd (music player daemon) part 1

    This is just an introduction post to Mopidy and mpd (Music Player Daemon).

    Both are music players that come without GUI but there’s a wide choice of client software for it (Console and GUI). Both default to be using localhost as server, but they can be configured to be used over a network e.g. a LAN at home or – dare I say it ? (hahaha) – a company office or government building, a desert island in the Pacific Ocean and so on.

    I used to happily use mpd for years on a Raspberry Pi … but not Every After … until one day probably due to a software upgrade or some glitch or user mistake it stopped working. Because I had not documented how I configured the audio for server usage I started to try to fix and got lost in Internet searches and it was then that I decided to test Mopidy. It turned out that Mopidy was even more difficult to get going, at least for me, but it was not an uninteresting journey. I learned that Mopidy uses GStreamer, and Mopidy only supports audio files, or it seems so. Perhaps I couldn’t figure out how to let it play audio from video files with extensions like avi, mp4, mkv, webm. And converting all these music videos into audio would take a lot of time (Yes, no top500 super computer in the basement here :^).

    My plan now is to use another computer here to setup mpd, and then figure out how to configure PulseAudio to make mpd available over the LAN, document that, and then do the same for Mopidy and then blog-report that into a how-to back here.

    Till next time! 🙂

     

    #linux #mopidy #mpd #opensource

  10. 🔈 My new favourite RaspberryPi-as-a-music-player-setup.

    This can be used by anyone in the household, I would argue:
    - Use DietPi as distro
    - Install mopidy with iris
    - Connect external usb drive with music on it
    - Setup Samba to network share the usb drive, makes it easy to transfer new music
    - Connect Tidal/streaming service to mopidy(optional)
    - Connect your speakers to Pi.
    - Control the music playing through webui from any device

    #foss #raspberrypi #dietpi #mopidy

  11. @cory the idea sounds similar to what I’ve done a while ago with #Platypush + #mopidy (and optionally Tidal). My implementation also uses the scrobbled tracks over a certain period and Last.fm’s API to automatically generate a “discover weekly” playlist.

    I haven’t toyed with Plex in a while, but why did you have to run everything on Firebase/Supabase? If you have your Plex server running locally isn’t it more convenient to go for a fully local solution?

  12. Voy con toot tech.

    Desde hace un año uso #funkwhale como mi plataforma de #musica principal. Sin embargo, soy una persona que usa mucho terminal y en este caso sólo he usado el navegador y la app de android.

    Antes usaba MPD y Icecast, y usando ncmpcpp un fantástico reproductor de música por terminal.

    Sin embargo, he dado con esta guia man.sr.ht/~rek2/Hispagatos-wik que usando #mopidy y unos plugins puedes y ya puedo volver a manejarlo por #terminal 😍

    funkwhale.audio/

    #music #linux

  13. Serie: Musik-Streamer - Mopidy

    Eine Dokumentation zur gescheiterten Installation und Inbetriebnahme eines Mopidy-Servers, um Musikstreams direkt von der Quelle an die Lautsprecher zu übertragen.

    #Musik #Musik_Streamer #MPD #Mopidy #Raspberry_Pi #Linux

    gnulinux.ch/serie-musik-stream

  14. @hackaday

    The bit about worrying if your PR will get merged, I think, shouldn't stop anyone from solving the problem; if user can solve the problem for themselves, then as long as they're maintaining it, they can make their fork available to others - there are historical examples of forks becoming more popular, even. #mopidy

    User -> dev hostility is an artifact of the commercial software paradigm, where users are treated like sheep by wolves.

    SV VC hit FF on that.

  15. Calling success on a festival project...

    Synchronised multi-room audio playback from spotify, airplay or local media using snapcast, a selection of raspberry pi's and all controlled through homeassistant

    #homeassistant
    #snapcast
    #spotify
    #airplay
    #raspberrypi
    #mopidy

  16. @sam What audio system do you use? I'm using #mopidy with #ncmpcpp for our "hifi" and I like it a lot but I never got round to set up streaming

  17. J'ai mis en place un #snapcast utilisant #mopidy en tant que lecteur afin de diffuser l'audio partout dans la maison.
    Ca marche avec une base de musique déjà existante, mais je cherche à faire en sorte que je puisse diffuser le flux audio d'un téléphone android vers le système de synchro audio.

    Le système étant tout neuf, si je dois me passer de mopidy pour passer sur autre chose, ça me pose pas de problème, mais je cherche à ce que ça marche un peu à la chromecast.

    Des idées?

    Reboostipouets appréciés

    ​:boost_requested:​

  18. Recording from last night game, #swgemu swgemu.com the quality, and sound is now perfect, 1440p and the music info from mpd/mopidy with OBS plugin is working perfectly video.hardlimit.com/w/19Ym4yVh peertube > odyssee another example of community made software takes longer but ends up better than for-profit software Blender/gimp/linux/openbsd* ..... etc oh yeah and the music on #mopidy with #OBS is #defcon #Hacker somaFM radio. Join our guild swgemu.com/forums/showthread.p

  19. Plays music.. No music keeps coming..systemctl sez file not found

    Remounts smb share..plays.. Music.. No music.... Still file not found.. Hmm

    Realises music library hasn't been updated in forever.. Rescans music folder

    Plays music.. No music.. Forces full deepscan

    5 mins later.. Loads web interface.. new update..spends 10 mins updating web interface and all other outdated packages

    What was I doing.. Oh yeah .. Plays for 5 mins then puts a fillum on

    life

  20. @kelbot @redeagle OK! I've tried out a ton of audio options, and written up my experiences with them here: changelog.complete.org/archive

    Summary: I might stick with my current #LMS and #Ampache ( @ampache ) even though they're clunky in combination. Ampache with #MPD and #Mopidy was clunky in every which way. #Jellyfin with #Mopidy was close, but couldn't play my playlists in proper order. #Snapcast is great, but I'm having trouble finding a quality thing to feed it with.

  21. It’s been nearly 8 years since I last made choices about music playing. At the time, I picked Logitech Media Server (LMS, aka Slimserver and Squeezebox server) for whole-house audio and Ampache with the DSub Android app.

    It’s time to revisit that approach. Here are the things I’m looking for:

    • Whole-house audio: a single control point for all the speakers in the house, which are all connected to some form of Linux (Raspberry Pi or x86). The speakers should be reasonably in sync with each other, and the control point should be able to adjust volume on them centrally. I should be able to play albums, playlists, etc. on them, and skip tracks or seek within a track.
    • The ability to stream to an Android mobile device, ideally with downloading capabilities for offline use.
    • If multiple solutions are used, playlist syncing between them.
    • Ideally, bookmark support to resume playing a long track where it was left off.
    • Ideally, podcast support.

    The current setup

    Here are the current components:

    • Logitech Media Server, which serves the music library for whole-house synchronized audio
    • Squeezelite is the LMS client running on my Raspberry Pi and x86 systems
    • Squeezer is a nice Android client for LMS to control playback, adjust volume, etc. It doesn’t do any playback on the Android device, of course.
    • Ampache provides the server for streaming clients, both browser-based and mobile
    • DSub (F-Droid, Play Store) is a nice Android client for Ampache providing streaming and offline playback

    LMS makes an excellent whole-house audio system. I can pull up the webpage (or use an Android app like Squeezer) to browse my music library, queue things up to play, and so forth. I can also create playlists, which it saves as m3u files.

    This whole setup is boringly reliable. It just works, year in, year out.

    The main problem with this is that LMS has no real streaming/offline mobile support. It is also a rather dated system, with a painful UI for playlist management, and in general doesn’t feel very modern. (It’s written largely in Perl also!)

    So, I paired with it is Ampache. As a streaming player, Ampache is fantastic; I can access it from a web browser, and it will transcode my FLAC files to the quality I’ve set in my user prefs. The DSub app for Android is fantastic and remembers my last-play locations and such.

    The problem is that Ampache doesn’t write its playlists back to m3u format, so I can’t use them with LMS. I have to therefore maintain all the playlists in LMS, and it has a smallish limit on the number of tracks per playlist. Ampache also doesn’t auto-update from LMS playlists, so I have to delete and recreate the playlists catalog periodically to get updates into Ampache. Not fun.

    The new experiment

    I’m trying out a new system based on these components:

    • Jellyfin is a media player. It supports not just music, but also video (in fact, the emphasis is more on video). Notably it supports controlling various devices. Its normal frontend is a web browser; Jellyfin’s server won’t output audio to a device itself.
    • Mopidy is a media player with a web interface that does output audio to a local device. In normal use, it displays an interface to your music, letting you select, queue up, etc.
    • Mopidy-Jellyfin (docs) is a plugin for Mopidy that enables two things: 1) Browsing the Jellyfin library within Mopidy, and 2) controlling Mopidy from within Jellyfin. Mode 1 barely works, but mode 2 works perfectly. Within Jellyfin, I can “cast to Mopidy” and queue up things, seek, skip tracks, etc.
    • Snapcast is a generic solution to take audio from some sort of source and distribute it throughout the house, syncing each device (and with better syncing than LMS, too!). The source can be just about anything, and the docs include an example of how to set it up with Mopidy.
    • Mopidy has selectable web interfaces, and the Mopidy-Muse interface has the added benefit of having integrated Snapcast control. (Mopidy-Iris does as well, though it wasn’t documented there.) Within it, I can adjust volume on devices, mute devices, etc. I could also use the Snapcast web interface for this purpose.
    • The default Jellyfin Android app lets me stream media to the mobile device, as well as control the Mopidy player.
    • Finamp (F-Droid, Play Store) is a very nice Android Jellyfin music playing client, which notably supports downloads for offline playing, a feature the stock app lacks.
    • The Snapcast Android app (F-Droid, Play Store) isn’t strictly necessary, since the Snapcast web app is so simple to use. But it provides near-instant control of speakers and volumes.

    This looks a lot more complicated than what I had before, but in reality it only has one additional layer. Since Snapcast is a general audio syncing tool, and Jellyfin doesn’t itself output audio, Mopidy and its extensions is the “glue”.

    There’s a lot to like about this setup. There is one single canonical source for music and playlists. Jellyfin can do a lot more besides music, and its mobile app gives me video access also. The setup, in general, works pretty well.

    There are a few minor glitches, but nothing huge. For instance, Jellyfin fails to clear the play queue on the mopidy side.

    But there is one problem, though: when playing a playlist, it is played out of order. Jellyfin itself has the same issue internally, so I’m unsure where the bug lies.

    Rejected option: Jellyfin with jellycli

    This could be a nice option; instead of mopidy with a plugin, just run jellycli in headless mode as a more “native” client. It also has the playlist ordering bug, and in addition, fails to play a couple of my albums which Mopidy-Jellyfin handles fine. But, if those bugs were addressed, it has a ton of promise as a simpler glue between Jellyfin and Snapcast than Mopidy.

    Rejected option: Ampache localplay with mpd

    Ampache has a feature called localplay which allows it to control a mpd server. I tested this out with mpd and snapcast. It works, but is highly limited. Basically, it causes Ampache to send a playlist — a literal list of URLs — to the mpd server. Unfortunately, seeking within a track is impossible from within the Ampache interface.

    I will note that once a person is using mpd, snapcast makes a much easier whole-house solution than the streaming option I was trying to get working 8 years ago.

    #ampache #jellyfin #lms #mopidy #music-s9y #streaming

    https://changelog.complete.org/archives/10439-music-playing-both-whole-house-and-mobile

  22. It’s been nearly 8 years since I last made choices about music playing. At the time, I picked Logitech Media Server (LMS, aka Slimserver and Squeezebox server) for whole-house audio and Ampache with the DSub Android app.

    It’s time to revisit that approach. Here are the things I’m looking for:

    • Whole-house audio: a single control point for all the speakers in the house, which are all connected to some form of Linux (Raspberry Pi or x86). The speakers should be reasonably in sync with each other, and the control point should be able to adjust volume on them centrally. I should be able to play albums, playlists, etc. on them, and skip tracks or seek within a track.
    • The ability to stream to an Android mobile device, ideally with downloading capabilities for offline use.
    • If multiple solutions are used, playlist syncing between them.
    • Ideally, bookmark support to resume playing a long track where it was left off.
    • Ideally, podcast support.

    The current setup

    Here are the current components:

    • Logitech Media Server, which serves the music library for whole-house synchronized audio
    • Squeezelite is the LMS client running on my Raspberry Pi and x86 systems
    • Squeezer is a nice Android client for LMS to control playback, adjust volume, etc. It doesn’t do any playback on the Android device, of course.
    • Ampache provides the server for streaming clients, both browser-based and mobile
    • DSub (F-Droid, Play Store) is a nice Android client for Ampache providing streaming and offline playback

    LMS makes an excellent whole-house audio system. I can pull up the webpage (or use an Android app like Squeezer) to browse my music library, queue things up to play, and so forth. I can also create playlists, which it saves as m3u files.

    This whole setup is boringly reliable. It just works, year in, year out.

    The main problem with this is that LMS has no real streaming/offline mobile support. It is also a rather dated system, with a painful UI for playlist management, and in general doesn’t feel very modern. (It’s written largely in Perl also!)

    So, I paired with it is Ampache. As a streaming player, Ampache is fantastic; I can access it from a web browser, and it will transcode my FLAC files to the quality I’ve set in my user prefs. The DSub app for Android is fantastic and remembers my last-play locations and such.

    The problem is that Ampache doesn’t write its playlists back to m3u format, so I can’t use them with LMS. I have to therefore maintain all the playlists in LMS, and it has a smallish limit on the number of tracks per playlist. Ampache also doesn’t auto-update from LMS playlists, so I have to delete and recreate the playlists catalog periodically to get updates into Ampache. Not fun.

    The new experiment

    I’m trying out a new system based on these components:

    • Jellyfin is a media player. It supports not just music, but also video (in fact, the emphasis is more on video). Notably it supports controlling various devices. Its normal frontend is a web browser; Jellyfin’s server won’t output audio to a device itself.
    • Mopidy is a media player with a web interface that does output audio to a local device. In normal use, it displays an interface to your music, letting you select, queue up, etc.
    • Mopidy-Jellyfin (docs) is a plugin for Mopidy that enables two things: 1) Browsing the Jellyfin library within Mopidy, and 2) controlling Mopidy from within Jellyfin. Mode 1 barely works, but mode 2 works perfectly. Within Jellyfin, I can “cast to Mopidy” and queue up things, seek, skip tracks, etc.
    • Snapcast is a generic solution to take audio from some sort of source and distribute it throughout the house, syncing each device (and with better syncing than LMS, too!). The source can be just about anything, and the docs include an example of how to set it up with Mopidy.
    • Mopidy has selectable web interfaces, and the Mopidy-Muse interface has the added benefit of having integrated Snapcast control. (Mopidy-Iris does as well, though it wasn’t documented there.) Within it, I can adjust volume on devices, mute devices, etc. I could also use the Snapcast web interface for this purpose.
    • The default Jellyfin Android app lets me stream media to the mobile device, as well as control the Mopidy player.
    • Finamp (F-Droid, Play Store) is a very nice Android Jellyfin music playing client, which notably supports downloads for offline playing, a feature the stock app lacks.
    • The Snapcast Android app (F-Droid, Play Store) isn’t strictly necessary, since the Snapcast web app is so simple to use. But it provides near-instant control of speakers and volumes.

    This looks a lot more complicated than what I had before, but in reality it only has one additional layer. Since Snapcast is a general audio syncing tool, and Jellyfin doesn’t itself output audio, Mopidy and its extensions is the “glue”.

    There’s a lot to like about this setup. There is one single canonical source for music and playlists. Jellyfin can do a lot more besides music, and its mobile app gives me video access also. The setup, in general, works pretty well.

    There are a few minor glitches, but nothing huge. For instance, Jellyfin fails to clear the play queue on the mopidy side.

    But there is one problem, though: when playing a playlist, it is played out of order. Jellyfin itself has the same issue internally, so I’m unsure where the bug lies.

    Rejected option: Jellyfin with jellycli

    This could be a nice option; instead of mopidy with a plugin, just run jellycli in headless mode as a more “native” client. It also has the playlist ordering bug, and in addition, fails to play a couple of my albums which Mopidy-Jellyfin handles fine. But, if those bugs were addressed, it has a ton of promise as a simpler glue between Jellyfin and Snapcast than Mopidy.

    Rejected option: Mopidy-Subidy Plugin with Ampache

    Mopidy has a Subsonic plugin, and Ampache implements the Subsonic API. This would theoretically let me use a Mopidy client to play things on the whole-house system, coming from the same Ampache system.

    Although I did get this connected with some trial and error (legacy auth on, API version 1.13.0), it was extremely slow. Loading the list of playlists took minutes, the list of albums and artists many seconds. It didn’t cache any answers either, so it was unusably slow.

    Rejected option: Ampache localplay with mpd

    Ampache has a feature called localplay which allows it to control a mpd server. I tested this out with mpd and snapcast. It works, but is highly limited. Basically, it causes Ampache to send a playlist — a literal list of URLs — to the mpd server. Unfortunately, seeking within a track is impossible from within the Ampache interface.

    I will note that once a person is using mpd, snapcast makes a much easier whole-house solution than the streaming option I was trying to get working 8 years ago.

    #ampache #jellyfin #lms #mopidy #music-s9y #streaming

    https://changelog.complete.org/archives/10439-music-playing-both-whole-house-and-mobile

  23. It’s been nearly 8 years since I last made choices about music playing. At the time, I picked Logitech Media Server (LMS, aka Slimserver and Squeezebox server) for whole-house audio and Ampache with the DSub Android app.

    It’s time to revisit that approach. Here are the things I’m looking for:

    • Whole-house audio: a single control point for all the speakers in the house, which are all connected to some form of Linux (Raspberry Pi or x86). The speakers should be reasonably in sync with each other, and the control point should be able to adjust volume on them centrally. I should be able to play albums, playlists, etc. on them, and skip tracks or seek within a track.
    • The ability to stream to an Android mobile device, ideally with downloading capabilities for offline use.
    • If multiple solutions are used, playlist syncing between them.
    • Ideally, bookmark support to resume playing a long track where it was left off.
    • Ideally, podcast support.

    The current setup

    Here are the current components:

    • Logitech Media Server, which serves the music library for whole-house synchronized audio
    • Squeezelite is the LMS client running on my Raspberry Pi and x86 systems
    • Squeezer is a nice Android client for LMS to control playback, adjust volume, etc. It doesn’t do any playback on the Android device, of course.
    • Ampache provides the server for streaming clients, both browser-based and mobile
    • DSub (F-Droid, Play Store) is a nice Android client for Ampache providing streaming and offline playback

    LMS makes an excellent whole-house audio system. I can pull up the webpage (or use an Android app like Squeezer) to browse my music library, queue things up to play, and so forth. I can also create playlists, which it saves as m3u files.

    This whole setup is boringly reliable. It just works, year in, year out.

    The main problem with this is that LMS has no real streaming/offline mobile support. It is also a rather dated system, with a painful UI for playlist management, and in general doesn’t feel very modern. (It’s written largely in Perl also!)

    So, I paired with it is Ampache. As a streaming player, Ampache is fantastic; I can access it from a web browser, and it will transcode my FLAC files to the quality I’ve set in my user prefs. The DSub app for Android is fantastic and remembers my last-play locations and such.

    The problem is that Ampache doesn’t write its playlists back to m3u format, so I can’t use them with LMS. I have to therefore maintain all the playlists in LMS, and it has a smallish limit on the number of tracks per playlist. Ampache also doesn’t auto-update from LMS playlists, so I have to delete and recreate the playlists catalog periodically to get updates into Ampache. Not fun.

    The new experiment

    I’m trying out a new system based on these components:

    • Jellyfin is a media player. It supports not just music, but also video (in fact, the emphasis is more on video). Notably it supports controlling various devices. Its normal frontend is a web browser; Jellyfin’s server won’t output audio to a device itself.
    • Mopidy is a media player with a web interface that does output audio to a local device. In normal use, it displays an interface to your music, letting you select, queue up, etc.
    • Mopidy-Jellyfin (docs) is a plugin for Mopidy that enables two things: 1) Browsing the Jellyfin library within Mopidy, and 2) controlling Mopidy from within Jellyfin. Mode 1 barely works, but mode 2 works perfectly. Within Jellyfin, I can “cast to Mopidy” and queue up things, seek, skip tracks, etc.
    • Snapcast is a generic solution to take audio from some sort of source and distribute it throughout the house, syncing each device (and with better syncing than LMS, too!). The source can be just about anything, and the docs include an example of how to set it up with Mopidy.
    • Mopidy has selectable web interfaces, and the Mopidy-Muse interface has the added benefit of having integrated Snapcast control. (Mopidy-Iris does as well, though it wasn’t documented there.) Within it, I can adjust volume on devices, mute devices, etc. I could also use the Snapcast web interface for this purpose.
    • The default Jellyfin Android app lets me stream media to the mobile device, as well as control the Mopidy player.
    • Finamp (F-Droid, Play Store) is a very nice Android Jellyfin music playing client, which notably supports downloads for offline playing, a feature the stock app lacks.
    • The Snapcast Android app (F-Droid, Play Store) isn’t strictly necessary, since the Snapcast web app is so simple to use. But it provides near-instant control of speakers and volumes.

    This looks a lot more complicated than what I had before, but in reality it only has one additional layer. Since Snapcast is a general audio syncing tool, and Jellyfin doesn’t itself output audio, Mopidy and its extensions is the “glue”.

    There’s a lot to like about this setup. There is one single canonical source for music and playlists. Jellyfin can do a lot more besides music, and its mobile app gives me video access also. The setup, in general, works pretty well.

    There are a few minor glitches, but nothing huge. For instance, Jellyfin fails to clear the play queue on the mopidy side.

    But there is one problem, though: when playing a playlist, it is played out of order. Jellyfin itself has the same issue internally, so I’m unsure where the bug lies.

    Rejected option: Jellyfin with jellycli

    This could be a nice option; instead of mopidy with a plugin, just run jellycli in headless mode as a more “native” client. It also has the playlist ordering bug, and in addition, fails to play a couple of my albums which Mopidy-Jellyfin handles fine. But, if those bugs were addressed, it has a ton of promise as a simpler glue between Jellyfin and Snapcast than Mopidy.

    Rejected option: Ampache localplay with mpd

    Ampache has a feature called localplay which allows it to control a mpd server. I tested this out with mpd and snapcast. It works, but is highly limited. Basically, it causes Ampache to send a playlist — a literal list of URLs — to the mpd server. Unfortunately, seeking within a track is impossible from within the Ampache interface.

    I will note that once a person is using mpd, snapcast makes a much easier whole-house solution than the streaming option I was trying to get working 8 years ago.

    #ampache #jellyfin #lms #mopidy #music-s9y #streaming

    https://changelog.complete.org/archives/10439-music-playing-both-whole-house-and-mobile

  24. It’s been nearly 8 years since I last made choices about music playing. At the time, I picked Logitech Media Server (LMS, aka Slimserver and Squeezebox server) for whole-house audio and Ampache with the DSub Android app.

    It’s time to revisit that approach. Here are the things I’m looking for:

    • Whole-house audio: a single control point for all the speakers in the house, which are all connected to some form of Linux (Raspberry Pi or x86). The speakers should be reasonably in sync with each other, and the control point should be able to adjust volume on them centrally. I should be able to play albums, playlists, etc. on them, and skip tracks or seek within a track.
    • The ability to stream to an Android mobile device, ideally with downloading capabilities for offline use.
    • If multiple solutions are used, playlist syncing between them.
    • Ideally, bookmark support to resume playing a long track where it was left off.
    • Ideally, podcast support.

    The current setup

    Here are the current components:

    • Logitech Media Server, which serves the music library for whole-house synchronized audio
    • Squeezelite is the LMS client running on my Raspberry Pi and x86 systems
    • Squeezer is a nice Android client for LMS to control playback, adjust volume, etc. It doesn’t do any playback on the Android device, of course.
    • Ampache provides the server for streaming clients, both browser-based and mobile
    • DSub (F-Droid, Play Store) is a nice Android client for Ampache providing streaming and offline playback

    LMS makes an excellent whole-house audio system. I can pull up the webpage (or use an Android app like Squeezer) to browse my music library, queue things up to play, and so forth. I can also create playlists, which it saves as m3u files.

    This whole setup is boringly reliable. It just works, year in, year out.

    The main problem with this is that LMS has no real streaming/offline mobile support. It is also a rather dated system, with a painful UI for playlist management, and in general doesn’t feel very modern. (It’s written largely in Perl also!)

    So, I paired with it is Ampache. As a streaming player, Ampache is fantastic; I can access it from a web browser, and it will transcode my FLAC files to the quality I’ve set in my user prefs. The DSub app for Android is fantastic and remembers my last-play locations and such.

    The problem is that Ampache doesn’t write its playlists back to m3u format, so I can’t use them with LMS. I have to therefore maintain all the playlists in LMS, and it has a smallish limit on the number of tracks per playlist. Ampache also doesn’t auto-update from LMS playlists, so I have to delete and recreate the playlists catalog periodically to get updates into Ampache. Not fun.

    The new experiment

    I’m trying out a new system based on these components:

    • Jellyfin is a media player. It supports not just music, but also video (in fact, the emphasis is more on video). Notably it supports controlling various devices. Its normal frontend is a web browser; Jellyfin’s server won’t output audio to a device itself.
    • Mopidy is a media player with a web interface that does output audio to a local device. In normal use, it displays an interface to your music, letting you select, queue up, etc.
    • Mopidy-Jellyfin (docs) is a plugin for Mopidy that enables two things: 1) Browsing the Jellyfin library within Mopidy, and 2) controlling Mopidy from within Jellyfin. Mode 1 barely works, but mode 2 works perfectly. Within Jellyfin, I can “cast to Mopidy” and queue up things, seek, skip tracks, etc.
    • Snapcast is a generic solution to take audio from some sort of source and distribute it throughout the house, syncing each device (and with better syncing than LMS, too!). The source can be just about anything, and the docs include an example of how to set it up with Mopidy.
    • Mopidy has selectable web interfaces, and the Mopidy-Muse interface has the added benefit of having integrated Snapcast control. (Mopidy-Iris does as well, though it wasn’t documented there.) Within it, I can adjust volume on devices, mute devices, etc. I could also use the Snapcast web interface for this purpose.
    • The default Jellyfin Android app lets me stream media to the mobile device, as well as control the Mopidy player.
    • Finamp (F-Droid, Play Store) is a very nice Android Jellyfin music playing client, which notably supports downloads for offline playing, a feature the stock app lacks.
    • The Snapcast Android app (F-Droid, Play Store) isn’t strictly necessary, since the Snapcast web app is so simple to use. But it provides near-instant control of speakers and volumes.

    This looks a lot more complicated than what I had before, but in reality it only has one additional layer. Since Snapcast is a general audio syncing tool, and Jellyfin doesn’t itself output audio, Mopidy and its extensions is the “glue”.

    There’s a lot to like about this setup. There is one single canonical source for music and playlists. Jellyfin can do a lot more besides music, and its mobile app gives me video access also. The setup, in general, works pretty well.

    There are a few minor glitches, but nothing huge. For instance, Jellyfin fails to clear the play queue on the mopidy side.

    But there is one problem, though: when playing a playlist, it is played out of order. Jellyfin itself has the same issue internally, so I’m unsure where the bug lies.

    Rejected option: Jellyfin with jellycli

    This could be a nice option; instead of mopidy with a plugin, just run jellycli in headless mode as a more “native” client. It also has the playlist ordering bug, and in addition, fails to play a couple of my albums which Mopidy-Jellyfin handles fine. But, if those bugs were addressed, it has a ton of promise as a simpler glue between Jellyfin and Snapcast than Mopidy.

    Rejected option: Ampache localplay with mpd

    Ampache has a feature called localplay which allows it to control a mpd server. I tested this out with mpd and snapcast. It works, but is highly limited. Basically, it causes Ampache to send a playlist — a literal list of URLs — to the mpd server. Unfortunately, seeking within a track is impossible from within the Ampache interface.

    I will note that once a person is using mpd, snapcast makes a much easier whole-house solution than the streaming option I was trying to get working 8 years ago.

    #ampache #jellyfin #lms #mopidy #music-s9y #streaming

    https://changelog.complete.org/archives/10439-music-playing-both-whole-house-and-mobile

  25. @kelbot @redeagle @ampache Oy, and the #Jellyfin backend for #Mopidy works instantly for the artist list, but its playlist, search, and album list are broken.

  26. @kelbot @redeagle @ampache Trying this out! The #Mopidy-Subidy plugin doesn't cache the Ampache responses, meaning that things like displaying the Playlists take forever... each time... I'm not sure this will be usable... Drat!

  27. De Música y CLI

    Desde mis tiempos pre Gnu/Linux, siempre tuve un reproductor de música a mi lado, y siempre mantuve una colección de música en local, en mi HDD. En esos tiempos fue el Winamp, nada que no se replicara en mi temporada dual boot (6 meses tal vez), y posterior ingreso a la era Gnu/Linux (tiempos de reproductores que no recuerdo su nombre, pasando por Amarok, Clementine, etc) hasta lo que llego con la shell, cmus y MOC (principalmente). Ya el <3 por la CLI, estaba desbordado.
    Los años pasaron y mantengo el cariño por MOC (Music on Console) como mi principal forma de reproducir música, y claro que esta por allí MPD o Mopidy (desde hace algunos años atrás) pero ya que siempre lo tenia en local y no requería mucho más, siempre eran delegados. venera.social/display/85a863ed