Open yuanzhiying opened 5 years ago
func initSubView() { playerLayer = AVPlayerLayer.init(player: player) playerLayer!.videoGravity = .resizeAspect self.layer.addSublayer(self.playerLayer!)
player = AVPlayer()
playerLayer!.player = player
}
if let url = sourceURL {
let urlAsset = AVAsset(url: url)
let playerItem = AVPlayerItem(asset: urlAsset)
player!.replaceCurrentItem(with: playerItem)
player?.currentItem!.addObserver(self, forKeyPath: "status", options: [.initial, .new], context: nil)
addProgressObserver()
}
func respondWithDataForRequest(loadingRequest:AVAssetResourceLoadingRequest) -> Bool { let mimeType = self.response?.mimeType ?? "" let contentType = UTTypeCreatePreferredIdentifierForTag(kUTTagClassMIMEType, mimeType as CFString, nil) loadingRequest.contentInformationRequest?.isByteRangeAccessSupported = true loadingRequest.contentInformationRequest?.contentType = contentType?.takeRetainedValue() as String? // 崩溃位置 --- loadingRequest.contentInformationRequest?.contentLength = (self.response?.expectedContentLength)!