Как правильно экспортировать CALayer поверх AVMutableComposition с помощью AVAssetExportSession

Я знаю, что этот вопрос задавался раньше (например, здесь и здесь ), но я просто могу Не понимаю, что я делаю не так.

У меня есть AVMutableComposition , который я использую для объединения некоторых видеоклипов с некоторыми CALayer , которые анимируются поверх них.

Все работает нормально, когда я беру свою AVMutableComposition и объединяю ее с AVSynchronizedLayer для воспроизведения внутри AVPlayerLayer . Видео выводится правильно, и все располагается там, где должно.

Моя проблема в том, что когда я пытался экспортировать эту штуку, я пытался использовать AVVideoCompositionCoreAnimationTool вместо AVSynchronizedLayer (вот что такое в документации говорится, что мы должны использовать для экспорта) и сеанс AVAssetExportSession, но что-то идет не так, потому что в моем экспортированном фильме каждый CALayer имеет обратную систему координат.

Итак, если во время воспроизведения точка 0,0 находится в верхний левый угол экрана, когда я экспортирую фильм, точка 0,0 находится в нижнем левом углу, поэтому моя анимация сходит с ума.

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

10
задан ROMANIA_engineer 1 November 2017 в 22:26
поделиться