У меня проблема с синхронизацией внешнего контента в CALayer
с AVPlayer
с высокой точностью.
Моей первой мыслью было разместить массив кадров (равный количеству кадров в видео) внутри CAKeyframeAnimation
и синхронизировать его с AVSynchronizedLayer
. Однако при пошаговом просмотре видео по кадрам выясняется, что AVPlayer
и Core Animation перерисовываются в разных циклах, так как между ними есть небольшая (но заметная) задержка перед синхронизацией.
За исключением обработки и отображения через Core Video, есть ли способ точной синхронизации с AVPlayer
на уровне кадра?
Обновление: 5 февраля 2012 г.
Пока лучший способ Я обнаружил, что для этого нужно выполнить предварительный рендеринг с помощью AVAssetExportSession
в сочетании с AVVideoCompositionCoreAnimationTool
и CAKeyFrameAnimation
.
Однако я все еще очень заинтересован в изучении любых способов сделать это в реальном времени.