如何用AVPlayerparsingm3u文件

我想从m3u文件头获取跟踪信息,而不是从id3Tags。 在AVPlayer的timedMetaData属性中,仅提供了id3Tagparsing。

我怎样才能用AVPlayer从m3u文件中获得标题,艺术家,url等

 #EXTM3U #EXT-X-ALLOW-CACHE:NO #EXT-X-TARGETDURATION:11 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:10,title="Dark Horse",artist="Katy Perry / Juicy J",url="song_spot=\"M\" MediaBaseId=\"1971116\" itunesTrackId=\"0\" amgTrackId=\"-1\" amgArtistId=\"0\" TAID=\"35141\" TPID=\"23894643\" cartcutId=\"0729388001\" amgArtworkURL=\"http://assets.iheart.com/images/1080/MI0003667474\" length=\"00:03:32\" unsID=\"-1\"" http://chunks.ihrhls.com/1469/GqsS8fnz2S6-301028-9984.aac #EXTINF:10,title="Dark Horse",artist="Katy Perry / Juicy J",url="song_spot=\"M\" MediaBaseId=\"1971116\" itunesTrackId=\"0\" amgTrackId=\"-1\" amgArtistId=\"0\" TAID=\"35141\" TPID=\"23894643\" cartcutId=\"0729388001\" amgArtworkURL=\"http://assets.iheart.com/images/1080/MI0003667474\" length=\"00:03:32\" unsID=\"-1\"" http://chunks.ihrhls.com/1469/spXO68wER45-301029-9984.aac #EXTINF:10,title="Dark Horse",artist="Katy Perry / Juicy J",url="song_spot=\"M\" MediaBaseId=\"1971116\" itunesTrackId=\"0\" amgTrackId=\"-1\" amgArtistId=\"0\" TAID=\"35141\" TPID=\"23894643\" cartcutId=\"0729388001\" amgArtworkURL=\"http://assets.iheart.com/images/1080/MI0003667474\" length=\"00:03:32\" unsID=\"-1\"" http://chunks.ihrhls.com/1469/RSEeNpIOEHk-301029-10031.aac 

您可以使用AVURLAsset获取曲目信息

 AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:[NSURL URLWithString:url] options:nil]; NSArray *keys = @[@"playable", @"tracks", @"duration"]; [asset loadValuesAsynchronouslyForKeys:keys completionHandler:^() { for (NSString *thisKey in keys) { NSError *error = nil; AVKeyValueStatus keyStatus = [asset statusOfValueForKey:thisKey error:&error]; if (keyStatus == AVKeyValueStatusFailed) { //handle error } } }]; 

也看看这个答案来获得标题,专辑等