About this project

srtdroid is a binder/wrapper that brings the open-source SRT (Secure Reliable Transport) library to Android. It is not a reimplementation of the protocol but exposes SRT's capabilities through a minimalist Android API. SRT is designed to optimize streaming performance over unpredictable networks. Key features: - Available on MavenCentral with a core library and an optional Kotlin Coroutines extension (srtdroid-ktx). - Provides send() and recv() methods mapping to SRT's send, sendMsg, recv, and recvMsg calls. - Offers InputStream and OutputStream alternatives for stream-based usage. - Supports sendFile and recvFile operations, with appropriate Android storage permissions. - Includes an example application mirroring the official SRT examples folder, demonstrating client and server usage. - Builds the SRT and OpenSSL libraries during compilation (Linux supported; Windows not supported due to OpenSSL build complexity; macOS untested). - Notes Android 17+ local network permission requirements for communication with local IPs. The project is licensed under Apache 2.0. For a higher-level live streaming SDK built on SRT, the author points to the separate StreamPack project. srtdroid focuses on the low-level protocol API, directing users to the official SRT documentation for extensive protocol details.