I'm trying to build VoIP into my browser-based game, and holy shit are sound processing people bad at explaining stuff.
Every stackoverflow answer has badly named variables, noone names the algorithms they're using (which makes research near impossible), and literally every single Web Audio API pipeline I have seen so far contains at least one unexplained effect with no parameters, but it's a different effect each time.
One guy had implemented some kind of smoothing for catching up with the stream after interruptions (where the playback speed is proportional to how far we're behind the intended latency), without ever mentioning it anywhere. And this is meant to be a basic example!

  • 4
    When you manage to get it working you should write an article or something explaining how you did it, that'd be pretty cool, I'm sure a lot of people would like it.
  • 3
    @neeno I'm doing it by using a ready made recorder worklet and playback is pretty straightforward with an AudioBufferSourceNode and a ringbuffer.
  • 3
    Update: the readymade recorder buffers fuckall, so this would hit the main thread every 2ms. I need a second worker and I'll probably write an article.
  • 0
    @Lor-inc yayy, but please for the love of god don't write it on dev.to...

    Also, post the link here or in another rant, I'd love to read it :)
Add Comment