我有AVAudioPlayer在后台播放一些MP3。 AVAudioPlayer是跨应用程序共享的单例实例。是否可以一次检测正在播放的MP3的当前文件名?我在委托中看不到任何方法,持续时间, currentTime 但是 filename 或类似的东西。
我认为这种方法失败的其他方法是读取MP3标签并从中获取曲目名称 - 是否可以使用AVAudioPlayer?
提前致谢!
答案 0 :(得分:8)
您可以像这样获取AVAudioPlayer 中当前播放媒体的文件名:
NSString *mediaFileName = [[youAVAudioPlayer.url absoluteString] lastPathComponent];
注意条件是:如果未使用网址初始化音频播放器,则返回nil。
答案 1 :(得分:2)
如果使用url
初始化AVAudioPlayer,则可以读取该属性。 AVAudioPlayer不会读取MP3文件中的标签,因此无法解决这个问题。
您可能会发现AVAsset很有趣,可以从MP3中获取元数据。 Quick Tutorial