Preserve BaseURL/Location, warm up MPD, clear sinf for VLC, and retry early stops so custom live DRM plays instead of Gestopt.
1.6 KiB
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:
- Signing & Capabilities → jouw Team
- 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.2+)
streamIdis een String ("123"of"custom:uuid"); path-segmenten worden URL-geëncodeerd (inclusief:).- Play-response parseert
format,drm(ClearKey kids/keys) enwatchSessionIdvoor live-lijsten én events. - Heartbeat:
POST /api/v1/client/watching/heartbeat~elke 25s bij custom live + events. - ClearKey/DASH: lokale in-app proxy (
ClearKeyDashProxy) haalt MPD/segmenten op (dynamic live: BaseURL/Location/query/Range), decrypt CENC/CBCS (sinf→free), en speelt plain DASH via MobileVLCKit. Xtream HLS/TS speelt direct zonder proxy. - Events-tab verschijnt als
/me→events.enabledtrue is.