Skip to content

RootEncoder iOS (rtmp-rtsp-stream-client-swift) is a stream encoder to push video/audio to media servers using protocols RTMP, RTSP and SRT with all code written in Swift

License

Notifications You must be signed in to change notification settings

Qwer511/RootEncoder-iOS

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RootEncoder iOS

RootEncoder iOS (rtmp-rtsp-stream-client-swift) is a stream encoder to push video/audio to media servers using protocols RTMP, RTSP and SRT with all code written in Swift

Status

The project is not stable yet. For now, the min iOS version required is iOS14 but I have plan to downgrade it a bit. Swift 5 is required because RTMP and RTSP protocol use async await in sockets.

Features

  • H264 and AAC support
  • Switch camera while streaming
  • RTSP TCP/UDP
  • RTSPS
  • RTSP auth (basic and digest)
  • RTMP
  • RTMPS
  • Real time filters (with Metal). For now, support only filters with CIImage but I have plan to add filters using vertex and fragment
  • Reconnection (RTMP and RTSP)
  • Stream from device display (DisplayRtsp/DisplayRtmp)
  • H265 support (RTSP)
  • Get upload bandwidth used (RTMP and RTSP)

Incoming features

I will develop this features but not in this order.

  • RTMP auth (adobe and llnw)
  • H265 support (RTMP)
  • Local video record
  • Stream from file (FromFileRtsp/FromFileRtmp)
  • Upload to cocoapod or similar
  • Minors features: video bitrate on fly, adaptative bitrate.
  • SRT (maybe the last one)

About

RootEncoder iOS (rtmp-rtsp-stream-client-swift) is a stream encoder to push video/audio to media servers using protocols RTMP, RTSP and SRT with all code written in Swift

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 99.2%
  • Other 0.8%