mwg API
    Preparing search index...

    Variable onAudioUnderrunConst

    onAudioUnderrun: Signal<AudioUnderrun> = ...

    The one place every audio underrun is reported, whichever voice had it. A game forwards this to its telemetry (TelemetryClient, which bounds what it sends) or shows it in a settings panel; the voices also have their own signals for code that cares about a single one.

    import { onAudioUnderrun } from '@datamoc/mwg/audio';

    let dropouts = 0;
    onAudioUnderrun.add(() => {
    dropouts++;
    });