About this project
HaishinKit.swift provides a comprehensive streaming solution for Apple platforms, enabling developers to build live broadcasting and playback features using RTMP, SRT, and experimental WHEP/WHIP protocols. The library has been in active development for over 10 years with 2,778 commits and 163 releases.
Key capabilities include:
- **Protocol support**: RTMP (publish/playback), SRT (publish/playback), and WHEP/WHIP (alpha) for WebRTC-based streaming
- **Multi-camera access**: Leverages iPad multitasking camera APIs for simultaneous camera usage
- **Multi-streaming**: Stream to multiple services concurrently; views can verify raw video data
- **Screen capture**: ReplayKit on iOS and ScreenCaptureKit on macOS for screen broadcasting
- **Video mixing**: Overlay text or bitmaps (watermarks, timestamps) during publishing or playback
- **Strict concurrency**: Fully compliant with Swift's modern concurrency model
Requirements: Xcode 16.4+ / Swift 6.0+ for latest versions; supports iOS/tvOS 15+, macOS 12+, visionOS 1+. Mac Catalyst lacks SRT support. Integration via Swift Package Manager. Developers must configure AVAudioSession and Info.plist privacy keys for camera/microphone access.
The project includes example apps for publish/playback testing, API documentation at docs.haishinkit.com, and a migration guide. Companion projects exist for Android (Kotlin) and Flutter (Dart). Licensed under BSD-3-Clause.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.