AVPlayer无法检索任意项目的标题元数据
我似乎无法在此识别任何模式,但AVPlayer无法获取某些( 但不是全部 )mp3文件的轨道标题元数据,通常是一小时以上的文件。 在所有这些情况下,其他元数据(如艺术品,艺术家或专辑标题)均可准确检索。
当通过iTunes同步时,股票音乐应用程序没有任何问题 - 然后试图通过MPMediaItem.title获得标题,正确地返回每种情况下的标题。
下面的代码片段。 我观察了带有断点的代码,并且问题项不会在AVMetadataCommonKeyTitle的第二个else-if语句中执行任何操作,但所有其他语句都按预期工作。 而且, 这个代码对99.9%的项目完美地起作用 。
链接到一些非工作文件:https://soundcloud.com/humboldthain/blind-observatory-3-years-of-humboldthain-closing-set-4h
https://soundcloud.com/bananamilk/mary-yuzovskaya-femalepressure-tresor-berlin-january-2017
//Declare blank/default vars
var artist: String = ""
var album: String = ""
var track: String = ""
var artwork: UIImage! = UIImage(named: "defaultArtwork")
//Metadata loop
for i in asset!.commonMetadata {
if i.commonKey == AVMetadataCommonKeyArtist {
artist = i.value as! String
}
else if i.commonKey == AVMetadataCommonKeyTitle {
track = i.value as! String
}
else if i.commonKey == AVMetadataCommonKeyAlbumName {
album = i.value as! String
}
else if i.commonKey == AVMetadataCommonKeyArtwork {
artwork = UIImage(data: i.value as! Data)
}
}
链接地址: http://www.djcxy.com/p/66069.html
上一篇: AVPlayer unable to retrieve title metadata for arbitrary items