Я создаю приложение, в котором есть медиаплеер (я использую iOS SDK 4.2).Во время воспроизведения данной песни я могу получить доступ практически ко всем свойствам, но не могу получить доступ к MPMediaItemPropertyBeatsPerMinute.
Каждый раз возвращается значение NULL.
В Apple doc указано:
Количество музыкальных ударов в минуту для элемента мультимедиа, соответствующее полю «BPM» на вкладке «Информация» вдиалоговое окно «Получение информации» в iTunes.Значение - это объект NSNumber, представляющий тип данных NSUInteger.
Доступно в iOS 4.0 и более поздних версиях.
Объявлено в MPMediaItem.h.
Обратите внимание, что композиции, которые я использую DO, имеют данные BPM в поле BPM.Я знаю, что это не установлено по умолчанию.
Код, который я пробовал:
MPMusicPlayerController *musicPlayer = [MPMusicPlayerController applicationMusicPlayer];
// ...
MPMediaItem *currentItem = [musicPlayer nowPlayingItem];
if (currentItem != NULL) {
NSLog([NSString stringWithFormat:@"%@", [currentItem valueForProperty:MPMediaItemPropertyBeatsPerMinute]]);
}
Приведенный выше код выплевывает "(ноль)" для каждой песни.
Поскольку я смог получить доступ к каждомуТаким образом, я считаю, что это может быть ошибкой в SDK.
Итак, мой вопрос несколько двоякий.
- Я делаю это неправильно или это известная ошибка в SDK?
- Как еще я могу получить данные BPM для песни?