Skip to main content

Like other users, I’ve been toiling with getting Sonos to index and use my local Music collection.  I finally ran across this article:

https://support.sonos.com/en-gb/article/share-your-macos-music-folder-with-sonos

I otherwise granted Sonos full disk access, and yet it still could not use “My Music Folder”.   This makes no sense.  Further, it makes no sense that to use my music collection, I’d have to go through yet another protocol (SMB) -- granted this works, and I’ll take it because it’s been a lot of trouble.

But my question is why?  Why can’t Sonos simply access My Music Folder?   I even shared it, no luck.  SMB it is, for now, but this really shouldn’t be the solution for Sonos and Music on the same physical system.

I’m going to hazard a guess here, since I’m not an engineer, but it is likely because the player involved is not the app on your local machine, but instead the app running on your Sonos devices that is playing. That app is a Linux based kernel, and needs to access the data via an interface between the two, which can’t be based on the local OS, whether it happens to be Mac or Windows, but instead across a common SMB connection. 

If Sonos was using a ‘player’ on your local PC/Mac, it likely would be able to access the music via local permissions and protocols, play it, and then finally sending the result to the speakers. Instead, Sonos plays from the speakers, not the device where the controller sits, so the speakers need a better way to get the data, which they then play. 

For what it’s worth, this is why you can’t play local files from a mobile device, either. Both Apple (iOS)  and Google (Android) have blocked the ability for apps to access data on the OS that isn’t part of the app itself. Since Sonos only reads data, and doesn’t ‘own’ it, it is unable to connect to this data. 


Thanks for this, I hadn’t considered the speakers would be doing something -- I had assumed the Sonos app was a central broadcaster or content provider to the speakers.   Maybe this accounts for some of the weird sync issues I’ve been seeing, especially with the Move, when changing songs or streaming channels.

 

I also noticed when we had an Internet outage here the other day, Sonos just would not work locally -- and it was actually reporting an older Macbook URL (which is now shut down).   I’ll have to keep an eye on this one.


All Sonos devices are just small computers driving a speaker (or other device type), each has a CPU, memory, network card, etc. All Sonos activity is really done there, your controller is merely an interface to that networked system. 

Which is why you can close any controller once you start playback on your Sonos, or even have multiple controllers connected to a system. I happen to use around five devices to control my system at various times. They all connect and reflect what my Sonos system is doing. 


True, for Windows, IOS and Android.

But if you stick with Linux and use the Noson controller on a Linux-based PC, it has a “This Device” source option, which allows you to play from a directory on the PC that the controller is running on. It works - though I don’t know anything about the underlying mechanism!


Easier to maintain one code path than multiples that depend on each available device, I suspect. I would think Sonos is working for widest options, not setting up for multiple individual devices. I know I would, in their position.