Skip to content

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

Topics

Resources

Stars

163 stars

Watchers

11 watching

Forks

Repository files navigation

RootEncoder iOS

Release

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

Status

The project is not stable yet.

Features

  • Required iOS 14 and Swift 5
  • H264, H265 and AAC support
  • Switch camera while streaming
  • RTSP TCP/UDP
  • RTSPS
  • RTSP auth (basic and digest)
  • RTMP auth (adobe and llnw)
  • RTMP
  • RTMPS
  • Real time filters (with Metal)
  • Reconnection (RTMP and RTSP)
  • Stream from device display (DisplayRtsp/DisplayRtmp)
  • Get upload bandwidth used (RTMP and RTSP)
  • Local video record

Compile

Minimum requirements: iOS 14 and Swift 5.10.

Adding it from Xcode

  1. Open your project and go to File > Add Package Dependencies... (or Project > Package Dependencies > +).
  2. Paste this URL in the search bar:
https://github.com/pedroSG94/RootEncoder-iOS

Select exact version is recommended.

Adding it from Package.swift

dependencies: [
    .package(url: "https://github.com/pedroSG94/RootEncoder-iOS.git", from: "0.1.1")
],
targets: [
    .target(
        name: "YourTarget",
        dependencies: [
            .product(name: "RootEncoder", package: "RootEncoder-iOS")
        ]
    )
]

Import

The library exposes a single module with all the protocols included:

import RootEncoder

Use examples:

RTMP

https://github.com/pedroSG94/RootEncoder-iOS/blob/master/app/RtmpSwiftUIView.swift

RTSP

https://github.com/pedroSG94/RootEncoder-iOS/blob/master/app/RtspSwiftUIView.swift

Incoming features

  • Stream from file and others video/audio sources
  • Make RTMP module equivalent in features to Android version
  • Make RTSP module equivalent in features to Android version
  • SRT
  • WHIP

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

Topics

Resources

Stars

163 stars

Watchers

11 watching

Forks

Releases

Packages

Contributors

Languages