Библиотека iPod возвращает актив без треков - PullRequest
0 голосов
/ 23 августа 2011

Я использую API MediaItem для сбора ресурсов из библиотеки iPod. Есть странная ошибка, с которой я сталкиваюсь после запуска приложения некоторое время. Я выполню следующий код, и AVURLAsset не будет иметь связанных дорожек.

NSURL* url = [iPodSong valueForProperty:MPMediaItemPropertyAssetURL];
mAssetToLoad = [[AVURLAsset alloc] initWithURL:url options:nil];

bool protectedCon = mAssetToLoad.hasProtectedContent;
bool exportable = true;//mAssetToLoad.exportable;   //4.3 only

if(!protectedCon && exportable) {

    AVAssetTrack* songTrack = [mAssetToLoad.tracks objectAtIndex:0];
    //CRASH tracks is of size 0

Актив, в котором возникает проблема, похоже, изменится, и если я перезапущу приложение и снова загружу тот же ресурс, он загрузится правильно.

Кто-нибудь видел это раньше? Есть идеи, что я могу делать не так?

1 Ответ

0 голосов
/ 01 сентября 2011

Я считаю, что проблема в том, что CMSampleBufferRef не был выпущен. Слишком много предметов было открыто из библиотеки iPod за один раз. То же самое происходило на других устройствах, просто на тех, которые имели больше оперативной памяти, больше времени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...