ios - AVPlayer 无法快速播放 iPod-Library 歌曲项目

标签 ios swift avplayer

我正在使用 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/

相关文章:

使用 Air 3.9 的 iOS 应用程序 - 我们如何重新加载以前加载的 swf?

ios - AVPlayerLayer 在隐藏 Controller 中进入背景并进入前景并显示后空白

ios - 使用 AVPlayer 播放 H.265 视频文件

iphone - 程序在使用 NSLOG 以外的变量时收到 SIGABRT

ios - 2018 年 11 月提交应用程序所需的 Xcode 和 MacOS 最低版本

ios - webview.load(URLRequest View 保持为空

ios - 如何在 UINavigationItem titleView 中创建淡入/淡出动画?

ios - 如何在 Sprite Kit 场景外时删除节点

ios - 如何使用 swift 遍历目录中的多个(音频/mp3)文件? - Swift, iOS8 Soundboard AVPlayer

IOS:在 View 中绘制图像