Telnyx
Syrinx terminates Telnyx Media Streaming and transcodes per the negotiated codec — including wideband G.722, which keeps the top half of the speech band that narrowband μ-law throws away before it reaches your STT.
Start a stream
Section titled “Start a stream”Start bidirectional media from a Telnyx call to your endpoint with a Call Control streaming_start command (or the equivalent TeXML <Stream> verb):
POST /v2/calls/{call_control_id}/actions/streaming_start{ "stream_url": "wss://<your-host>/telnyx?sessionId=<id>", "stream_bidirectional_mode": "rtp", "stream_bidirectional_codec": "G722"}The reference Worker exposes a /telnyx-stream-start helper that builds this payload (or the TeXML) for you.
Codecs
Section titled “Codecs”Telnyx negotiates the codec at stream start via stream_bidirectional_codec. Syrinx accepts and transcodes:
| Codec | Rate | Notes |
|---|---|---|
PCMU | 8 kHz | μ-law, the default |
PCMA | 8 kHz | A-law |
G722 | 16 kHz | Wideband — kept at 16 kHz to your STT, no downsample |
L16 | 16 kHz | Linear PCM |
On Cloudflare Workers
Section titled “On Cloudflare Workers”The reference Worker binds a TelnyxVoiceConversation Durable Object to /telnyx. The codecs are pure and run on the edge unchanged.
See Codecs, DTMF & transfer for sending DTMF and transferring calls.