Live data from Hacker News

Show HN: Beatsync – perfect audio sync across multiple devices

github.com

121–130 of 135 posts

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

#121
post #59

Earlier quoted context omitted.

You’re right that it’s an easier problem, but it’s still trickier than it looks. Remember the point of this is to be listening together. To do that, you need to be able to communicate your reactions. And then you’re back to the 38ms (in practice it’s probably twice that). Either way, at 120bpm that’s over a bar! If you _don’t_ have real time communication, then you don’t really need to solve this problem. But the pro…

You're basically right, but one 4-beat bar @120bpm is 2000ms. Also latency demands on conversation are not nearly as tight as those on music performance. See ubiquitous video conferences.

My brain ain't working, and yeah, I don't tend to notice transatlantic delays on voice and video calls.

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

#122

Earlier quoted context omitted.

It works on other platforms! Just not as smooth as Chrome.

Made an update so it should be good on most!

Yes! I am playing with it on my two phones and PC and it's absolutely wonderful

Not a huge deal, but if I start playing from my Pixel 4, it staggers the startup between devices (either pixel is faster or vice versa).

If this starts working with spotify somehow, I'll be set for my weekends coding around the house!

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

#123

Earlier quoted context omitted.

About one foot sounds very american.

I’m in europe so I am all in on the metric system. But “about a foot” per nanosecond is so easy to remember, understand and reason about that it is worth the exception. If you prefer something European, think of a sheet of A4 printer paper: the long side is 29.7 cm. “One length of A4 per nanosecond” is within 1% of the actual value of the speed of light.

> But “about a foot” per nanosecond is so easy to remember

Well, but its also just wrong. Its 12.5% to low. Thats why "about one foot" sounded absolutely wrong to me.

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

#125
post #78

Earlier quoted context omitted.

For devices with mics, can you have them play a test chirp to measure the latency of Bluetooth or other laggy sound stack?

Bluetooth audio devices that I use tend to change the protocol as soon as it switches to headset mode (with microphone enabled), which works terribly for music. I imagine the protocol used when the microphone is enabled might have completely different latency characteristics than the one used purely for audio, so a chirp might be measuring completely different thing

BTLE has built-in features for latency detection right?

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

#126
post #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

Well, AES67 isn't a great secret... It's just RTP with PTPv2, with some predefined codec, sample rate, and fpp options.

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

#127
post #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 tuni…

Oh, thanks for correcting me! Now that you mention it, I'm confused by a memory I have. Wired speakers seem to be less common these days but I remember being told about two decades ago that the "proper" way to install speakers was to run out equal lengths of speaker cable (basically just jacketed copper, afaik) to different speakers even if they weren't equidistant in a room. (This was advice for home installation, not stadium-sized installations.)

Do you suppose there exists some other reason for that, like maybe matching impedance on each cable, or is this likely one of those superstitions that audiophiles fall prey to?

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

#128

If you do RTP with pulseaudio you can know the latency of all devices and have it synced by design - no extra software needed, device agnostic. If it somehow runs linux it will "just work".

Careful i think the apple marketing department believes they have the exclusive use of the "just work" moniker.

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

#129

If you do RTP with pulseaudio you can know the latency of all devices and have it synced by design - no extra software needed, device agnostic. If it somehow runs linux it will "just work".

Careful i think the apple marketing department believes they have the exclusive use of the "just work" moniker.

Haha, well you have to set up multicast in your LAN like a good plumber, then fight context.exec and context.modules - also "just works" means in my case setting up a systemd After=network-watchdog in pulseaudios override that checks whether network is up in userspace.

But Poettering Software (systemd/pulseaudio) is quite composable so even though there is a learning curve the alternative are 20k config file monoliths.

Still this even turns rooted LG TVs and cheap raspi picos into sinks.

The only latency i now have is the bass traveling slower than the trebles lol

Post reply on HN