chatgear/transport
Overview
The transport layer defines bidirectional streaming interfaces for chatgear. It splits data flow into uplink (device -> server) and downlink (server -> device) and provides a test-friendly in-process pipe.
Design Goals
- Separate uplink/downlink responsibilities
- Provide a minimal interface that can be implemented by different transports
- Keep Opus framing metadata explicit
Key Concepts
UplinkTx/UplinkRx: device -> serverDownlinkTx/DownlinkRx: server -> device- Stamped Opus frames: carry timestamp for playback alignment
- Pipe connection for in-process testing