Skip to main content

Installation

The Swift SDK can be installed using Swift Package Manager, if you are starting a new project we always recommend using the latest release. Releases and changes are published on the Github releases page.

We also provide pre-built XCFramework support, read more here.

Add the SDK to your project

To add StreamVideo SDK, open Xcode and follow these steps:

Screenshot shows how to add the SPM dependency

  • Choose "Add Package" and wait for the dialog to complete.
  • Select StreamVideo and StreamVideoSwiftUI (if you use SwiftUI, otherwise also select StreamVideoUIKit).

Screenshot shows selection of dependencies

Permissions

Making a video call requires the usage of the camera and the microphone of the device. Therefore, you need to request permissions to use them in your app. In order to do this, you will need to add the following keys and values in your Info.plist file.

Privacy - Camera Usage Description - "Your_app_name requires camera access in order to capture and transmit video" Privacy - Microphone Usage Description - "Your_app_name requires microphone access in order to capture and transmit audio"

Screenshot shows permissions in the .plist file

Push notifications

Stream video support both Remote Notifications and VoIP notifications. See the Push Notification section for more details.

XCFrameworks

In an effort to have Module Stability, we distribute pre-built XCFrameworks.

tip

Our XCFrameworks are built with Swift 5.9. In order to use them you need Xcode 15 or above.

An XCFramework is a package that contains binaries for multiple architectures/platforms, but only the particular slice of that package required for your architecture/platform will be used.

Benefits of XCFrameworks:

  • Conveniently import a single package
  • Supports all platforms and architectures
  • No more fat binaries. No more architectures stripping
tip

In order to manually integrate StreamVideo XCFrameworks, you need to add an additional dependency to your project.

.package(name: "StreamWebRTC", url: "https://github.com/GetStream/stream-video-swift-webrtc.git", .exact("114.5735.8"))

Did you find this page helpful?