这是我的代码,它不适用于任何 mp3 文件:
//define AVassets
NSURL *assetUrl2 = [[NSURL fileURLWithPath:
[assetLoc stringByAppendingPathComponent:title]]
URLByAppendingPathExtension:ext]
AVAsset *asset2 = [AVURLAsset URLAssetWithURL:assetUrl2
options:nil];
//print asset url
NSString *encodedString = [assetUrl2 absoluteString];
NSLog(@"song name%@",encodedString); //this prints the valid url
NSArray *origMetadata =
[asset2 metadataForFormat:AVMetadataFormatID3Metadata];
for (AVMetadataItem *item in origMetadata) {
NSLog(@"*** ID3 tags found");
NSString *keys = (NSString *)[item key];
NSString *value = [item stringValue];
NSLog(@"value for tag:%@ is:%@", keys, value);
}
但是,如果我换...
`NSArray *origMetadata =
[asset2 metadataForFormat:AVMetadataFormatID3Metadata];`
和...
`NSArray *origMetadata =
[asset2 metadataForFormat:AVMetadataFormatiTunesMetadata];`
并加载 AAC 文件而不是 MP3 文件,它可以工作。显然我在这里遗漏了一些东西。任何帮助,将不胜感激。谢谢你。