0
我试图让一个.m3u8视频流在我的应用程序中播放。我在斯威夫特iOS编程9和10HLS && .m3u8in iOS 10
这是我走到这一步:
import UIKit
import AVKit
import AVFoundation
import DynamicBlurView
class VideoPlayerViewController: AVPlayerViewController {
var urlString: String!
let blurView = DynamicBlurView()
override func viewDidLoad() {
super.viewDidLoad()
streamVideo()
}
func streamVideo() {
blurView.frame = view.frame
UIView.showProgressView(on: view, blurView: blurView)
let url = URL(string: urlString!)
let item = AVPlayerItem(url: url!)
player = AVPlayer(playerItem: item)
UIView.hideProgressView(on: view, blurView: blurView)
player?.play()
}
}
这应该是简单的,但我得到的错误和崩溃所有的地方。
这是我收到的错误:
错误域= AVFoundationErrorDomain代码= -11800 “的操作可能 无法完成” 的UserInfo = {NSLocalizedDescription =该操作可能 无法完成,NSUnderlyingError = 0x7b5b6810 {错误 域= NSOSStatusErrorDomain代码= -12782 “(空)”}, NSLocalizedFailureReason =出现未知错误(-12782)}
请帮帮我!
编辑:
试过这个建议没有运气。该应用程序仍然崩溃。如果该信息有助于任何人,那么崩溃会将我带到AppDelegate。
import UIKit
import AVKit
import AVFoundation
import DynamicBlurView
class VideoPlayerViewController: AVPlayerViewController {
var urlString: String!
let blurView = DynamicBlurView()
override func viewDidLoad() {
super.viewDidLoad()
streamVideo()
}
func streamVideo() {
blurView.frame = view.frame
UIView.showProgressView(on: view, blurView: blurView)
let sampleURL = "https://devimages.apple.com.edgekey.net/streaming/examples/bipbop_4x3/bipbop_4x3_variant.m3u8"
guard let url = URL(string: sampleURL) else { return }
let playerItem = AVPlayerItem(url: url)
player = AVPlayer(playerItem: playerItem)
player?.play()
UIView.hideProgressView(on: view, blurView: blurView)
}
}