🍦 SwiftServe Get

Menu / packages / client-sdk-swift

LiveKitas of 2.15.1 · 7f3af148

https://github.com/livekit/client-sdk-swift

What it serves, where

CapabilityiOSmacOSwatchOStvOSvisionOSLinuxCatalyst
Noise cancellation

serves it · confidence 0.90 · as of 2.15.1

  • AudioCaptureOptions.noiseSuppression
    Sources/LiveKit/Types/Options/AudioCaptureOptions.swift:64
    View the line on GitHub →
    WebRTC software noise suppression toggle
  • kLiveKitKrispAudioProcessorName
    Sources/LiveKit/Protocols/AudioCustomProcessingDelegate.swift:22
    View the line on GitHub →
    Krisp processor hook in the custom-audio-processing delegate

serves it · confidence 0.75 · as of 2.15.1

  • AudioCaptureOptions.noiseSuppression
    Sources/LiveKit/Types/Options/AudioCaptureOptions.swift:64
    View the line on GitHub →
    WebRTC software noise suppression toggle (unguarded)
?

not verified yet · confidence 0.20 · as of 2.15.1

  • watchOS absent from the manifest platforms (iOS/macOS/macCatalyst/tvOS); the SDK's WebRTC binary dependency makes watchOS support doubtful, but nothing in source proves absence

serves it · confidence 0.75 · as of 2.15.1

  • AudioCaptureOptions.noiseSuppression
    Sources/LiveKit/Types/Options/AudioCaptureOptions.swift:64
    View the line on GitHub →
    manifest declares tvOS 17

serves it · confidence 0.70 · as of 2.15.1

?

not verified yet · confidence 0.10 · as of 2.15.1

  • the SDK rides on a prebuilt Apple-platform WebRTC xcframework; no Linux artifacts observed, but nothing in Swift source proves absence

serves it · confidence 0.75 · as of 2.15.1

Audio session management

serves it · confidence 0.90 · as of 2.15.1

  • AudioSessionEngineObserver
    #if os(iOS) || os(visionOS) || os(tvOS)
    Sources/LiveKit/Audio/AudioSessionEngineObserver.swift:24
    View the line on GitHub →
    automatic AVAudioSession configuration observer

not served here · confidence 0.85 · as of 2.15.1

  • AudioSessionEngineObserver
    #if os(iOS) || os(visionOS) || os(tvOS)
    Sources/LiveKit/Audio/AudioSessionEngineObserver.swift:24
    View the line on GitHub →
    the session-management observer is fenced to iOS/visionOS/tvOS — macOS has no AVAudioSession; the line that decides it

not served here · confidence 0.80 · as of 2.15.1

  • AudioSessionEngineObserver
    #if os(iOS) || os(visionOS) || os(tvOS)
    Sources/LiveKit/Audio/AudioSessionEngineObserver.swift:24
    View the line on GitHub →

serves it · confidence 0.90 · as of 2.15.1

  • AudioSessionEngineObserver
    #if os(iOS) || os(visionOS) || os(tvOS)
    Sources/LiveKit/Audio/AudioSessionEngineObserver.swift:24
    View the line on GitHub →

serves it · confidence 0.90 · as of 2.15.1

  • AudioSessionEngineObserver
    #if os(iOS) || os(visionOS) || os(tvOS)
    Sources/LiveKit/Audio/AudioSessionEngineObserver.swift:24
    View the line on GitHub →

not served here · confidence 0.80 · as of 2.15.1

  • AudioSessionEngineObserver
    #if os(iOS) || os(visionOS) || os(tvOS)
    Sources/LiveKit/Audio/AudioSessionEngineObserver.swift:24
    View the line on GitHub →

serves it · confidence 0.85 · as of 2.15.1

  • AudioSessionEngineObserver
    #if os(iOS) || os(visionOS) || os(tvOS)
    Sources/LiveKit/Audio/AudioSessionEngineObserver.swift:24
    View the line on GitHub →
    present via os(iOS) — Catalyst compiles as iOS
WebRTC real-time streaming

serves it · confidence 0.85 · as of 2.15.1

serves it · confidence 0.85 · as of 2.15.1

?

not verified yet · confidence 0.20 · as of 2.15.1

  • watchOS absent from manifest floors

serves it · confidence 0.75 · as of 2.15.1

serves it · confidence 0.75 · as of 2.15.1

?

not verified yet · confidence 0.10 · as of 2.15.1

  • prebuilt WebRTC xcframework is Apple-only

serves it · confidence 0.80 · as of 2.15.1

Video calling

serves it · confidence 0.85 · as of 2.15.1

serves it · confidence 0.85 · as of 2.15.1

?

not verified yet · confidence 0.20 · as of 2.15.1

  • watchOS absent from manifest floors

serves it · confidence 0.75 · as of 2.15.1

serves it · confidence 0.75 · as of 2.15.1

?

not verified yet · confidence 0.10 · as of 2.15.1

  • prebuilt WebRTC xcframework is Apple-only

serves it · confidence 0.80 · as of 2.15.1

Screen sharing

serves it · confidence 0.85 · as of 2.15.1

  • LocalParticipant.setScreenShare
    Sources/LiveKit/Participant/LocalParticipant.swift:353
    View the line on GitHub →
    generic screen-share toggle
  • LocalVideoTrack.createBroadcastScreenCapturerTrack
    #if os(iOS)
    Sources/LiveKit/Broadcast/BroadcastScreenCapturer.swift:99
    View the line on GitHub →
    ReplayKit broadcast-extension capture — fenced os(iOS)
  • manifest declares iOS 13

serves it · confidence 0.80 · as of 2.15.1

  • LocalParticipant.setScreenShare
    Sources/LiveKit/Participant/LocalParticipant.swift:353
    View the line on GitHub →
    generic screen-share toggle
  • manifest declares macOS 10.15
?

not verified yet · confidence 0.20 · as of 2.15.1

  • watchOS absent from manifest floors
?

not verified yet · confidence 0.30 · as of 2.15.1

  • setScreenShare compiles for tvOS 17; capturing a TV app's screen is undocumented territory

serves it · confidence 0.85 · as of 2.15.1

  • LocalParticipant.setScreenShare
    Sources/LiveKit/Participant/LocalParticipant.swift:353
    View the line on GitHub →
    generic screen-share toggle
  • compiles for visionOS — Xcode 26.6 (17F113), XROS26.5.sdk, scheme LiveKit
?

not verified yet · confidence 0.10 · as of 2.15.1

  • Apple-only

serves it · confidence 0.75 · as of 2.15.1

  • LocalParticipant.setScreenShare
    Sources/LiveKit/Participant/LocalParticipant.swift:353
    View the line on GitHub →
    generic screen-share toggle
Voice calling

serves it · confidence 0.85 · as of 2.15.1

serves it · confidence 0.85 · as of 2.15.1

?

not verified yet · confidence 0.20 · as of 2.15.1

  • watchOS absent from manifest floors

serves it · confidence 0.75 · as of 2.15.1

serves it · confidence 0.75 · as of 2.15.1

?

not verified yet · confidence 0.10 · as of 2.15.1

  • prebuilt WebRTC xcframework is Apple-only

serves it · confidence 0.80 · as of 2.15.1

✓ serves it · ◐ with conditions · ✕ not served (proven) · ? not verified yet — hover any verdict for the receipt, click to pin it

Notes

Noise cancellation: Two tiers. (1) WebRTC software noise suppression ships in the SDK itself (AudioCaptureOptions.noiseSuppression, unguarded). (2) Krisp-grade enhanced noise cancellation comes from the companion LiveKitKrispNoiseFilter package, whose real platform fence lives inside a binary xcframework: its manifest was iOS-only through 0.0.3 and added macOS at 0.0.5 — the founding incident of this index. At the pinned versions both tiers claim macOS.

Audio session management: A textbook feature×platform gap caught from source: LiveKit's automatic audio-session handling exists only where AVAudioSession does (iOS/visionOS/tvOS, plus Catalyst via os(iOS)). On macOS you configure audio routing yourself.

WebRTC real-time streaming: WebRTC transport via the webrtc-xcframework binary companion.

Video calling: Rooms with camera/mic tracks over WebRTC.

Screen sharing: Screen sharing on iOS (in-app + ReplayKit broadcast extension) and macOS (display capture). The broadcast capturer is explicitly fenced os(iOS).

Voice calling: Audio-only rooms over the same Room machinery.

Badges for your README

Maintainer of LiveKit? These are yours — verified claims, linked to the receipts. Wrong verdict? That's a fix we want; see contribute.

verified badge
capability matrix badge
Noise cancellation badge
Audio session management badge
WebRTC real-time streaming badge
Video calling badge
Screen sharing badge
Voice calling badge