Skip to main content

Crate udptl

Crate udptl 

Source
Expand description

UDPTL (UDP Transport Layer) codec and socket for T.38 fax.

UDPTL carries T.38 IFP packets over UDP with built-in error recovery via packet redundancy or forward error correction (FEC). Each UDPTL packet contains:

  • Sequence number (2 bytes, big-endian, 0–65535)
  • Primary IFP payload (ASN.1 open type)
  • Error recovery: redundant copies of recent IFP packets, or FEC parity data

See ITU-T T.38 (Section 9.1, Annexes A and C) for the canonical specification.

§Features

  • Sync socket (UdptlSocket) — always available, wraps std::net::UdpSocket
  • Async socket (AsyncUdptlSocket) — requires the tokio feature (default)
  • Pure codec (UdptlPacket) — encode/decode without any socket, always available

§Feature flags

FeatureDefaultDescription
tokioyesEnables AsyncUdptlSocket

For sync-only usage: udptl = { version = "0.1", default-features = false }

Re-exports§

pub use error::Result;
pub use error::UdptlError;
pub use packet::ErrorRecovery;
pub use packet::MAX_UDPTL_PACKET_SIZE;
pub use packet::UdptlPacket;
pub use sync::UdptlSocket;
pub use async_socket::AsyncUdptlSocket;

Modules§

async_socket
error
packet
sync

Structs§

UdptlConfig
Configuration for a UDPTL session.

Enums§

ErrorCorrectionScheme
Error correction scheme for outgoing packets.