A Swift library for camera and microphone live streaming via RTMP and SRT across Apple platforms.
HaishinKit is a Swift library that enables real-time camera and microphone streaming via RTMP and SRT protocols for iOS, macOS, tvOS, and visionOS applications. It solves the problem of integrating live broadcasting capabilities into Apple platform apps, providing a comprehensive toolkit for capturing, encoding, and transmitting audio and video streams. The library supports advanced features like multi-camera access, screen capture, and video mixing.
iOS, macOS, tvOS, and visionOS developers building applications that require live audio and video streaming, such as live broadcasting apps, video conferencing tools, or real-time content sharing platforms.
Developers choose HaishinKit for its mature, production-ready codebase with over 10 years of development, support for industry-standard streaming protocols (RTMP/SRT), and comprehensive feature set tailored for Apple's platforms. Its strict concurrency compliance and active maintenance provide a reliable foundation for demanding streaming applications.
Camera and Microphone streaming library via RTMP and SRT for iOS, macOS, tvOS and visionOS.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
With over 10 years of development, 2,778 commits, and 163 releases, HaishinKit offers a proven, reliable codebase for production streaming apps.
Supports RTMP and SRT for publishing and playback, with alpha support for WHEP/WHIP, covering key industry standards for live streaming.
Includes multi-camera access for iPad multitasking, screen capture via system APIs, and real-time video mixing for overlays like watermarks.
Compliant with Swift's Strict Concurrency model, ensuring thread-safe operations and better performance in modern Swift applications.
The README warns of issues with Xcode connections and requires manual AVAudioSession configuration and Cocoa Keys, adding to initial integration overhead.
WHEP/WHIP support is labeled as alpha, making it unsuitable for projects needing stable, out-of-the-box WebRTC streaming capabilities.
While there are related projects for Android and Flutter, they are separate codebases, potentially leading to feature disparities and maintenance challenges.