Table of Contents

Class AudioCppTiming

Namespace
Mabs.AudioCpp.Models
Assembly
AudioCpp.dll

Inference timing. Different endpoints populate different members: non-streaming runs report WallMs, AudioDurationMs and Rtf; streaming runs report TtftMs (when the server sent a ttft_ms key — check TtftPresent because a live-speech timing can carry an explicit JSON null); live speech adds the remaining members.

public sealed class AudioCppTiming
Inheritance
AudioCppTiming
Inherited Members

Properties

AudioDurationMs

Audio duration in milliseconds (generated audio for speech, input audio for transcription).

public double? AudioDurationMs { get; }

Property Value

double?

FirstAudioBeforeInputEnd

Live speech: whether first output audio arrived before the input stream closed.

public bool? FirstAudioBeforeInputEnd { get; }

Property Value

bool?

InputEndMs

Live speech: milliseconds from request start to the end of the input stream.

public double? InputEndMs { get; }

Property Value

double?

OverlapMs

Live speech: milliseconds of output that overlaps the still-open input stream.

public double? OverlapMs { get; }

Property Value

double?

RequestStartToFirstAudioMs

Live speech: milliseconds from request start to first output audio.

public double? RequestStartToFirstAudioMs { get; }

Property Value

double?

Rtf

Real-time factor: wall_ms / audio_duration_ms.

public double? Rtf { get; }

Property Value

double?

TtftMs

Time to first output, in milliseconds; null when absent or explicitly null.

public double? TtftMs { get; }

Property Value

double?

TtftPresent

true when the timing object contained a ttft_ms key with a non-null value. A live-speech timing sets TtftMs to null while this is true when the first output audio arrived before the input stream ended.

public bool TtftPresent { get; }

Property Value

bool

WallMs

Inference wall time in milliseconds.

public double? WallMs { get; }

Property Value

double?