Skip to content

AudioInputStats

Defined in: audio-player.ts:138

An input’s counters and jitter-buffer state. Counters are cumulative; durations are microseconds.

bufferedUs: number;

Defined in: audio-player.ts:161

The audio held now.


concealedUs: number;

Defined in: audio-player.ts:167

Silence played in place of frames that never came.


cutHeardAtUs: number | null;

Defined in: audio-player.ts:183

When the latest cut() is heard: the time, on the clock’s time source (performance.now() µs without a clock), at which the first output rendered after the jitter buffer applied it reaches the speaker, so the cut audio has stopped. null before any cut, and from each cut() until the buffer has applied it. How an interruption is timed: from the talker’s request to here is how long its old audio kept playing.


cutUs: number;

Defined in: audio-player.ts:176

Audio dropped by cut().


decoded: number;

Defined in: audio-player.ts:140

Frames handed to the decoder.


decoderResets: number;

Defined in: audio-player.ts:144

Times the decoder was reset or replaced: at a discontinuity, a timestamp jump, or after an error.


dryAtUs: number | null;

Defined in: audio-player.ts:159

The timeline timestamp where the buffer last ran dry while playing, until playback starts again; null otherwise, and after a flush or a cut that empties the buffer.


errors: number;

Defined in: audio-player.ts:146

Decoder errors.


heldUntilUs: number | null;

Defined in: audio-player.ts:154

The timeline timestamp just past the newest audio held: the end of decoded audio. null when nothing is held.


jitterTargetUs: number;

Defined in: audio-player.ts:163

The jitter-buffer target now.


late: number;

Defined in: audio-player.ts:142

Frames dropped on arrival: behind audio already decoded, or inside a cut.


playing: boolean;

Defined in: audio-player.ts:150

Whether the buffer is playing, rather than filling to its target.


playStarts: number;

Defined in: audio-player.ts:152

Times playback started: at the start, after running dry, and after a flush or a cut that emptied the buffer.


recoveredUs: number;

Defined in: audio-player.ts:174

Audio rebuilt for frames that never came from the next frame’s in-band FEC; counted as synthesizedUs is.


reports: number;

Defined in: audio-player.ts:185

Clock reports made.


synthesizedUs: number;

Defined in: audio-player.ts:172

Audio synthesized in place of frames that never came: libopus packet-loss concealment. Counted as it is decoded, less, from the next report, what the jitter buffer dropped because it had run dry by the time it came.


trimmedUs: number;

Defined in: audio-player.ts:165

Audio dropped to shed latency: held past what the target needed, or past the hard bound.


underruns: number;

Defined in: audio-player.ts:148

Times the buffer ran dry while playing and audio came back within the jitter-buffer ceiling.