stremio/apps/ios/README.md
Jos Vooges | STH fac38d905e Enable iOS ClearKey DASH playback via local CENC decrypt proxy.
MobileVLCKit cannot decrypt ClearKey; the app now decrypts segments in-process and feeds plain DASH to VLC, removing the coming-soon DRM dead-end (0.5.1/13).
2026-09-19 06:37:11 +02:00

1.6 KiB

VMC iOS (SwiftUI + MobileVLCKit)

Native iPhone/iPad app voor Vonas Media Cluster.

Op de Mac

cd ~/Code/mediacluster/apps/ios
open VMC.xcodeproj

Eerste keer (of na schone sync) VLCKit zetten:

bash scripts/fetch-vlckit.sh   # download ~250MB (eenmalig)
bash scripts/link-vlckit.sh    # kopieert naar Vendor/ + linkt in Xcode

In Xcode:

  1. Signing & Capabilities → jouw Team
  2. iPhone selecteren → ▶ Run

Apple TV (tvOS)

Apart project (zelfde API, TV-UI met focus/remote):

cd ~/Code/mediacluster/apps/ios
bash scripts/fetch-tvvlckit.sh
bash scripts/link-tvvlckit.sh
open VMCTV.xcodeproj
  • Bundle ID: nl.vonas.mediacluster.tvos
  • Team: X25NYX3K49
  • Playback: TVVLCKit (zelfde VLC-engine als iPhone) — MKV werkt
  • Details: VMCTV/README.md

Let op

Vendor/MobileVLCKit.xcframework en Vendor/TVVLCKit.xcframework staan niet in git (te groot). Altijd op de Mac via de scripts installeren.

Live TV / Events / ClearKey (0.5.1+)

  • streamId is een String ("123" of "custom:uuid"); path-segmenten worden URL-geëncodeerd (inclusief :).
  • Play-response parseert format, drm (ClearKey kids/keys) en watchSessionId.
  • Heartbeat: POST /api/v1/client/watching/heartbeat ~elke 25s bij custom live + events.
  • ClearKey/DASH: lokale in-app proxy (ClearKeyDashProxy) haalt MPD/segmenten op, decrypt CENC/CBCS met de API-keys (zelfde hex kid/key + GUID-endianness als Android), en speelt plain DASH via MobileVLCKit. Xtream HLS/TS speelt direct zonder proxy.
  • Events-tab verschijnt als /me → events.enabled true is.