this post was submitted on 05 Nov 2023
20 points (100.0% liked)

homeassistant

12055 readers
35 users here now

Home Assistant is open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server. Available for free at home-assistant.io

founded 1 year ago
MODERATORS
 

I ran across this post on the Home Assistant forum, which shows something very similar to what I want to achieve. However, there is something that is unclear to me: with Snapdroid, will I able to stream all audio from my Android device to the Snapcast server so that it doesn't matter which app I use, or is this just some control device? I couldn't make that clearly out from the GitHub repo of Snapdroid.

My desired use case is to use this in the same way I would with AirPlay on an iPhone, and be able to use my music player connected to my Jellyfin server, my podcast application or my YouTube frontend application to play audio that is cast to the Snapcast server.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 1 points 1 year ago (1 children)

Ok, thanks for clarifying that - as I feared. I elaborated on my progress into finding a solution to this below, in case you have any interest in it or any thoughts that could help me along.

[–] [email protected] 2 points 1 year ago (1 children)

I have not yet found a solution I would be happy with because you always have to sacrifice on something. Your scrpcpy idea is neat and something I haven't though off but:

  1. others (visitors etc.) wouldn't be able to "just use it"
  2. it would drain the battery
  3. on none-rooted devices the adb network connection is not permanent I think? either way, getting the connection is not as simple as "pressing a button to cast"

As it stands, I have given up on integrating mobile devices into my multiroom audio setup for many reasons. Right now I have my HTPC as the snapcast server and RPIs (soon to be old surface 4) as clients dotted around with a special script on the server-side to do some magic in regards to Kodi.

By chance I came across fcast which sounds interesting but relies heavily on adoption which you will not see in apps like youtube, youtube music, spotify etc. so (to me) it has no relevance.

[–] [email protected] 1 points 1 year ago (1 children)

It would be nice to have other people being able to use it, but it is not a top priority for me. Also battery drain is not that much of an issue as it will only be used while at home. The last point is a bit more concerning though, so I will see if I can test this out and see how well it works. And yes, the connection seems to be the biggest issue here. But it seems that once configured, it only requires running 'scrcpy' on the recieving end. And KDE Connect can be setup to run commands remotely, for example I just set it up to open VS Codium in a specific folder from my phone. I can't seem to add that command as a quick access tile (which would be my preferred option), but I could add it as a widget on my home screen for quick access so that conncetion is a button press away. How long the connection can stay for I don't know, but I will see if I can't test that out this week.

Did you check out balenaSound by the way? If so, what difficulties did you run into that made you discard it?

fcast looks nice, but if I understand it correctly it would require implementation in every specific application. I think if I were to jump onto the Grayjay-wagon, that could be nice, but I would love for my solution to be app agnostic.

[–] [email protected] 1 points 1 year ago (1 children)

As long as you are connected, I think network adb will stay active but if you leave your network f.e., you have to re-enable it in the developer options. But don't take my word for it. Feels like google changed this behaviour every major release with android.

Did you check out balenaSound by the way?

On their blog they say: This project is made possible by the awesome work of various open source projects, including Shairport Sync for Airplay, Raspotify for Spotify Connect and Snapcast for multi-room audio sync. So they "just" glue existing stuff together which leaves you with roughly the same limitations as if you would do it yourself. It might allow spotify to be used with snapcast for multiroom but as I'm a yt music user I didn't digg any deeper.

fcast looks nice, but if I understand it correctly it would require implementation in every specific application

Correct. That's what I meant with "adoption". Really hope it finds adoption but I really doubt it :(

[–] [email protected] 1 points 1 year ago

As long as you are connected, I think network adb will stay active but if you leave your network f.e., you have to re-enable it in the developer options. But don’t take my word for it. Feels like google changed this behaviour every major release with android.

Oh, if that is the case, this will not work. I'll test it out later this week to see.

On their blog they say: This project is made possible by the awesome work of various open source projects, including Shairport Sync for Airplay, Raspotify for Spotify Connect and Snapcast for multi-room audio sync. So they “just” glue existing stuff together which leaves you with roughly the same limitations as if you would do it yourself. It might allow spotify to be used with snapcast for multiroom but as I’m a yt music user I didn’t digg any deeper.

Hmm, maybe I misunderstood it. Here is a blog post that shows how it can also use Bluetooth. To me, it sounds like that makes an app agnostic solution as long as you are fine with using Bluetooth. My understanding is that you then just connect to one of your speakers with Bluetooth when you want to cast, and you can then control which speakers the audio should play from. I will research this more. I should order a 3.5mm jack extension to the Pi Zero W, which is the only part I miss to be able to set up a proof-of-concept at home.