Separating the internet-connected (and therefore low life-expectancy) bits from the analog sound-reproduction (and therefore expensive and high life-expectancy) bits is a great way to build a solid system that can grow and adapt over time.
This is a super cool and gratifying way to deliver the internet-connected bit at low cost (at least for those with hardware inclination, and access to means of production). For those without, Sonos' Port product does a great job filling the same niche. Though at $450 its a ... multiple ... of the cost of the project presented here!
Thing is, cool as this box is, this outputs analog and has DAC inside it. One of the key reasons that people wouldn't use Alexa input, Muso Cobblestone (these were pretty great in all fairness), etcetera long term is that the internal DACs were not even remotely "audiophile" quality.
If these devices had some sort of digital output so we could attach our own DACs, it would be much nicer.
For similar reasons, I think the future of mobile connectivity is a screenless device that handles your WiFi/cellular connectivity, CPU, and storage, while connecting wirelessly to speakers and displays around you as needed. Including an earbud or screen device you can carry when you so choose.
I don't really know why they stopped selling chromecast audio (outside of wanting to sell more speakers I guess), but I have (and had) a bunch of those and bookshelf speakers with Lepai T Amps. It worked great.
I've though since replaced most of them with Nest Audios, mostly for the WAF.
A hack is to use a regular chromecast and a hdmi to rca/spdif adapter/splitter. Works pretty well and you can get them pretty cheap (in the ballpark of $20). But it will be more expensive than the chromecast audio unfortunatley
Wow this is a super impressive project. I was originally expecting a device built around a Raspberry Pi, but this is a completely custom designed linux board!
Raspberry Pi's analog audio out is not very high quality either. I run a HiFiBerry on a Raspberry Pi, and while it's really delicious to use (good sound, good app, good ergonomics), it's just mount, flash and play. It's not something you make from scratch.
I'd love to have time to work on something similar. My targets would be different audio-quality wise, but it's a very nice project. Kudos to its maker.
I use a cheap USB audio device with my Pi. I got a constant buzz through my CRT with the built-in analog output. The USB device fixed that and all other audio issues I had.
> Raspberry Pi's analog audio out is not very high quality either.
On this point, can't you use some USB DAC ? I know nothing on this topic but there must be something that sits between "Raspberry Pi sound quality" and "multi thousands $ DAC".
You can, but I’m not very knowledgeable about USB DACs which works on Linux.
The HiFiBerry amplifier I use is $50, has great software and enough power and top notch DACs from TI. On top of that it’s a hat, has a dedicated steel enclosure and everything is powered by a laptop brick.
I'm not sure about the specifics of the protocol but I've used tens of DACs and only ever run Linux, and I've never had a problem with compatibility. I'm pretty sure the USB audio standard is pervasive enough so that basically any DAC you buy will be compatible. On all the DACs I own I also have no trouble configuring the protocol to higher bandwidth settings like 24-bit 192 kHz signals.
That's good to hear. It's not that I believe that they won't work, but because I didn't need such setup. I use a desktop PC as my main battlestation and I use a Xonar D2X on that (over PCIe), and it works beautifully, so I didn't need anything else.
For the Raspberry Pi, I needed something tidy, like this box. My father gave his HiFi system to me due to space constraints, but kept a nice set of speakers, so I needed something comparable in clarity, in absolute smallest and sturdiest package. HiFiBerry allows me to do that.
Moreover the software is co-developed with Bang & Olufsen, and it's extremely polished, like the hardware itself. My setup is pretty lean, but HiFiBerry can do some serious stuff like B&O self-tuning and custom DSP filters for sound shaping (for room, for taste, for fun).
The result is a literal black box with power in and speakers out. I added a SanDisk Fit USB drive for local music storage. It can run spotifyd, AirPlay 2, direct BT, local files and more. It packs a decent punch, runs cool, can be used from anywhere (runs a webapp on a server, advertised with mDNS). If there's an update, it installs and reboots automatically.
The web app is great for use in your house, the Spotify plugin is first class - it's supported as a target in your Spotify app, or you can browse straight from the webapp, which means even a guest on your wifi can easily pop on and help pick the music.
Another great alternative is HiFiBerry which produce their own DACs and cases that you can add a Raspberry Pi to.
Personally I have a RPi4 with the DAC2 HD and a steel case which I’m very happy with.
I think you can run Volumio on these too, but I prefer the simpler HiFiBerry OS distribution. You get AirPlay 2, Spotify and many more ways to play music. All connected to your analog hi-if equipment.
Volumio is great, but I am now using moOde audio player (http://moodeaudio.org/) which is similar, but has much better DSP, in the form of CamillaDSP (it actually works..), also I find the GUI more intuitive.
I don't mean just a lightweight plex client, but a headless plex audio sink. Plex supports , "passing" your stream session over to another client on the local network now, I'm not sure what protocol it is exactly but my Tcl Roku tv is compatible with this and its quite handy to be able to queue some stuff up on the mobile app them send it over there to play rather than fumbling with the remote and the handicapped Roku app.
We should just be cutting out the middlemen like Spotify, and buying music directly from musicians. Then, we can just use standards compliant hardware, of our choosing, to play the music in any format we want (many modern musicians release as flac, old school musicians still sell CDs; either play as lossless, or recompress to chosen target).
I'm using my app Tracknack for discovery and staying up to date with releases by artists and record labels I like. This app, of course, is very much integrated with Spotify and does not really work as a way of cutting Spotify out of the picture. It does, however, allow me to support lesser known artists via Spotify streams.
what about last.fm. Got an account like 10y ago, connected to my stream. Looks alive and well, probably selling my data but is there anything to know from last 5y ?
Did this for years. Finally gave up last year. It’s so much work, discovery is a huge pain, listening on all devices is a pain. None of it was worth it.
Now I just use Spotify and don’t care. I don’t need the extra work in my life.
Just wanna throw this out there: Plex now has an app for accessing music in a way better way than their movie/series-app, called Plexamp. [1]
I dont see it solving discoverability yet, but it worked completely fine on my Android devices. It also does some automatic tagging of your music to generate dynamic playlists.
it is limited to plex pass subscribers for now though. i'd say it's worth trying a free trial at least.
One method that has worked for me is following other users that actively buy music on Bandcamp that I like. I get an email digest when they buy new music. That's a strong signal to me: I already know they have similar tastes by seeing what they have purchased in the past, and I can conclude that they really like the music they are willing to spend money on.
all my friends use spotify and everytime i am with them i hear the same music. sure its the music they like, but its the same over and over and over again with no variation. They tell me spotify is great at discovery but i havnt heard it.
i listen to djs, radio stations and other internet channels that mix the music i like into new and exciting compositions.
Yeah, I used to use Spotify for discovery when the radio function acted like...radio. Now it's just a 30 track playlist on loop generated based on things you have liked. So absolutely fucking pointless for discovery.
I am SCREAMING OUT for a service that was like the old Spotify radio.
Currently just going to gigs again and finding bands through bandcamp the organic way is what I'm doing.
Also, here is a script I wrote to download and extract a Bandcamp download link and import it with the beet CLI music library manager:
imo it tells that spotify has a conflict of interest were it sells "access to all music" and on the other hand has the means to steer customers towards economically advantageous consumption.
I find many wrongs with Spotify, but this isn't one of them. My Spotify Discover Weekly is usually great, up to 50% great discoveries, and they're completely different in both genres and time periods to friends' lists.
I guess you just have musically eclectically challenged friends.
I was with Google Music for years, until the YouTube music fiasco then I jumped ship to Spotify.
I found discovery excellent in Google but Spotify is horrible, it thinks I want to listen to Pop because I put a playlist of "top" or "charts" on while I work, when really I want rock/metal albums and can't discover them for the life of me.
Doesn't it have those made for you thingies that change weekly or so? In my case it makes em for the varying genres i listen to so even tho i listen to some techno at work i can pick a metal playlist with new stuff.
I noticed some mixes it makes but it has talk shows, podcasts etc thrown in and I'm really not into that.
Also, because it has basically ruined my music preferences, despite me telling it what I want to be recommended, it makes recommendations for "Dua Lipa" and "Doja Cat". Nothing against either of them, but not really what I was looking for.
Yes Spotify is great at discovery. I've discovered plenty of music thanks to it during the years – lately, for example, tens of Japanese jazz recordings.
This is true; I do reluctantly pay for Spotify. But that'll always be the case with more equitable, less profitable, ergo less well-funded alternatives. And it has been consistently (slowly) improving over the years. Worth supporting imo
Bandcamp really is a fantastic company. There are some barriers to listening to music on it directly (some intentional) but I've found so much great music through their recommendations.
I still pay for streaming due to the convenience of typing most songs and playing it instantly... but if I like something enough to click the heart button I'll often hop over to Bandcamp to see if I can pay the artist more than the $.0001 they get for the stream. Even dropping someone a dollar is literally 10,000 times more support.
This is the way. I also use Spotify because it makes most of my music available instantly on all of my devices and the discovery is good enough.
But that $150 for Spotify is only a small fraction of my yearly music spend. With most of it going to concert tickets, merch at concerts and merch/downloads on Bandcamp to support the artists I like.
Yeah exactly, and with covid making concerts uncomfortable for me for the foreseeable future I've just been doubling down on bandcamp and merch purchases (but wow I miss live music).
I dropped Spotify after that Facebook fiasco, now I just listen to my local college radio. The website does a good job of telling me what music they’re playing, and it ranges throughout the day from old-school jazz to techno or new age. The radio is nonprofit with no ads, and I’m close enough to get both HD1 and HD2 channels, So if I’m not digging what’s on one channel, I’ll just switch to the second.
Hear, hear for college radio! The local college radio station is one of my favorite places to listen. They've got great variety. Depending on when you tune in, you might hear 'indie', folk, metal, electronic, or something completely different.
Why should we? You can do that if that's what you want. I prefer using Spotify because I can listen new and random artists without knowing their names and explicitly buying their music. Spotify provides me with a service I'm happy to pay for and I'm happy they take a cut from.
Well for one, if Spotify ends up being the only way musicians get paid, the pool of new and interesting artists is going to end up way, way smaller. I actively try to help independent artists succeed by giving them money directly, even though it ends up being somewhat inconvenient to me. Even the biggest-name independent musicians talk about how laughably little money they make from Spotify streaming compared to actually selling albums and tracks.
For another, pure streaming means you're locked into the streaming service's player, having internet access, and having a device you can run a client on. Just having the audio files is vastly preferable to me.
I prefer buying physical media.
I am partial to CDs but that might just be my age.
When CDs were everywhere, getting them was easy and
prices more competitive.
The last CD I wanted I had to order from Germany and the company really took far too much for the shipping.
(€ 15)
Once it arrived in Norway (ECC, not EU) I had to pay taxes on top of it.
Media downloads from the artist is good in that I get to direct the money directly (or at least a direct as I can) to the artist (I guess most companies in that space take a cut)
I have not lost a file in 10years. I have a NAS with backup to the cloud, nothing fancy just a single drive NAS with automatic rolling backups. Important files go to multiple clouds.
There does seem to be an increasing interest in physical mediums. Or perhaps that fad has faded already.
I know some of the younger guys at work have started collecting vinyl. For a short period, it seemed like cassettes were hip too. I have no idea if that ever got going.
Many musicians already sell their music directly in unencrypted/no-drm formats*, mainly because of how widespread streaming is. The advent of music piracy is long over and the ones that still do it weren't going to use a music streaming service or purchase the record anyways.
* Obviously, not all of them, but i've purchased 'digital download' versions of albums from artists signed with UMG many times.
I was wondering what the advantage is to building something like this, compared to just using a bluetooth adapter that connects via RCA cables (like this box does).
I suppose one advantage is that if you walk far away from your stereo, you can loose bluetooth connection and drop audio, where this device has it's own WiFi connection and pulls Spotify audio directly, and is just manually controlled via your phone.
Bluetooth is inherently lossy/compressed, whereas Spotify Connect directly streams 320kbps to the client device. I’m not sure how much that advantage is negated on a device with such a cheap DAC, but cheap DACs can be good. Bluetooth audio is always going to have some quality compromises, and it looks like this device is intended for a component stereo setup where quality matters.
Worth noting streaming Spotify over Chromecast (like on a chromecast audio) is oddly enough limited to 256 kbps AAC. The TV chromecast devices support Spotify Connect, I guess because they boot the full app GUI.
- You have to manually disconnect/reconnect it every time
- You can't take calls while playing music
- Only one person/phone can connect to the speaker at a time
- It drains battery
Having the speaker stream directly from the internet while having your phone (or multiple phones, or web browser, or voice etc.) acting as a remote is a game changer.
I'm no fan of bluetooth for music, but wouldn't an internet connected speaker also drain battery? And are you really wanting to simultaneously take a call and listen to music? Will the person on the other end appreciate that? Seems like an inconsequential limitation to me.
Fully agree with your other points. And they're enough on their own.
> And are you really wanting to simultaneously take a call and listen to music? Will the person on the other end appreciate that? Seems like an inconsequential limitation to me.
You could be hosting a party, for example, and want to leave the room to take a call without interrupting the music.
It would not drain your phone battery. The speaker is almost always going to be plugged in anyways. And stepping into another room to take a call while others are listening to music isn't all that uncommon.
A single use speaker is not a game changer, it's just Spotify selling you useless gadgets. But if you're interested, I've got a mouse to sell to you that can only work on Word, and a keyboard that can only type the words "game changer".
In practice, this is just a terrible speaker that can only ever play Spotify. It's a waste of energy and resources that you will throw away within a year.
Still can't believe they stopped manufacturing these. Such a perfect and cheap solution to the same problem as OP: streaming audio over WiFi to a "dumb" speaker.
Exactly what it looks like, pretty cool. My Denon receiver has this built in. AVR-3600H, I love it and can send music from my phone, and still use the remote for the reciever. Song and title is displayed on the tv, it I turn it on.
* Bluetooth offers limited range and uses more battery, and is usually interrupted if someone calls, but supports any application that can play sound.
* Spotify Connect is its own Spotify client and downloads the audio stream from Spotify which allows freedom to roam. But the implementation is indeed limited to Spotify and doesn't support niceties like volume normalization or nerdy details like crossfade (and perhaps not gapless playback)
Scary anecdote: I was at the Verizon store, and the clerk attending to me was getting really hung up on some stupid allegory about L Ron Hubbard and phone salesmanship, so I started reading the news until he tired himself out. I swiped down into my status bar and saw my Spotify widget was playing something, so I paused it assuming that it was just me leaving it on at home. A few moments later, it was playing again, and someone on the other end repeatedly fought me for it. I ended up ditching our friendly salesman and resetting my password in the parking lot, but it's still one of those Orwellian moments that reminds me of the scale of the internet.
I use a Miccus RTX Home on my non-Bluetooth home receiver. I can routinely get a few hundred feet of range from it at my house. Granted I don't have a ton of 2.4GHz noise, but it's noticeably much better range than any other Bluetooth device I've used.
There's also a version with a built-in class D amplifier and color display. On the software side it's neatly packaged with a web UI for configuration, as well as support for snapcast (multiroom), airplay and pulseaudio besides spotify.
I'm not affiliated with them, just very tempted to build one.
A $30 Raspberry Pi with free Volumio serves the same purpose for me, and I can attach a DAC hat to the top of the Pi for high fidelity audio - but this looks so much better with it's beautiful wood finish.
Any recommendations for the DAC? I'm using a USB sound card right now on my Volumio Pi but haven't been thrilled about it. What I really want is SPDIF coaxial or optical output, on the cheap.
Before I got the Topping E30 DAC, I was using the Apple USB-C headphone jack adaptor, which is a great and cheap little DAC. You can read the review with measurements on Audio Science Review.
If you want SPDIF output, you should consider the Topping D10s, also reviewed on ASR.
I know somebody who got the spdif output working on the Quartz64 [1] with a minimally patched mainline Linux kernel. They needed some custom add on board, but it was cheap from what I understand (~$15).
You can ping CounterPillow in the quartz64 room on libera.chat if you want more info. They mentioned that they might be open to shipping boards to people.
I’ve been using a HifiBerry DAC (DAC+ DSP) with a RBP and their HifiBerry OS which comes with a bunch of streaming services built in, the DSP DAC also allows you to upload a profile to adjust for room acoustics.
If you want digital out like SPDIF--as opposed to a DAC (i.e., digital-to-analog converter)--try the HifiBerry Digi line, any of which should do the job just fine. Prices start at ~$25.
You can use the DAC on the pi itself; you will not be able to tell the audio quality difference on any equipment you own (your ears included).
There is a stereo mini jack audio output on the pi. Just use that and don't waste your money on audio woo.
(This is also a standing bet of $5000 to anyone who can pass an ABX in front of me to discern the difference between the two in headphones of their own choosing. You pay if you lose.)
Sorry, but I did try this, and it sounds absolutely awful. There's a ton of noise. I don't know if my Pis (and I've tried 3 of them) are different from yours, but a cheapo $20 USB sound adapter already has a much better noise floor than the built-in one. This is regardless of what I connect them to.
There's "audio woo" where you spend $1000 for a USB to SPDIF adapter that literally does almost nothing, and spending $50-100 for a decent DAC that doesn't have an audible hiss.
I've never heard the pi DAC... I wonder how good it is. I have some great headphones and great ears. But yeah I agree the built in DAC should be fine for what people seem to be using this for (playing music in a group setting, or while doing chores).
If you plug headphones into the Pi's minijack and turn the volume down to a comfortable listening level, the noise floor on the Pi DAC is very, very obvious. It sounds like hell. Try it yourself before you lose your $5000. :)
If you are in the apple ecosystem an airport express provides a similar feature set (airplay to analog stero line out) and can output to multiple airports (in different rooms) simultaneously.
Granted its not as headless. a iDevice (or airplay compatible source) needs to be running.
I have analog stereos in a few rooms and the airport express provides a nice way for anyone in the house to cast music from whatever app they like. and with modern iOS you can even output to different zones for different apps.
The airport expresses are roughly $50 a pop, less if you are patient.
One major issue is that Spotify for Mac doesn't work with AirPlay. It's confounding. They refuse to build it.
Spotify has also refused to integrate with HomePod. The options are either stream all audio output, download something like AirFoil to stream only a single app (inconvenient, not friendly for non-technical users), or switch to Apple Music.
That's true, although for my purposes AirFoil has been worth the (admittedly too high) price. It also can output audio to bluetooth speakers and airplay devices at the same time, and has quite nice latency compensation built in.
Wish it was free, or better yet built into the OS, but it's a very useful piece of software.
Huh. I never knew it never worked with AirPlay, as I rarely ever use Spotify.
Being in the ecosystem already, Apple Music just makes sense. Does Spotify even have an Apple Watch app yet that allows on-device downloads for running, the way Apple Music does?
> Connecting to a Wi-Fi network is simple enough. Just download the Spotify Box app and give the pushbutton a press to start searching for networks. Then you can choose your Wi-Fi network through my app to get connected.
This is the same process that iRobot does to connect their Roomba cleaners. Is it done over Bluetooth maybe?
There are a few methods for unknown device connections, but it's usually one of, or a combination of:
- a special qr code format that informs an app about the wifi network/wifi password (and other setup info)
- an app scans your wifi networks and joins the one that starts with the device's prefix (not supported on iOS except via a special api[0])
- app requests bluetooth permission, connects to the bluetooth accessory, and from there it exchanges temporary wifi AP info or does the entire setup over BLE
I see this trend continue: "Bring Your Own Client" from examples like this to pure software like the apollo reddit client or youtube client featured a few days ago.
If you want to do something like this at home, I fully encourage you to try it out! It's an afternoon project if you've got an old laptop laying around, bonus points if you know your way around Unix. The key software component here is spotifyd, a Spotify daemon for any Linux boxes. So if you have a spare Raspberry Pi/Laptop/Smart Fridge that you'd like to bless with Spotify superpowers, it's really only a few keystrokes to set up!
I dove down this road and was going to build something like this to pair Spotify Connect with my new Focal Solo6 Be's, but ended up settling on a Cambridge Audio CXNv2 network streamer instead.
Cool project! I might venture down here again in the future, is a great thing to write about.
If you are in the US you may not know but years ago Pandora closed down in most other countries, so I wouldn't be surprised if their API are geographically locked as well.
As someone who is working on an embedded project - I just want to say, this is very impressive. I didn’t understand half of it, but you’ve given me enough to research.
Not sure if this helps, but I’m paying $75 per hour to do bits of what you’ve have done here.
Sysops would be relating specifically to the software/OS side of things, answering questions like "how can we deploy a lightweight software experience that compliments our hardware experience?"
Only reason I bring this up is because I recently did a similar project for my family. You can salvage basically any old x86 board (or brand new, Linux-running ARM chip for that matter) and install a couple Linux daemons that enables it to act as a hyper-thin (total memory footprint under 250mb) Spotify client.
Lord knows how viable it would be to run on embedded hardware, but the current state of the Rust-based Spotify infrastructure looks very well maintained. In it's current state, I'd say the outlook is very good.
Not the author, and I'm also not sure I fully understand your question, but am assuming 'cast or airplay' refers to the method used by mobile devices to redirect AV streams to different devices.
Both those solutions still require a spotify client somewhere to interact with the spotify api. The spotify client is still ultimately responsible for determining what to play, where to play from, and what stream URL then needs to be 'cast' to the device.
The box therefore running it's own client independently means you can still control it remotely, but it no longer hijacks control of all audio output on your mobile (or other) device.
spotifyd also implements the Spotify Connect protocol, which enables you to control it through the Spotify app (mobile, desktop, or web), while still retaining independent audio output for other apps on your devices.
This is true for AirPlay, but not really for Google Cast: While a Cast-capable device is required to initially launch Spotify, the Spotify Cast app is a full-featured Spotify Connect client.
For example, you can launch Spotify on a Google Home and control it from any device logged in to the same account, regardless of whether it understands the Cast protocol, is on the same network etc.
I suspect that once Spotify offers HomePod support, the situation might look somewhat similar for AirPlay (since being able to continue streaming with your phone out of battery etc. is possible on Apple Music on a HomePod already).
I kinda knew this since I think the feature you described is also available through Alexa/Echo, but I never really took the time to think about what was going on behind the scenes.
However, I'm still struggling to understand what is going on in your example.
When you control Spotify from your phone (volume++, next, new song, etc), how does Google Home know to do something?
When you tell Google Home "google play never gonna give you up", how does the Spotify app on your phone know how to reflect what's playing on the Spotify app?
Technically I can imagine that there is a shadow state of your Spotify instance sitting out in the cloud somewhere, but what are the mechanisms that make all this work together? Is this part of the "cast" protocol/architecture? Is this Spotify specific IP/tech that they can push on Google and Alexa to include on their IOT/smart services since they have the clout and pull?
Do you have any good links (not too technical, not too lite) on how this works?
> but am assuming 'cast or airplay' refers to the method used by mobile devices to redirect AV streams to different devices.
Yes, thank you for phrasing it better.
I don't think what you said is 100% true. I have an old chromecast that is capable of playing Spotify without the "spotify client" (i assume you mean spodifyd).
From what I understand about chromecast is that it uses a "cast protocol" (?) and therefore doesn't require "clients" (xyzd) for each media service integration.
Unsure about airplay though.
I imagine the reason they chose to use this spotifyd approach might be
- There is no "cast client" or "airplay client" available
- Audio properties of the Spotifyd client are superior to the alternatives
- They only use spotify
- just because they wanted to
Yup, i understand the idea behind these clients and why they're superior to bluetooth.
Disadvantage of this is that the DAC in the echo dot is quite low quality. On a quality HiFi it doesn't sound very good. I started with this, and then moved to an Echo Link, which allowed me to output digital and then use the DAC in my amplifier, I may upgrade to an external DAC at some point, though I suspect I may have diminishing returns here, given the source is Spotify.
I just make do with a Bluetooth to RCA dongle. The upside is it plays any bluetooth audio, not just Spotify. I can even connect it via my phone then control Spotify on my phone through my PC. Also no other apps or software required. It "just works" as far as bluetooth "just works".
The big problem with just plain Bluetooth to me is that “as far as Bluetooth ‘just works’” is “not very well” in my experience. The usual problems with connects and disconnects are annoying, but I’ve also grown impatient with this notion that we can just use our phone for everything. It drives me bonkers, for example, to have my music rudely interrupted by a text message sound instead of just having a subtle ding come from my pocket while the music continues to come from my stereo. Or that I can’t make a phone call while the music continues. Or to have my phone ring at stereo volume. I just want my music to be separate, I guess, which is totally possible through software, but none of our devices actually seem to have features that allow that. So a dedicated device is ideal, IMO.
A similar issue with Bluetooth for me is that that if my phone is on my pocket, my body is readily blocking the signal, as it turns out water is great at absorbing 2.4ghz. Standing phone pocket away from my Bluetooth speaker is enough to interrupt the music.
This is a super cool and gratifying way to deliver the internet-connected bit at low cost (at least for those with hardware inclination, and access to means of production). For those without, Sonos' Port product does a great job filling the same niche. Though at $450 its a ... multiple ... of the cost of the project presented here!