Чувствительная очистка фильмов с помощью AVPlayer - PullRequest
1 голос
/ 17 октября 2011

Я создаю видеоплеер, для которого требуется высокочувствительная функция очистки.Моя цель состоит в том, чтобы позволить пользователю просматривать кадр за кадром, если он выбирает самую высокую чувствительность.

В настоящее время я использую метод:

[player seekToTime:CMTimeMakeWithSeconds(duration*(Float64) slider.value, 600)];

но яЯ далек от чувствительности, которую хочу достичь.Может кто-нибудь посоветовать или указать лучший метод или даже рамки, чтобы сделать эту функцию.

Заранее спасибо.

Ответы [ 2 ]

4 голосов
/ 18 октября 2011

Решите эту проблему. Каким-то образом это выскользнуло из моих глаз, но есть метод, который делает именно это:

[player seekToTime:CMTimeMakeWithSeconds(duration*(Float64)value  , 600) 
      toleranceBefore:kCMTimeZero 
       toleranceAfter:kCMTimeZero];

toleranceBefore и toleranceAfter установлены в ноль, что означает, что он точно достигнет той точки, которую вы ищете, но для декодирования кадра потребуется больше времени.

0 голосов
/ 26 апреля 2012

Просто хочу упомянуть ограничение HLS здесь. Даже если вы задаете допуск 0, поиск в середине любого сегмента ts невозможен. Как только вы отведете палец от скруббера для поиска позиции, проигрыватель начнет воспроизведение видео с ближайшего сегмента TS.

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