我在计算机上播放本地视频时遇到问题。我使用了一个名为Player的库,它非常简单,在示例项目中,它使用Vine视频并在顶部提供链接,并且它正在工作:
let videoUrl = NSURL(string: "https://v.cdn.vine.co/r/videos/AA3C120C521177175800441692160_38f2cbd1ffb.1.5.13763579289575020226.mp4")!
因此,在ViewDidLoad中,self.player.setUrl(videoUrl)
可以正常工作。
我尝试将Vine视频下载到我的本地。我将其保存为aaa.mp4
。
我在xCode项目中拖动了mp4文件。
我在Copy Bundle Resources
然后我用了;
let path = NSBundle.mainBundle().pathForResource("aaa", ofType:"mp4")!
let videoUrl = NSURL(string: path)!
viewDidLoad() {
// print(path)
// print(videoUrl)
self.player.setUrl(videoUrl)
}
视频无法播放,但
print(path)
- 给我:
/Users/sentiasa/Library/Developer/CoreSimulator/Devices/67160785-1BDB-4046-BD58-A8C448938A4F/data/Containers/Bundle/Application/5456FF89-904F-4AE6-A90C-747B6A371745/Player.app/aaa.mp4
和 print(videoUrl)
- 给了我:
/Users/sentiasa/Library/Developer/CoreSimulator/Devices/67160785-1BDB-4046-BD58-A8C448938A4F/data/Containers/Bundle/Appl ... /aaa.mp4
请注意,如果我给路径一个不存在的文件名,它会抛出一个错误,因此我知道文件在那里(并且存在)。 可能是什么问题?我错过了什么?我没有收到任何警告或错误
答案 0 :(得分:1)
使用
NSURL(fileURLWithPath: path)!
代替。