HackerTrans
TopNewTrendsCommentsPastAskShowJobs

weepy

no profile record

Submissions

Show HN: Low-latency jamming over the internet

sub.live
236 points·by weepy·5 tahun yang lalu·119 comments

comments

weepy
·3 tahun yang lalu·discuss
what is delta encoded ? ADPCM ?
weepy
·3 tahun yang lalu·discuss
Could the algo prevent clicks in the case of packet loss in low latency streaming ?
weepy
·5 tahun yang lalu·discuss
woah what is this fastpast magic ?!
weepy
·5 tahun yang lalu·discuss
Maybe I'm missing something but A->B is likely to be faster than A->S->B ?
weepy
·5 tahun yang lalu·discuss
There is flexibility - in the P2P model if one of the clients has bad latency - their buffer gets increased to prevent drop outs. How is a server better in this scenario?
weepy
·5 tahun yang lalu·discuss
Hey thanks.

You can also send the backing track ahead of time a little so that you both hear it at the same time!

Do you mean that you want to mix the inputs from multiple devices ? This is possible - but you do get a little bit of extra latency of course.

It's supposed to refresh the audio devices when you "mouseenter" the select box, so perhaps there's a big there.

Multitrack recording with a bigger buffer would be great.

Good you found the buffer settings. I'm surprised that you found a significant difference though between 2ms and 5ms?
weepy
·5 tahun yang lalu·discuss
P2P doesn't require any computation on any server - it's essentially serverless. It doesn't make much sense to me at least to need to compress everything twice and have multiple buffers AND have to manage a server.
weepy
·5 tahun yang lalu·discuss
Basically similar issue to Sonobus. Relay could work buy it probably adds latency and it certainly adds complexity. I may know a way to improve some NAT configurations but need to do more research.
weepy
·5 tahun yang lalu·discuss
Also I live in a village in Denmark near Aarhus. I believe my connection goes via Copenhagen which is actually the wrong direction! Though it is true that Denmark is very well connected.
weepy
·5 tahun yang lalu·discuss
Honestly I was a bit blown away when I got it working the first time ! It kind of mental that I can capture audio and compress it - send it through all these layers and machines - and receive it 1000km away 20ms later. All on consumer grade internet.
weepy
·5 tahun yang lalu·discuss
I used the standard 2.5ms. I know you can go lower if you want, but then you need a higher bitrate as it's "custom".

I turned off FEC as it adds latency.

Jitter buffer right now is just user controlled. A bit lame, - I should make it automatic, but need to get the right heuristic. With a LAN connection, the buffer can be as low as one or two packets.

I don't use any packet redundancy either and there's no ARQ as if you have to ask for a retransmit you've already lost the war!

How about you ?
weepy
·5 tahun yang lalu·discuss
no retransmits - Opus handles a degree of packet loss pretty well. Not using FEC as it adds extra latency.
weepy
·5 tahun yang lalu·discuss
Yes JUCE is da bomb
weepy
·5 tahun yang lalu·discuss
Well you do need to find a server midway between all the users, which is a hassle of course. I don't personally like the model either becuase it needs to decompress, mix and recomopress all the streams on the server and also needs an extra jitter buffer. The only clear benefit to it AFAIK is that it scales better for larger groups O(N) rather than O(N2)
weepy
·5 tahun yang lalu·discuss
Thanks!

I haven't ruled out opensourcing, but honestly I already have limited time and in my experience open source takes _more_ time commitment (I get that you will get free help eventually).

I'm making a VST plugin to stream output from a DAW.

Problem with Tauri is that you have to support the native browser, rather than just chrome, so it's more work to build and maintain.

Good luck with your project!

J
weepy
·5 tahun yang lalu·discuss
I would like to make some money with it to continue the support, but it's not clear yet the best way forward. Currently it's donationware, but other models could be a subscription, or some sort of premium/freemium model.

Really I just want to see how people use it and figure it out from there.
weepy
·5 tahun yang lalu·discuss
Thanks !
weepy
·5 tahun yang lalu·discuss
It uses WebRTC for the video, but the audio latency of WebRTC is too large and uncontrollable.

As stated in the post, the audio uses a custom C++ UDP solution. As far as I know it's the first video calling app with very low latency audio.
weepy
·5 tahun yang lalu·discuss
you could but you don't need higher latency.
weepy
·5 tahun yang lalu·discuss
You must have set it up wrong. It doesn't add any latency, but you do need a higher bitrate to get similar quality.