我正在使用 iPod 库中的 MPMediaItem 访问歌曲并将 assetURL 保存在我的核心数据中,然后我使用以下代码播放声音但它不播放声音。
var url = NSURL.fileURLWithPath(file as String)
print("FILE : \(file) \n")
var error: NSError?
var itemPlayer:AVPlayer?
// itemPlayer = AVPlayer(URL: NSURL(fileURLWithPath: file as String))
itemPlayer = AVPlayer(playerItem: AVPlayerItem(URL: NSURL(fileURLWithPath: file as String)))
itemPlayer!.play()
它只打印以下内容,但播放器没有播放歌曲
FILE : ipod-library://item/item.mp3?id=4287130341014298234
而且,如果我使用 AVAudioPlayer 使用上面的 assetURL 初始化播放器,那么它会返回 Nil。我认为这是因为上面的 url 不是本地的,它应该像 file://.... 。那么我应该怎么做才能使用 iPod 库中歌曲的 assetURL 播放声音
最佳答案
如果您正在尝试播放 iPod 库中的音乐文件并且已经在使用 MPMediaItem,您应该尝试使用 MPMusicPlayerController
。
或者,如果你想继续你正在做的事情,你可以这样做(假设你的 file
变量是 MPMediaItem
):
var fileUrl = file.assestURL
var myPlayerItem = AVPlayerItem(URL: fileURL)
itemPlayer = AVPlayer(playerItem: myPlayerItem)
关于ios - AVPlayer 无法快速播放 iPod-Library 歌曲项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31693170/