Ну, я удивлен, что никто не ответил на этот вопрос.
На самом деле никто не ответил ни на один из моих других вопросов.
Заставляет меня задуматься, сколько на самом деле людей здесь знают.
В любом случае, я пойду и отвечу на свой вопрос.
Я узнал, как получить метаданные, выполнив следующее:
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithURL:url];
NSArray *metadataList = [playerItem.asset commonMetadata];
for (AVMetadataItem *metaItem in metadataList) {
NSLog(@"%@",[metaItem commonKey]);
}
Что дает мне список следующим образом:
title
creationDate
artwork
albumName
artist
С этим списком теперь я знаю, как получить доступ к метаданным из моего аудиопотока. Просто пройдите через NSArray
и найдите AVMetadataItem
, у которого есть commonKey
, который я хочу (например, title
). Затем, когда я найду AVMetadataItem
, просто получу из него свойство value
.
Теперь, это прекрасно работает, но возможно, что когда вы попытаетесь получить данные, это займет некоторое время. Вы можете загрузить данные асинхронно, отправив loadValuesAsynchronouslyForKeys:completionHandler:
на AVMetadataItem
, который вы только что нашли.
Надеюсь, это поможет любому, кто может столкнуться с той же проблемой.