2010-09-08 2 views
1

Я работаю над iPad-приложением, которое воспроизводит видео с MPMoviePlayerController и - на основе взаимодействия с пользователем - использует thumbnailImageAtTime, чтобы попытаться захватить изображение из видео.MPMoviePlayerController thumbnailImageAtTime возвращает пусто UIImage

Я пробовал использовать оба варианта MPMovieTimeOptionNearestKeyFrame и MPMovieTimeOptionExact. Независимо от того, какой вариант, я обнаружил, что иногда получаю пустой UIImage. То есть возвращаемый UIImage представляется действительным объектом (! Nil), но когда я пытаюсь отобразить это изображение (в UImageView), я ничего не вижу.

В других случаях он отлично работает и возвращает хороший миниатюру.

В попытке сузить обстоятельства, самое лучшее, что я могу сказать, состоит в том, что проблема с большей вероятностью появится в первый раз, когда я его назову (т.е. в начале фильма). Как только он потерпит неудачу, он более вероятно работает над последовательными вызовами.

В каждом случае после вызова thumbnailImageAtTime я останавливаю проигрыватель и отпускаю его. Позже я заново создаю объект фильма и загружаю тот же фильм и использую setInitialPlaybackTime, чтобы получить фильм, воспроизводимый одновременно с созданием миниатюры.

После этого, если я снова вызову setInitialPlaybackTime, он почти всегда работает - но не всегда!

Прокомментировал ли кто-нибудь еще такое поведение или дал понять, почему это происходит?

Следующим шагом будет создание примера приложения, которое воспроизводит видео, и имеет кнопку «Получить миниатюру», которая вызовет setInitialPlaybackTime и покажет миниатюру на экране БЕЗ остановки проигрывателя каждый раз в качестве эксперимента. В качестве альтернативы, некоторые из вас могут помочь мне избежать этой тяжелой работы!

Спасибо!

ответ

0

Хорошо, я ошибался, проблема заключалась в том, что изображение было размещено внутри, если его альфа-установка была 0 случайно. MEA CULPA и Nevermind ...