在 AVPlayer [Swift] 中播放来自 MPMediaItemCollection 的项目
Play items from MPMediaItemCollection in AVPlayer [Swift]
事情是这样的,我有一个带有用户选择项(来自库)的 MPMediaItemCollection。我使用 mediaPicker 来做到这一点。现在,我需要从这些项目中获取 URL 以便我可以在 AVPlayer 上播放它们。 This is the best I can find,但是当我从 "translate" 到 swift 时,它变得一团糟。如果有人能帮助我,我将不胜感激。
这是您的 swift 代码:
func mediaPicker(mediaPicker: MPMediaPickerController!, didPickMediaItems mediaItemCollection: MPMediaItemCollection!) {
for thisItem in mediaItemCollection.items as! [MPMediaItem] {
let itemUrl = thisItem.valueForProperty(MPMediaItemPropertyAssetURL) as? NSURL
self.dismissViewControllerAnimated(true, completion: nil)
// Play the item using MPMusicPlayer
var appMusicPlayer = MPMusicPlayerController.applicationMusicPlayer()
appMusicPlayer.play()
// Play the item using AVPlayer
let playerItem = AVPlayerItem(URL: itemUrl)
let player = AVPlayer(playerItem: playerItem)
player.play()
}
}
事情是这样的,我有一个带有用户选择项(来自库)的 MPMediaItemCollection。我使用 mediaPicker 来做到这一点。现在,我需要从这些项目中获取 URL 以便我可以在 AVPlayer 上播放它们。 This is the best I can find,但是当我从 "translate" 到 swift 时,它变得一团糟。如果有人能帮助我,我将不胜感激。
这是您的 swift 代码:
func mediaPicker(mediaPicker: MPMediaPickerController!, didPickMediaItems mediaItemCollection: MPMediaItemCollection!) {
for thisItem in mediaItemCollection.items as! [MPMediaItem] {
let itemUrl = thisItem.valueForProperty(MPMediaItemPropertyAssetURL) as? NSURL
self.dismissViewControllerAnimated(true, completion: nil)
// Play the item using MPMusicPlayer
var appMusicPlayer = MPMusicPlayerController.applicationMusicPlayer()
appMusicPlayer.play()
// Play the item using AVPlayer
let playerItem = AVPlayerItem(URL: itemUrl)
let player = AVPlayer(playerItem: playerItem)
player.play()
}
}