AVPlayer Slider ищет проблему Backwards

Я использую AVplayer для воспроизведения видео в своем приложении. Я использую seekToTime:toleranceBefore:toleranceAfter:

для поиска по видео с помощью ползунка, поэтому проблема заключается в том, что когда вы двигаетесь в направлении вперед, видео искается идеально (похоже, видео движется быстрее), но назад скользящее видео выглядит дерганым при скольжении назад (в основном не так плавно, как скользящее флористическое изображение). Может кто знает в чем проблема или я что-то не так делаю.

Пожалуйста помоги.


person iparag    schedule 23.07.2012    source источник
comment
Можете ли вы сделать паузу, прежде чем искать? Я не уверен на 100%, так как не пробовал.   -  person av501    schedule 06.08.2012


Ответы (2)


У меня была такая же проблема на айфоне. Вот контрольный список:

  1. Убедитесь, что функция ProvidePreciseDurationAndTiming возвращает значение YES.
  2. Убедитесь, что для canPlayReverse установлено значение YES (некоторые кодеки, я думаю, не поддерживают его).
  3. Не используйте самое высокое качество.

AVCaptureSession по умолчанию использует высококачественный захват. Вам нужно использовать настройку более низкого качества, если вы хотите, чтобы реверс был плавным, как шелк, даже на iPhone 5. Переход назад требует больше вычислений, так как большинство кодеков оптимизированы для распаковки в прямом направлении.

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

person Ray Fix    schedule 21.06.2013

я думаю, это потому, что буфер становится пустым, когда вы выполняете потоковую передачу в обратном направлении. Пожалуйста, выполните KVO для значения bufferIsEmpty. Это может быть связано с тем, что ваше приложение может использовать много памяти с точки зрения других ресурсов. Лучший способ проверить это - создать другой проект и попробуйте то же самое. Просто попробуйте использовать AVPlayerQueue вместо AVPlayer и посмотрите на результат.

person prajul    schedule 30.01.2013