Encrypted RTSP/1.0 over a paired AirPlay 2 connection. After
AirPlay.V2.Pairing, the whole RTSP message (request line + headers + body)
is wrapped through AirPlay.V2.SecureChannel (ChaCha20-Poly1305 block
framing); responses are decrypted and parsed the same way. Mirrors
RTSPClientV2.Request. Verified live against a real AirPlay 2
device (encrypted GET /info → decrypted 200 OK).
Summary
Functions
Send an encrypted RTSP request and read the decrypted response. Returns
{:ok, status, headers_map, body, state} or {:error, reason}.
Wrap a paired socket + session key into an encrypted RTSP client.
Types
Functions
@spec request(t(), String.t(), String.t(), [{String.t(), String.t()}], binary()) :: {:ok, non_neg_integer(), map(), binary(), t()} | {:error, term()}
Send an encrypted RTSP request and read the decrypted response. Returns
{:ok, status, headers_map, body, state} or {:error, reason}.
Wrap a paired socket + session key into an encrypted RTSP client.