swift中的 AVPlayerViewController 和 AVPlayer 不显示任何内容

Posted

技术标签:

【中文标题】swift中的 AVPlayerViewController 和 AVPlayer 不显示任何内容【英文标题】:AVPlayerViewController and AVPlayer in swift doesn't show anything 【发布时间】:2015-12-18 11:11:21 【问题描述】:

我正在尝试使用 AVPlayerAVPlayerViewController 中的文档路径播放 mp4 视频,但屏幕上没有显示任何内容。我做错了什么?

这里是模拟器的截图:http://postimg.org/image/xma60nfrf/

这是我的代码:

func startPlayer(filePath:String)

    let dirPaths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory,.UserDomainMask, true)
    let docsDir = dirPaths[0]


    let filePath = (docsDir as NSString).stringByAppendingPathComponent(videos[videoNo]._Name)

    playerVC=AVPlayerViewController()
    playerVC!.view.frame=self.view.bounds
    playerVC!.view.layer.zPosition = 1;


    var videoURL = NSURL(string: filePath)
    var player = AVPlayer(URL: videoURL!)
    var playerLayer = AVPlayerLayer(player: player)
    playerLayer.frame = playerVC!.view.bounds
    playerVC!.view.layer.addSublayer(playerLayer)

    playerVC!.player=player
    self.view.addSubview(playerVC!.view)

    playerVC!.player!.play()

【问题讨论】:

【参考方案1】:

使用AVAsset 作为播放器的来源。

let currentVideoAsset = AVAsset(URL: outputFileURL)


self.player = AVPlayer(playerItem: AVPlayerItem(asset:currentVideoAsset))

【讨论】:

【参考方案2】:

找到了,换了

var videoURL = NSURL(string: filePath)

有了这个

var videoURL = NSURL(fileURLWithPath: filePath)

并且正在工作..

【讨论】:

以上是关于swift中的 AVPlayerViewController 和 AVPlayer 不显示任何内容的主要内容,如果未能解决你的问题,请参考以下文章

swift: Swift 中的 SnapKit 不起作用

swift中的 isKindofClass

swift Swift中的变量

swift Swift中的数组

swift SWIFT中的变量

swift Swift4中的Codable