HaishinKit Plugin
- A Flutter plugin for iOS, Android. Camera and Microphone streaming library via RTMP.
Note
This project is being developed with the goal of defining a Flutter interface for HaishinKit. However, since development is progressing slowly, I recommend using other plugins if you need something stable or are in a hurry.
Android | iOS | macOS | |
---|---|---|---|
Support | SDK 21+ | iOS 13.0+ | 10.15+ |
💖 Sponsors
Do you need additional support? Technical support on Issues and Discussions is provided only to contributors and academic researchers of HaishinKit. By becoming a sponsor, we can provide the support you need.
Sponsor: $50 per month: Technical support via GitHub Issues/Discussions with priority response.
💬 Communication
- GitHub Issues and Discussions are open spaces for communication among users and are available to everyone as long as the code of conduct is followed.
- Whether someone is a contributor to HaishinKit is mainly determined by their GitHub profile icon. If you are using the default icon, there is a chance your input might be overlooked, so please consider setting a custom one. It could be a picture of your pet, for example. Personally, I like cats.
- If you want to support e-mail based communication without GitHub.
- Consulting fee is $50/1 incident. I'm able to response a few days.
🌏 Dependencies
Project name | Notes | License |
---|---|---|
HaishinKit for iOS, macOS and tvOS. | Camera and Microphone streaming library via RTMP, HLS for iOS, macOS and tvOS. | BSD 3-Clause "New" or "Revised" License |
HaishinKit for Android. | Camera and Microphone streaming library via RTMP for Android. | BSD 3-Clause "New" or "Revised" License |
🔧 Setup
Please contains macos/Runner/Info.plist
and ios/Runner/Info.plist
files.
<key>NSCameraUsageDescription</key>
<string>your usage description here</string>
<key>NSMicrophoneUsageDescription</key>
<string>your usage description here</string>
Please contains macos/Runner/Debug.Entitlements
and macos/Runner/Release.Entitlements
files.
<key>com.apple.security.device.audio-input</key>
<true/>
<key>com.apple.security.device.camera</key>
<true/>
🎨 Features
RTMP
x
Authenticationx
Publish and Recording (H264/AAC)x
Playback (Beta)x
Adaptive bitrate streamingx
Automatic drop frames
x
AMF0
x
SharedObjectx
RTMPSx
Native (RTMP over SSL/TLS)
🐾 Example
An example project is available for both iOS and Android. https://github.com/HaishinKit/HaishinKit.dart/tree/main/example
📜 License
BSD-3-Clause
Libraries
- audio_settings
- audio_source
- av_capture_session_preset
- haishin_kit
- haishin_kit_method_channel
- haishin_kit_platform_interface
- rtmp_connection
- rtmp_connection_method_channel
- rtmp_connection_platform_interface
- rtmp_stream
- rtmp_stream_method_channel
- rtmp_stream_platform_interface
- screen_settings
- stream
- stream_view_texture
- video_settings
- video_source