Audiobus’ Self-Repairing Audio Stream

Audiobus signal repair algorithm demonstration

I’m just finishing up working on Audiobus’s new stream self-repair code, which will automatically regenerate missing audio caused by an overloaded device or excessive network loss.

Audiobus already contains a mechanism to automatically recover audio packets that go missing in-transit, but if the app you are using uses Audiobus’s low-latency mode (instead of the normal, lossless ‘production-quality’ mode suitable for high-quality recording), this will not be used, as it creates too much delay in the signal.

When an audio packet gets lost, you get a hole in the audio, which causes a noticeable click. Audiobus’s new self-repair mechanism automatically recognises and patches these holes with a new chunk of audio that’s derived from the surrounding context. It won’t be exact, but it’s usually pretty damn good. Plus, it’s all built using the speedy Accelerate vector DSP framework, so it’s very light.

This is a recording of the same audio segment played twice - one version with a hole due to a lost packet, and one version after running Audiobus’s self-repair algorithm. Click: gone!

// Michael

Tags: DSP audio
  1. sinapsya reblogged this from audiobus and added:
    Very interesting from Audiobus App
  2. audiobus posted this