To decode an AES-128 / similar HLS encrypted video, simply add "Authorization" to your header.
let headers = ["Authorization": "Bearer xxxxxxxxxxxxxxxx..."]
let avAsset = AVURLAsset(url: videoURL, options: ["AVURLAssetHTTPHeaderFieldsKey": headers])
let avItem = AVPlayerItem(asset: avAsset)
let avPlayer = AVPlayer(playerItem: avItem)
.
.
.
Thanks @ SeanLintern88 for helping with this.
source
share