AVPlayer - перемотка назад / назад

Можно ли быстро перематывать назад / назад поток AVPlayer? Я получил ускоренную перемотку вперед, работая правильно, но не быстро назад.

Любая помощь?

1 ответ

Когда вы инициализируете AVAsset, вы указываете словарь опций, и одна из этих опций (фактически единственная из известных мне опций) - это AVURLAssetPreferPreciseDurationAndTimingKey. По умолчанию это НЕТ. Вы хотите выполнить инициализацию следующим образом:

AVURLAsset* asset = [[AVURLAsset alloc] initWithURL:url
                  options:@{AVURLAssetPreferPreciseDurationAndTimingKey: @YES}];
AVPlayerItem* playerItem = [AVPlayerItem playerItemWithAsset:asset];
self.player = [[AVPlayer alloc] initWithPlayerItem:playerItem];

Вы можете запросить элемент проигрывателя, может ли он воспроизводиться в обратном, ускоренном и обратном направлениях и т. Д. В зависимости от типа потока он может быть не в состоянии. Файл QuickTime на локальном диске, конечно, не будет иметь проблем. Также имейте в виду, что AVFoundation является асинхронным. Это означает, что вы можете просто вызывать сеттеры, но вам нужно либо KV наблюдать за динамическими настройками, либо использовать протокол AVAsynchronousKeyValueLoading для статических.

Одно последнее замечание Если вы используете AVCaptureSession по умолчанию, инициируемый по умолчанию, он записывает в супер высоком качестве, который идет вперед быстрее, но шаг назад намного медленнее и медленнее. Даже на iPhone 5. Используйте более низкое качество, чтобы получить плавное воспроизведение назад.

Другие вопросы по тегам