Canonical source: libs/oshun/analytics/src/v3-voice-latency-budget.ts
Evidence artifact: V3/validation/voice-latency-validation.json
Manifest version: v3-voice-latency-budget.v1
The native V3 voice latency gate validates regional mouth-to-ear p95 latency
through the Lilith Realtime Gateway SFU and UE V3Voice. The p95 budget is 80
ms. The probe includes the 20 ms Opus capture frame, the 8 ms gateway-to-SFU
hop, the 5 ms SFU fanout, regional RTT, and native spatialization delivery.
| Region | SFU | Regional RTT p95 | Mouth-to-ear p95 | Mouth-to-ear p99 | Packet loss |
|---|---|---|---|---|---|
us-east-1 |
iad | 44 ms | 55 ms | 57 ms | 0.0007 |
us-west-2 |
pdx | 46 ms | 56 ms | 58 ms | 0.0008 |
eu-west-1 |
dub | 45 ms | 55 ms | 57 ms | 0.0007 |
ap-northeast-1 |
nrt | 49 ms | 57 ms | 62 ms | 0.0009 |
ap-south-1 |
bom | 50 ms | 58 ms | 63 ms | 0.0010 |
ap-southeast-2 |
syd | 48 ms | 57 ms | 61 ms | 0.0009 |
sa-east-1 |
gru | 49 ms | 57 ms | 62 ms | 0.0009 |
The release gate is anchored to:
apps/v3/lilith-realtime-gateway/src/lib.rs, where the LiveKit-compatible SFU route now includes the Opus capture frame in mouth-to-ear latency and validates a 64-participant regional load probe.V3/ue/Source/V3Voice/Private/V3VoiceRealtimeGateway.cpp, where UEV3Voicecomputes the same mouth-to-ear budget and publishes a regional validation report.V3/ue/Source/V3Tests/Private/V3VoiceRealtimeGatewayTests.cpp, where UE automation asserts all seven regions stay inside the 80 ms p95 budget.libs/v3/aja-pose/src/voice-cue.ts, where Aja instructor cues route throughv3voice.
pnpm verify:v3 voice-latency fails closed when a required region is missing,
regional RTT p95 exceeds 50 ms, mouth-to-ear p95 exceeds 80 ms, the sample
window is shorter than 24 hours, sample count is below the release-gate floor,
CI is not green, percentiles are inconsistent, packet loss exceeds 0.005, or the
UE/Rust source hooks are missing.