[HN Gopher] Ask HN: Why isn't there a standard network audio pro... ___________________________________________________________________ Ask HN: Why isn't there a standard network audio protocol? Having been frustrated again in using bluetooth from a computer to a smart speaker -- ugh! I swear connections only work half the time, and it isn't due to RF interference -- I'm wondering why there isn't a standard protocol for transmitting audio over the network. I think it would be so much easier to use. [I'm talking about having my devices at home talk to each other. They are already on the same network.] Edit/Addendum: Are there any streaming audio protocols that work from Mac/Windows/iOS to Amazon Echo Dots? I'm looking for a drop-in replacement for bluetooth audio streaming, where I can play sounds on my computer (ex. a youtube video) and hear it on a louder speaker. Author : armagon Score : 78 points Date : 2022-04-14 14:30 UTC (8 hours ago) | incomingpain wrote: | I too found bluetooth to be unreliable. | | For that reason, I have extensively worked with pulseaudio over | network. There is no UI that works for this. NTP for some reason | is important which seems like bad design to me. zeroconf doesn't | work at all. | | Once you get it working... dont dare change anything. It will | break in inexplicable ways that drive you up a wall. | geekuillaume wrote: | There are some projects like Snapcast[1] or SoundSync[2] | (disclaimer: I'm the creator of Soundsync) to let multiple | devices communicate together on the same network. The | transmission-side isn't that complex: you choose an audio codec, | transmit chunks of data and add a synchronization layer (to keep | multiple outputs in sync and to correctly delay video playback to | match the soundtrack). The bigger problem is building an | ecosystem big enough to make it attractive. Bluetooth sucks but | is everywhere. | | [1] https://github.com/badaix/snapcast [2] | https://github.com/geekuillaume/soundsync | mrandish wrote: | I hadn't seen SoundSync before. It looks neat. | | Like a lot of other people doing (or trying to do) Whole Home | Audio, I'm using the Home Assistant open source platform as the | central automation controller. You may want to look at creating | a Home Assistant integration for SoundSync as it will expose it | to the massive HA community (https://developers.home- | assistant.io/docs/development_index/). | armagon wrote: | Ooh, SoundSync sounds awesome (no pun intended). | ocdtrekkie wrote: | That looks really neat, I'm not this far in my home automation | system dreams (yet), but as I get closer to settling on how I | will communicate back and forth to each room, I may need to | take a closer look here. | jbverschoor wrote: | Multi output audio is one thing, but for me, something similar | to spotify connect (having one master player, either elected or | dedicated, and the others are remote controls for it, is more | important). | | I'm boycotting spotify, so I'm looking for something for | soundcloud, deezer, or youtube music. | | Tbh, skip deezer, as they actively refuse to create something | similar to spotify connect. IMO this is the USP of sonos.. it | acts as spotify connect for all services | throwaway67743 wrote: | Probably get flamed for this, but pulseaudio is good enough for | IP networks and handles delay calculation pretty well, when used | via multicast it's reasonable but a lack of ecosystem means non- | linux support is poor and control is basically non existent, but | I did operate pulseaudio as my home audio for | TV/PlayStation/phone audio for a time, with some extras like | casting receivers etc it's almost useful, but not convenient | (there is a gap here someone could fill) | necovek wrote: | Yeah, I've used pulseaudio to play same music on multiple | computers and their speakers in multiple rooms, and it worked | well enough for that: however, that won't solve the issue for | the original poster who wants their music to go to a "smart" | speaker. | octoberfranklin wrote: | There sort of is, RTP/RTSP, and in fact it's been around since | the earliest pre-web days of the Internet. | | The problem is that it's a protocol with a ton of warts -- having | two connections, one UDP and one TCP, has been a massive headache | for decades now. But it's not awful enough to get ripped up and | redone. | | The Asterisk VOIP platform had a really awesome protocol called | IAX that was basically RTP with the two streams merged into a | single UDP connection (and a bare-bones TCP-like reliability | layer for the control frames inside of UDP). IAX was never meant | for anything other than VOIP, but I wish it had been turned into | a wholesale replacement for RTP. If that had happened, it would | have been wonderful. | akvadrako wrote: | There is Airplay 1, which is the only widely supported protocol | I'm aware of. See for example | https://github.com/mikebrady/shairport-sync. | | There is also DLNA, which is actually a standard. I think it's | rarely supported for push audio streaming since the protocol is | poorly specified. | nixpulvis wrote: | Another question. Why aren't my bluetooth headphones better at | buffering larger amounts of data. I should be able to load a | complete song without skipping with interference. | colechristensen wrote: | Because you might be unhappy if there were 30 second latency on | a bluetooth voice call, and there would be a whole lot of | overhead in an already complex protocol to enable buffered | audio instead of live audio. | jtsiskin wrote: | Imagine watching a movie with this. I believe apple actually | does something like this, slightly delaying the video playback | so the AirPods can buffer and the video stays in sync. But this | only works if the video player and headphones can communicate. | pjerem wrote: | In fact, Apple aren't doing this alone. It's a pretty common | feature of video players. I'm pretty sure even VLC supports | this. | chrisseaton wrote: | The protocol doesn't support that - it's streaming audio. | marginalia_nu wrote: | Why wouldn't a streaming audio protocol allow for that? | chrisseaton wrote: | I don't know if you understand what 'streaming' means? | Streaming doesn't support large buffering... because that's | not streaming. | | But more broadly, not everything can be in scope. At the | time of design having 10 MB and a decompressor in earbuds | wasn't realistic. | | But blaming your headphones is ignorant - the headphones | implement a protocol. They don't have control over the | protocol. | orhmeh09 wrote: | The headphones and earbuds could easily and realistically | incorporate a buffer today. How's that being ignorant? | InitialLastName wrote: | To be clearer: | | Yes, the headphones could store up N seconds of audio | data ahead of playback. However, the value of buffering | is that if you miss a chunk of data, you can tell the | sender "give me that again". Protocols that allow | buffering account for that by giving the data sink a | means to tell the source "send me chunk F again". | Bluetooth A2DP and other streaming protocols, because | they prioritize constant latency over data reliability, | don't have a means to allow that; the source keeps | sending new chunks even if the sink didn't receive one. | | As a result, there would be no value in headphones | storing up a bunch of audio before playback; if a chunk | is missing, there are no means to remedy that in the | protocol, so it will still be missing when you play it | back. | chrisseaton wrote: | The protocol doesn't support that. The headphones can do | _nothing_ about that. | orhmeh09 wrote: | Why can't the headphones buffer the sound for a second? | Why would it need protocol support? I'm thinking | something like anti-disk-skipping on portable CD players. | chrisseaton wrote: | Was a full song, now it's a second? | orhmeh09 wrote: | I only suggested a buffer, not one of an entire song | length, so maybe you've mistaken me for someone. What I'm | trying to figure out is why we can't apply the same | concept as in the anti skipping technology to Bluetooth | cutouts. | necovek wrote: | In theory, headphones could store music in a buffer | instead of playing it, and then delay playing it by say 2 | minutes (or 5 seconds or whatever). Even if existing BT | profiles preferred losing quality, you could have BT | headsets that pretend to be storage devices and accept | file uploads and which then play them after they've been | completely received. Ideally though, you'd use one of the | BT profiles that already provide guaranteed lossless | audio transmission (or develop one if there's none). In a | sense, BT profiles are protocols within a protocol, so | you can develop almost anything you want (ofc, you need | devices to support those profiles too). | | Of course, the experience of clicking play on a song and | having it only start a number of seconds later is not | something that'd sell particularly well, I guess. And | then you'd have to renegotiate the BT profile if a call | comes in that has to happen live. And switching back to | the song will have another big delay. | chrisseaton wrote: | So the upload speed per song is real-time? Come-on - this | conversation has turned silly. | necovek wrote: | BT 3.0 offered up to 24Mbps bandwidth, with other | variants offering up to 3Mbps. CD quality music is | 1.4Mbps. If you cannot come up with an error correcting | scheme that will let you upload music in real time with | those parameters, what parameters would you need? (And | sure, these rates are hard to achieve with BT in real | world because of varying distance and interference, and | yes, CD quality music is not the highest quality encoding | you can use, but you can achieve similar or better | quality with less bandwidth too) | | And let's not forget this was a discussion of buffering. | A buffer of 5 minutes (50MiB) buys you 5 minutes of not | having to be real-time, or to be slowly lagging behind -- | if that covers 3h of continuous listening time, you | probably covered 99% of uses where latency is not a big | deal anyway (like playing music -- calls and movies are | another game). | | I already acknowledge practical UX problems with just | relying on buffering, but it doesn't make much sense to | say how it can't be done because of the protocol either. | chrisseaton wrote: | But the protocol just doesn't support sending audio | faster than it's supposed to be played. The sender | doesn't know what to send to do what you want. There's no | mechanism to do what you want for the headphones. | marginalia_nu wrote: | > But blaming your headphones is ignorant - the | headphones implement a protocol. They don't have control | over the protocol. | | If the headphones are implementing a protocol that isn't | suitable for purpose, there is very good reason to blame | the headphones. What's the point in having headphones if | you need to be in a Faraday cage to use them? | chrisseaton wrote: | If you buy Bluetooth headphones and complain they don't | buffer full songs then that's your problem, not the | headphones. | | > What's the point in having headphones if you need to be | in a Faraday cage to use them? | | Surely it's the opposite? They don't work in a Faraday | cage, because they're streaming and need to be connected. | marginalia_nu wrote: | > If you buy Bluetooth headphones and complain they don't | buffer full songs then that's your problem, not the | headphones. | | What is the use case for headphones that cut out every | couple of seconds? | | > Surely it's the opposite? They don't work in a Faraday | cage, because they're streaming and need to be connected. | | In this case the broadcast source would be in the Faraday | cage along with the listener. | izacus wrote: | Because that adds a massive amount of latency, something that | is a no. 1 complaint for Bluetooth headphones. | lxgr wrote: | This will change (hopefully) soon with Bluetooth LE audio! | iancmceachern wrote: | Isn't Dante audio this? | | https://en.m.wikipedia.org/wiki/Dante_(networking) | b20000 wrote: | there is already ABV and DANTE in the pro audio world. you are | not aware of it because you probably are not in the | recording/audio/music business. | | bluetooth sucks because it was invented by a bunch of guys in | suits and consumer electronics companies rather than people who | understand latency, performance etc. i designed my own protocol | in the 2.4ghz band and wrote firmware and middleware for it and | it deals with all the weaknesses of BT. | | BT should have been designed by those who design the products and | applications and deal first hand with end users. | cogman10 wrote: | BT was designed to be a general purpose peer to peer wireless | communication protocol. | | It was not designed to solely carry audio. It just sort of | morphed into being primarily used as an audio exchange format | (because it's "good enough"). A little bit like how USB morphed | into a peripheral bus even though it was designed to be more | all encompassing (USB Ethernet, for example). In fact, the USB | protocol is somewhat mucked up by the fact that it was designed | to be a network instead of a more direct connection. | KptMarchewa wrote: | Now it's actually used in this way with USB4/Thunderbolt 4. | b20000 wrote: | yes, general purpose, another expression for mediocre or | garbage. | | i think BT wwas first designed for exchanging photos. so mass | storage transfer. it should have been designed for streaming | latency sensitive data like audio first, and then the | "easier" scenarios could have been built on top of that. | | at least with USB there was the common sense to include ISO | transfers although drivers for that in OSes happened | relatively late and OS vendors have ignored the standard for | many years, requiring the purchase of analyzers. | | in that regard there is similarity with BT but with USB it | seems easier to come up with a solution as a | firmware/driver/application developer. at least in my | experience. | MisterTea wrote: | Bluetooth is for sure designed by committee as no sane person | would intertwine software protocols with wire protocols. But | here we are with an endless myriad of profile/protocol mixes | all doing essentially the same thing of moving bytes back and | forth through the air but with different levers for each. | b20000 wrote: | USB suffers similarly but it's not as bad IMHO | wcfields wrote: | Pro stuff gives a glimpse of if we lived in a perfect world, | SDI (and HD-SDI) would have been the de facto standard for | video everywhere. | dylan604 wrote: | It's almost like including a BNC automatically rules it out | of use as a consumer like there's some ridiculous royalty | payment owed or something. I love BNC over every other type | of connection for a coax cable. Nothing in the consumer world | makes as sure of a connection. | burntwater wrote: | Before entering the pro A/V industry I used to equate BNC | with "ewww, old as dirt." | | I then came to love the simplicity and reliability of SDI. | Nowadays I work in uncompressed ST2110, and while there are | many advantages of network based video and audio, paying | $1,000 for a QSFP to handle just a few streams is a hard | pill to swallow! | dylan604 wrote: | BNC == featureComplete | digitallyfree wrote: | Dante is great but sadly it's proprietary. Low latency and | allows you to replace a loom of analog cable with a single | ethernet run. | | There's Ravenna and AES67 (which I believe Dante supports), | which are open standards but are not as common as Dante. | jhugo wrote: | There is a standard protocol for audio (and other realtime media) | over an IP network: RTP. | | But your problem doesn't have anything to do with a lack of | standards; Amazon has no incentive to just let you send RTP to | the Echo Dot on a port -- nobody is asking for that, and they | would have no control over the "experience". | armagon wrote: | Good point -- I just put in a feature request, so now someone | has asked for it. | | I don't see that this is any worse for the experience than the | bluetooth situation. It'd certainly make the device more | valuable for me. But that doesn't mean Amazon will see it as | worth their time. | monocasa wrote: | > The good thing about standards is that there are so many to | choose from. | | -- Andrew S. Tanenbaum | | But really, RTP is the closest thing. Outside of the consumer | space nearly everything is RTP + some out of band signalling | protocol. It's low latency, designed to be multicast, has RFCs | for evey codec under the sun, etc. | remram wrote: | I've run into this. I would like to use my Android phone as | speaker and microphone for my laptop, so I can walk around | without leaving my call. For some reason this is impossible, | Bluetooth supports it of course, and so does Pulse Audio on my | laptop, but an Android phone will only act as the host not the | speaker/mic. | | I found SnapCast which lets me send audio from laptop to phone | (with huge latency) but not the other way (phone mic to laptop). | cratermoon wrote: | The answer is DRM. In fact, almost any audio/video standard | attempts have to address the elephants in the room: Disney, | Warner Media, Universal Music Group, etc, and they all require | DRM. | armagon wrote: | Is there DRM added to bluetooth audio connections? | bentcorner wrote: | To pile on further, you may have better success getting a small | device (like a pi) and connect the audio out to your speaker. | armagon wrote: | I'm using Amazon Alexa Echo Dots. I really wish they had a | line-in connection, as it, too, would make life much easier | when I want to play audio from a device. | open-paren wrote: | In this thread: | | https://xkcd.com/927/ | csours wrote: | At work: why do we have 9 different ways to identify a physical | location? Because there are 5 different teams that need to do | that, and our team hasn't gotten around to re-inventing the | wheel like the other teams have. | jrmg wrote: | It looks like it's still under active development (on | SourceForge!) | | https://sourceforge.net/p/nas/activity/?page=0&limit=100#61f. | .. | m0shen wrote: | I haven't seen VBAN mentioned yet: | | https://vb-audio.com/Services/support.htm#VBAN | | https://vb-audio.com/Voicemeeter/vban.htm | | It's a free, open protocol that runs on UDP, transmits PCM audio | and MIDI | unixhero wrote: | https://www.nytimes.com/wirecutter/blog/what-you-need-to-kno... | LargoLasskhyfv wrote: | But there _is_! | | https://radscan.com/nas.html | kjs3 wrote: | Ha! Came to post this...I assumed I was the only one to | remember it. I got it working when it was part of NCDWare for | the NCD X terminals (mostly on the later 700-series terms). | Worked, though the audio hardware on the terminals was basic, | so it wasn't exactly an audiophile experience. Very clever | work, tho. | LargoLasskhyfv wrote: | I remember it from the times where you had ESD (enlightenment | sound demon) running on Linux, and this in addition. At least | that was the default on some Redhat systems, IIRC? | nomoreusernames wrote: | audio signal is enough. jackd is nice as an option. | exabrial wrote: | There is several standards in the professional space, Dante being | the biggest for "audio over ethernet". It's packet switched, so | buffering is required. | | AES50 works over cat5 cables, but doesn't use ethernet; it uses a | synchronous clock to transmit PCM audio. A lot of the Midas/X32 | product lineup uses this to great effect. | | Dante allows normal IP equipment to function as audio | distribution devices, but has noticeable latency for close- | quarters stuff (sound travels ~ .9ms / foot +-10%). | | AES50 has extraordinarily low latency, pretty much as good as | analog, but only allows point-to-point links. | | On the consumer side, RAOP existed for awhile before silicon | valley elitism infected Apple: | https://en.wikipedia.org/wiki/Remote_Audio_Output_Protocol | | EDIT ==== | | I had in my head the RAOP was an open standard, it's not. | xxpor wrote: | Regular ethernet can do much better than .9 ms / ft, but it | would indeed require some buffer size tuning to a level most | consumer routers/switches wouldn't allow. | | Or even better: https://en.wikipedia.org/wiki/Cut- | through_switching | exabrial wrote: | The real problem with Dante is the buffering required, the | wire speed is more than sufficient. Ethernet Packets are | "best effort", making latency less predictable. | | Let's say your original source could be heard by the | audience. The audio can travel from source, to mic, be | digitized, transmitted over IP, arrive at console, be | digitally mixed, then transmitted over IP to speaker, then | broadcast at an unknown distance from the source. How much | latency occurred there? | | The trick is to get the original source wave to roughly line | up with the time the amplified wave leaves the PA speaker, | otherwise weird echos are heard by the audience at best, and | awful band-specific noise cancellation happens at worse. | mnkmnk wrote: | Making a Bluetooth alternative, I think apple is the only company | that can pull it off. But they will absolutely do it such that | only their headphones will work with Apple devices. And then they | will license other manufacturers to be able to use their tech to | connect to apple devices. | | Otherwise, I see a huge opportunity for a consortium to develop a | new hardware and software stack for high quality low latency | audio and being them as a package to their products. I would love | a completely wireless Dolby Atmos like setup with no central | receiver, your mobile device itself being the av receiver. New | speakers from any manufacturer and form factor could be added | wherever you want as you buy them. Calibration according to your | speaker placement would be wireless and automatic. | pjerem wrote: | > Making a Bluetooth alternative, I think apple is the only | company that can pull it off. | | Microsoft did it with Xbox Wireless Protocol which is used to | transfer input from controllers and high quality sound without | latency. | | But, yes. It only works on Xbox or on Windows with an adapter | and you can count the manufacturers using it one one hand. | Microsoft being the thumb. | currency wrote: | Specifically for computers to smart speakers, I use AirPlay 1, | but this works better from Windows with a 3rd-party app than from | iOS or MacOS--the 3rd party app is perfectly happy to play to as | many endpoints as I like, while Apple will only transmit to one | endpoint at a time if it's an AirPlay 1 device. | | From my Windows 10 PC, TuneBlade AirPlay streaming provides a | great experience: | | I can play stream anything that is playing on the PC to any | AirPlay device on my LAN, and all the playback devices will be in | perfect audio sync. | | AirPlay 1 devices on my network include an AppleTV, Apple HomePod | Minis, Nexum Airplay receivers attached to powered speakers, and | DAPs with Airplay reception. | | There is a significant buffer delay--about 2 seconds--that messes | with video streaming. TuneBlade has the ability to stream video | to VLC with synced audio, but doesn't support other video | streaming endpoints. There is a bufferless mode with no delay, | but it doesn't work well on my network. | rglullis wrote: | RTSP/RTMP are not to your liking? | craggyjaggy wrote: | If you want to turn your home into a TV/Radio station, have a | look at Audio Video Bridging[1]. It requires special hardware, | but once you're set up devices can reserve bandwidth for their | streams which will be prioritized by switches over other Ethernet | traffic thus ensuring 100% reliability and sub-2ms latency | accross 7 hops. | | [1] https://en.m.wikipedia.org/wiki/Audio_Video_Bridging | aj7 wrote: | And while we're on the subject, why is cell phone audio so | horrible? It is worse than that delivered by the cast metal | telephones with rotating dials of my youth. | colordrops wrote: | Does your phone not support VoLTE? You might have to explicitly | turn it on. Sounds great on my phone. | jeroenhd wrote: | It doesn't need to be. With VoLTE the sound quality is usually | pretty crisp in my experience. It all depends on the carrying | technology, bandwidth, compression parameters and codecs used. | EVS supports up to 128kbps audio streams, which makes voice | data come across crystal clear, and that's a technology from 8 | years ago. | | One problem is the fact that the codec needs to be negotiated, | and if you're unlucky with codec compatibility, both callers | fall back to crappy old codecs. Then there are tons of options | for audio profile selection depending on requirements and | bandwidth available (see | https://en.wikipedia.org/wiki/Enhanced_Voice_Services for an | overview) which makes it difficult to say what cause your | specific problems. | | Without VolTE, you're falling back to 3G audio, probably AMR or | AMR-WB, which is quite old and doesn't compress as well as | modern standards. | | Unless you mean the headphone profile for Bluetooth headsets: | that's terrible because the standard is ancient, back when | Bluetooth had even less capacity for low latency data transfer, | and the codec is suboptimal making the situation even worse. | There are better codecs out there, and some headsets will | support what some call mSBC, which massively improves the audio | quality (but not exactly to a HD audio stream because of | limitations). There have been several proprietary attempts to | fix this issue, but implementing those solutions costs money so | many headphones ship without them. | 7steps2much wrote: | Most likely because those landline phones transmitted via a | copper cable while mobile phones send the audio via a heavily | compressed and shared wireless connection that isn't exactly | all that reliable. | | Cabled connections are superior to wireless ones, even more so | because traditional landlines had dedicated connections and as | such had no need to compress anything. | kube-system wrote: | Analog-only phones had great quality because they didn't sample | voice. Once phone systems were changed to digital backbones, it | became necessary to sample voices, and the sampling rates that | were chosen were done so for efficiency using the tech of the | time. Usually 4 khz samples. While there are better quality | standards today, many phone systems will fall back on old | standards. | Melatonic wrote: | If you don't like audio over ethernet do not even think about | doing high quality video :-D | | Hate to say it but you are probably better off getting something | other than Echo Dots for music. Too bad Google discontinued the | Chromecast Audio - I love mine. The biggest plus for me is that | once you have a compatible app (such as Spotify) streaming is | done entirely on the chromecast audio from your internet itself | instead of continuing to use your phones battery and wifi. | heavyset_go wrote: | The PulseAudio protocol supports network audio. | xyzzy21 wrote: | Firewire was supposed to be an AV standard that allowed | connecting anything to anything and completely eliminate the RCA | cables etc. | | And then the RIAA and MPAA discovered the plan and killed it | good. | atoav wrote: | I was thinking about something like Dante, AES50, AES67, AVB, | Ultranet, Ravenna or any other of those professional Audio over | Ethernet standards out there. | | Those are working and used in live venues and studios, the | hardware used for those might however be out of scope in terms of | price for the typical user and it certainly won't work with your | smart speaker. | | Does that smart speaker have line in (3.5 mm TRS)? If so you | could just send your audio _analog_ over the ethernet cable and | build an ethernet to TRS adapter on the other end : ) For longer | distances balanced line drivers might be needed, tho. | | But shielded Ethernet cables work surprisingly well for analog | audio purposes, especially if you send balanced signals through | them. If you transformer-balance them you even get galvanic | isolation for free. | sigstoat wrote: | clearly (given all the other responses), there are a bunch of | different conflicting requirements which lead to different | protocols. | | as for your bluetooth issues, PC bluetooth is a mess. | | some of bluetooth's messiness comes from having the higher level | elements of the stack designed 20+ years ago to operate on | microcontrollers of that era. they've got N different audio | profiles because the hardware it was expected to operate on | originally would've been hard pressed to handle a single audio | profile that could negotiate the gamut of use cases. | winkeltripel wrote: | There is. You build a network of analog cables. Use a sound board | to 'switch' the channels. This leads to headphones on 3.5mm | jacks, and one or more zones of stereos connected by RCA. This | 'network' is as solid in 2022 as it was in 1975. | lowwave wrote: | thank someone brought this up. Wire is always better than | wireless. Wish the world would go back to everything being | wired, more secure as well. | macinjosh wrote: | What about HDRadio? A home scale FM broadcast could accomplish | this efficiently and cheaply. Each speaker would just need an FM | receiver. | | I guess the downside is that your neighbors could listen to | whatever you're listening to but who listens to terrestrial radio | in their home that is received OTA anymore? | | https://en.wikipedia.org/wiki/HD_Radio | | https://www.amazon.com/Home-FM-Transmitter-Whole-House/dp/B0... | cf100clunk wrote: | iBiquity (now owned by DTS) has never, to the best of my | knowledge, open sourced their HDC codec, nor has it been | reverse-engineered. To me that's a show-stopper towards any | kind of widespread buy-in of HD Radio beyond commercial | stations. | | Also, authorities like the FCC take a dim view of FM | broadcasting beyond miniscule power levels as seen in car radio | adapters due to the easy potential for intentional or | unintentional abuse. For example, a 5 Watt FM transmitter sold | on eBay may have you thinking it will yield a small amount of | power, but spitballing some numbers: outputting it through an | FM band turnstile antenna atop a high building or hill could | have an Effective Radiated Power in the 7 or 8 kW range, great | enough to cover a small city in a round pattern. | | Your proposed devices would therefore fall into that very low | power range for certification but there would need to be some | sort of clear channel hopping required. That's fine in rural | areas but quite difficult in large metropolitan areas. | [deleted] | duped wrote: | There is, it's called AES67. It just isn't used much in consumer | products. The acronym to google is AoIP ("audio over IP") | jszymborski wrote: | It's a bit funny that there are already a bunch of comments that | are stating "There already is, it's called 'X'", each with a | different value for X. | | I think this paints a better picture of the situation than any | one person can provide. | hedora wrote: | In true HN fashion, first-mover / market-leader Sonos isn't | even mentioned yet. | | The reason there isn't a standard (other than Sonos, or those | discontinued Chromecast dongles) is that you need the following | to work seamlessly: | | - network attached DAC of some sort (in-speaker, or not; don't | care) | | - iOS app | | - Android app | | - the top 10 streaming services | | - radio streaming directories, like TuneIn, or the open source | ones. | | - airplay | | - Chromecast | | - network / device auto discovery | | - sound synchronization | | - power management | | - desktop apps | | - NFS/cifs/etc bridge | | - hdmi/fiber/??? bridge | | - N.M surround sound (for N = 2, 3,5,7,9 and M=0,1,2) | | - Some battery powered, waterproof speaker that works in direct | sunlight on hot days | | - Hardware distribution at places like IKEA, BestBuy, Amazon, | etc. | | - A healthy used hardware market | | - 10+ year support lifetimes on the speakers + amps (note: | discrete, cheap DAC dongles could disrupt sonos on this point) | | And other things I forgot about. | PaulDavisThe1st wrote: | > In true HN fashion, first-mover / market-leader Sonos isn't | even mentioned yet. | | market leader? no idea. first-mover? wrong. Slim Devices were | the first mover in this space with the Squeezebox | (subsequently purchased by Logitech). Sonos came shortly | afterwards. | yehBu77 wrote: | In true HN fashion they ignore people were pirating and | streaming content to multiple rooms before a big company | brand caught onto the idea and profited from it. | | I have multi-room streaming using "dumb" speakers, and copper | wire (for audio and network). I control one content box and | aim it at different speakers from my phone, tablet, laptop. | Siri Shortcuts decouple me from waiting for an MBA to approve | adding voice commands. | | I know; brave flex sticking with simple wire versus going | wireless. | darrenf wrote: | > In true HN fashion, first-mover / market-leader Sonos isn't | even mentioned yet. | | I bought my first Sonos device last year, the Roam. Using it | as a bluetooth speaker is fine and I love the sound and | portability, but oh boy do I hate the experience of trying to | use Sonos services over wifi. | | Nine times out of ten, perhaps even more often, the iOS app | says it can't connect and "let's fix it". If I go through the | slow reconnection wizard it invariably ends up telling me to | reboot my router(!?). I learned to either switch the Roam | on/off a bunch of times, or kill and restart the app a bunch | of times, before the app eventually decides yes, it _can_ | find the device ... only to then fail again when half hour | later I want to add something else to the queue or switch | station. | hedora wrote: | I've had a (S1) sonos for many years. That only happens to | me if the speakers (or phone) are repeatedly falling off | the WiFi network. | | Try plugging into Ethernet, or placing it close to your | router. If that fixes it, then you have a root cause. | phlipski wrote: | Interesting. My experience with the Sonos app has been a | revelation in GOOD audio networking experiences. It just | works. I download the app - connect to a play 1/3/5 near me | and stream music. All in the space of about 2 minutes. | Nothing else I've tried comes close to this experience. | jasode wrote: | _> It's a bit funny that there are already a bunch of comments | that are stating "There already is, it's called 'X'", each with | a different value for X._ | | It's because the replies are interpreting the op's question | differently from the intent. | | When op asks: _" why there isn't a standard protocol?"_ -- he's | asking _" why isn't there a | SingleDominantThatWorksOnOnEveryDevice audio protocol that lets | me connect devices seamlessly?"_ | | The op's word of "standard" is just doing a lot of heavy | lifting to convey a frustration with stuff not working | intuitively. | | The analogy is TCP/IP being a standard | (SingleDominantThatWorksOnOnEveryDevice) network protocol that | won over Apple AppleTalk, Novell SPX/IPX, and Microsoft LANMAN | NETBIOS. | | But many replies interpreted "standard" as _" any available | existing specification regardless of marketshare or device | availability"_ -- so that's where you get various examples of | audio protocols that are idiosyncratic to particular domains | which are not analogous to the ubiquity and reliability of | TCP/IP. E.g. the Dante audio protocol which doesn't seem | relevant to op's use case. | | And what's the _scope_ of an "audio protocol"? Is it a "media | query of music files" protocol like DLNA? Or is it a "virtual | hardware audio device endpoint" like Bluetooth Audio? | armagon wrote: | Yes, that's what I meant. | | Why isn't there a widely interoperable audio-over-the-network | transmission protocol I can use, so that when I am playing | sound (from a song, a video, or a game), I can hear it on an | external speaker? [The scope is just a 'virtual hardware | audio device endpoint' like bluetooth audio] | creeble wrote: | As someone who works on the code for a competitor of Sonos, | the answer is that it is hard to do, depending on your | requirements. | | > ...(from) a video, or a game | | So then you need low latency, like less than 10ms? So that | lip-sync works, and the game is playable? | | Do you need it distributed across different endpoints, also | with low latency? | | Does it need to run using unreliable WiFi connections, and | not kill all audio just because one endpoint is under- | performing? | | These are all hard, hard enough that doing it well (and | keeping it proprietary) makes companies like Sonos big. | | OTOH, streaming mp3 from one endpoint to another is | trivial. | armagon wrote: | True enough. Somehow bluetooth audio manages these | issues. | | I for one would accept latency and the audio going silent | (or better, an audio indicator) if the connection isn't | up-to-snuff but I don't know if other people would. | sushisource wrote: | > Somehow bluetooth audio manages these issues. | | It manages it... sometimes. | | I have an NVIDIA Shield I use for my video needs, and | attempting to pair my Sony WH-1000XM4 headphones with it | results in crappy latency and out-of-sync audio. These | are both high end products from respected companies, and | they work together with pretty shitty results. | | Edit: I just tried this again after writing that and | magically things work much better than they did before... | but I stick by the general point. | | In general, I'd describe the Bluetooth experience as | mediocre at best. | averagedev wrote: | Obligatory xkcd: https://xkcd.com/927/ | duped wrote: | In the pro world there was Dante, Ravenna, and to a lesser | extent AVB. People didn't like that nothing worked with each | other. The AES got the AoIP manufacturers together and | standardized a union of these technologies and called AES67. | Now most pro gear is compatible and it is in widespread use in | (mostly) large audio installations (think stadiums/venues, | broadcast, theme parks, etc). | | There's not much in way of open source solutions to using it, | and not many devices you would want to buy as a consumer that | uses it, however. | eurasiantiger wrote: | > There's not much in way of open source solutions to using | it | | But there are some? Can an arbitrary Linux box or Raspberry | Pi be fitted with free software to receive AES67 over | Ethernet from commercial solutions, or is there a catch? | duped wrote: | There's a kernel module for handling the networking | connection and exposing it as an alsa device: | https://bitbucket.org/MergingTechnologies/ravenna-alsa- | lkm/s..., and some FOSS stuff for managing the | discovery/control layer. It's not as simple as plugging in | a USB device and selecting your i/o, though. | eurasiantiger wrote: | That kernel module userland part has an EULA that makes | it very much non-free, is it required or do the FOSS | alternatives work with the kernel module? | kierank wrote: | Ooooh something I know quite a lot about: | | So for AES67 receive, in principle no as PTP stack exists | for RPI yet. You could cheat like the majority of | manufacturers do and just play the audio as it arrives | instead of using the timestamps. You'd also need a way of | drifting the audio out clock to match the frequency of the | PTP clock. If you didn't care about bitexact audio, you can | resample, though ALSAs clock measurement kind of sucks. | paxys wrote: | That's because "sending audio over a network" isn't a single | self-contained problem but a huge area which requires lots of | different approaches depending on the specific use case. | hsbauauvhabzb wrote: | I'll link to https://news.ycombinator.com/item?id=29514876 here, | it may have valuable insight. | | I can use my hdmi ARC soundbar from my computer. We live in a | backwards world. | PragmaticPulp wrote: | > I'm wondering why there isn't a standard protocol for | transmitting audio over the network. | | Bluetooth isn't the same as your WiFi network. Most of the | comments here are talking about IP-based protocols that aren't | relevant for Bluetooth anyway. | | Bluetooth is probably the best example of a widely adopted | protocol for connecting to devices and sending audio streams. The | protocol isn't exactly the problem. It's the buggy | implementations of Bluetooth stacks and Bluetooth software in | embedded devices. | | Getting it right is actually extremely difficult because | Bluetooth grew in complexity to be everything to everyone. It | isn't only an audio sending protocol. Almost nobody owns the | entire Bluetooth stack, so it's a mix of pieces from different | companies and vendors. | | Apple's implementation isn't perfect, but from experience I can | tell you it's 10X better than the nightmare that is Android | Bluetooth. It's getting better, but for years you had to collect | a lot of different Android phones so you could make your software | work around all of the different quirks in each vendor's | different Bluetooth stacks. | armagon wrote: | > Bluetooth isn't the same as your WiFi network. Most of the | comments here are talking about IP-based protocols that aren't | relevant for Bluetooth anyway. | | I'm aware of that. I want audio over WiFi and audio over LAN, | as Bluetooth has left me scarred. | Isthatablackgsd wrote: | > Apple's implementation isn't perfect, but from experience I | can tell you it's 10X better than the nightmare that is Android | Bluetooth | | Seem like I have different experience with them. I don't have | issues with Android Bluetooth, I do have issues with Apple | bluetooth. | | Half of the time, my iPad couldn't detect my bluetooth devices | (keyboard and audio accessory) are trying to connect to it | (already paired). When that occurred, I have to go to the | Command Center to force connect my bluetooth devices and half | of the time iPad will obligate and connect. Other time it just | give up and said couldn't connect or cannot find it (while my | bluetooth device is poking iPad to connect). It is a hassle to | use my bluetooth devices with the iPad daily. | | On the Android side, it instantly connects, even my phone is | sleeping. | SahAssar wrote: | It sounds like you are talking from a user perspective and | the parent is talking from a vendor perspective, no? | lowwave wrote: | that is the exact reason I don't like to use bluetooth for | audio devices. Nothing beats physical jack cables. | RajT88 wrote: | Seconded. Any bluetooth issues I have on Android are specific | to a particular device. | | The cheap anker headsets I mostly use are rock solid. I have | an android head unit (second one actually, first one was | garbage) and a Bluetooth radar detector. The detector always | works with my phones, and never with my head unit(s). | _trampeltier wrote: | You can't even send anything from Apple to non Apple by | Bluetooth. Why do you expect audio would work. | jachee wrote: | I don't understand what you're saying here. | | I listen to my Apple devices on a knock-off add-on Bluetooth | for my car with no issues. I've sent audio to a vast variety of | non-Apple Bluetooth devices. In fact the only Apple-branded BT | device I use are my AirPods. | fxtentacle wrote: | There is, Dante. | qbasic_forever wrote: | Some people might say DLNA, but trust me you want absolutely | nothing to do with that disaster of a protocol and tech. I have | tried off and on for _15 years_ to use different DLNA tech and | every single time it ends in total disappointment and failure. | dreen wrote: | I've got an external HDD with battery and its own small WiFi, | it makes its contents available through DLNA. It works great, I | usually connect through VLC or a gaming console. | raffraffraff wrote: | I'm using DLNA to play music from my laptop it at the moment | (pulseaudio sink, opus encoded) to a raspberry pi | (gmediastreamer) that uses pulseaudio to upmix to 5.1 and play | on a usb soundcard. It works, and the quality is good, but the | lag is crap and I had to wrap everything in crappy scripts that | would fix everything if it died. It's been in place for a year | but I'd love to ditch it. ___________________________________________________________________ (page generated 2022-04-14 23:01 UTC)