Live data from Hacker News

Show HN: Beatsync – perfect audio sync across multiple devices

github.com

11–20 of 135 posts

Re: Show HN: Beatsync – perfect audio sync across multiple devices

#11
post #9

This is very, very cool; it's a thing I've been looking for on my backburner for several years. It's a very interesting problem. There are a ton of directions I can think about you taking it in. The household application: this one is already pretty directly applicable. Have a bunch of wireless speakers and you should be able to make it sound really good from anywhere, yes? You would probably want support for static c…

Silent disco in which everyone brings their own source and headphones.

Re: Show HN: Beatsync – perfect audio sync across multiple devices

#12

Unfortunately the w3c webtiming community group has closed. It'd be amazing to have the browser better able to keep time in sync across devices. https://www.w3.org/community/webtiming/ https://github.com/webtiming/timingobject

Luckily the audio industry as solved this problem, and they use PTP as the clocking mechanism for AES67 (kind of the bastard child of Ravenna and Dante, but with a fully open* AoIP protocol) that's designed for handling all the hard parts of sync'ing audio over a network. And it's used everywhere these days, but mostly in venues/stadiums/theme parks.

* open if you pay membership dues to the AES or buy the spec

Re: Show HN: Beatsync – perfect audio sync across multiple devices

#13
post #4

How does it deal with the audio ring buffers on the various devices? Does it just try to start them all at the same time, or does it take into account the sample position within the buffer?

This is my question, does it do interpolation or pitch bending

Re: Show HN: Beatsync – perfect audio sync across multiple devices

#15
post #4

How does it deal with the audio ring buffers on the various devices? Does it just try to start them all at the same time, or does it take into account the sample position within the buffer?

Another issue is seeking in compressed audio. When seeking (to sync), some API's snap to frame boundaries.

Re: Show HN: Beatsync – perfect audio sync across multiple devices

#17
I primarily built this for group in-person listening, and that's what the spatial audio controls are for. But what is interesting is that since it only requires the browser, it works across the internet as well. You can guarantee that you and someone else are listening to the same thing even across an ocean.

Someone brought up the idea of an internet radio, which I thought was cool. If you could see a list of all the rooms people are in and tune it to exactly what they're jamming to.

Re: Show HN: Beatsync – perfect audio sync across multiple devices

#18

I primarily built this for group in-person listening, and that's what the spatial audio controls are for. But what is interesting is that since it only requires the browser, it works across the internet as well. You can guarantee that you and someone else are listening to the same thing even across an ocean. Someone brought up the idea of an internet radio, which I thought was cool. If you could see a list of all the…

> You can guarantee that you and someone else are listening to the same thing even across an ocean.

How can you guarantee that? NTP fails to guarantee that all clocks are synced inside a datacenter, let alone across an ocean (Did not read the code yet)

EDIT: The wording got me. "Guarantee" & "Perfect" in the post title, and "Millisecond-accurate synchronization" in the README. Cool project!

Re: Show HN: Beatsync – perfect audio sync across multiple devices

#19
post #9

This is very, very cool; it's a thing I've been looking for on my backburner for several years. It's a very interesting problem. There are a ton of directions I can think about you taking it in. The household application: this one is already pretty directly applicable. Have a bunch of wireless speakers and you should be able to make it sound really good from anywhere, yes? You would probably want support for static c…

> This speaker is 300 feet away from its output through X meters of copper; figure out my additional latency offset for me.

0.3 microseconds. The period of a wave at 20kHz (very roughly the highest pitch we can hear) is 50 microseconds. So - more or less insignificant.

Cable latency is basically never an issue for audio. Latency due to speed of sound in air is what you see techs at stadiums and performance halls tuning.

Re: Show HN: Beatsync – perfect audio sync across multiple devices

#20
post #9

This is very, very cool; it's a thing I've been looking for on my backburner for several years. It's a very interesting problem. There are a ton of directions I can think about you taking it in. The household application: this one is already pretty directly applicable. Have a bunch of wireless speakers and you should be able to make it sound really good from anywhere, yes? You would probably want support for static c…

Thank you for the kind words! Yeah, I think it gets a lot more complicated once you start dealing with speaker hardware. It pretty much only works for the device's native speaker at the moment.

The instant you start having wireless speakers (eg. bluetooth) or any sort of significant delay between commanding playback and the actual sound coming out, the latency becomes audible.

Post reply on HN