PROTOCOL NOTES / 10

09 · Silence, speaking, feedback and experimental DTX

Participants: Audio, Engine, Peer

Implemented software · Physical qualification pending

Starting state

Active unmuted source; default continuous mode or explicit persisted experimental opt-in.

Ordered events

  1. Audio → Audio

    Analyze each processed 10-ms block with raw/processed level guards

  2. Audio → Engine

    Encode every 20-ms frame; suppress only codec-confirmed no-transmit result

  3. Engine → Peer

    Signed source_status on transition and heartbeat repetition

  4. Peer → Engine

    Packet-index feedback reports true transmitted losses

  5. Audio → Peer

    Weak speech disables DTX for current frame; RTP marker resumes talk spurt

Fields and messages

experimentalDtx default false; transmission state/revision/effectiveTimestamp/nextIndex; RTP time advances while sequence does not during suppression.

Authorization and invariants

Hints tied to admitted source/current SSRC never reset replay or suppress actual received media. Speaking combines weak VAD and energy independently of suppression.

Timers

2-s startup; 1-s hangover then 1.5-s quiet; >6 dB/200 ms causes 10-s fallback; three rapid exits trigger session fallback; hints fresh 3 s.

Resource lifetime

Opt-in persists; VAD/codec policy lives in local audio session; keys and extended packet indexes survive silence.

What the rider sees

Experimental toggle explains disable action; activity remains independent of bandwidth savings.

Failure branches

Unknown/stale scores force continuous; comfort updates are sent; timestamp-unrelated FEC is skipped; bounded PLC ends in silence.

Resulting state

Continuous mode sends every encoded frame; conservative mode omits only actual no-transmit frames during qualified quiet and resumes on uncertainty.

Evidence boundary

Three-mode annotated offline corpus, policy/sender/receiver/model tests and multi-hop loss/jitter regression. No field intelligibility claim.

← All scenarios

Authority: RWCP v2 reviewed scenario catalogue, scenario 09. Public examples are synthetic. This guide is maintained against the private implementation; it does not imply access to its source.