/xiu

A simple,high performance and secure live media server in pure Rust (RTMP[cluster]/RTSP/WebRTC[whip/whep]/HTTP-FLV/HLS).🦀

Primary LanguageRustMIT LicenseMIT

XIUcrates.io crates.io RTMPcrates.io crates.io RTSPcrates.io crates.io WEBRTCcrates.io crates.io HTTPFLVcrates.io crates.io HLScrates.io crates.io FLVcrates.io crates.io MPEGTScrates.io crates.io wechat

English Doc 中文文档

Xiu is a simple,high performance and secure live media server written in pure Rust, it now supports popular live protocols like RTMP[cluster]/RTSP/WebRTC[Whip/Whep]/HLS/HTTP-FLV.

Features

  • Support multiple platforms(Linux/MacOS/Windows).
  • Support RTMP.
    • Support publishing or subscribing H.264/AAC streams.
    • Support GOP cache which can be configured in the configuration file.
    • Support protocol conversion from RTMP to HTTP-FLV/HLS.
    • Support cluster.
  • Support RTSP.
    • Support publishing or subscribing H.265/H.264/AAC stream over both TCP(Interleaved) and UDP.
    • Support protocol conversion from RTSP to RTMP/HLS/HTTP-FLV.
  • Support WebRTC(Whip/Whep).
    • Support publishing rtc stream using Whip.
    • Support subscribing rtc stream using Whep.
    • Support protocol conversion from WHIP to RTMP/HLS/HTTP-FLV.
  • Support HTTP-FLV/HLS protocols(Transferred from RTMP/RTSP).
  • Support configuring the service using command line or a configuration file.
  • Support HTTP API/Notifications.
    • Support querying stream information.
    • Support notification of stream status.
  • Support token authentications.
  • Support recording live streams into HLS files(m3u8+ts).

Star History

Star History Chart

Thanks

Others

Open issues if you have any problems. Star and pull requests are welcomed. Your stars can make this project go faster and further.