Ответ 1
Похоже, что ваше "быстрое" слияние не связано с (re) -кодированием кадров, т.е. тривиальным и в основном прославленным конкатенацией файлов, поэтому он получает 60x в реальном времени. Я спросил об этом, потому что ваш "очень медленный" экспорт с 3-6 раз в реальном времени, что на самом деле не так страшно (по крайней мере, это не было на устаревшем оборудовании).
Кодирование фреймов с AVAssetWriter
должно дать вам представление о максимально возможном нетривиальном экспорте, и это может показать, что на современном оборудовании вы можете сократить или сократить время экспорта в два раза.
Это длинный способ сказать, что может быть не так много производительности. Если вы думаете о типичном примере использования кодирования видео iOS, который, вероятно, будет записывать 1920p @120 кадров в секунду или 240 кадров в секунду, ваша кодировка в режиме ~ 6x в реальном времени @30 кадров в секунду находится на переднем плане того, что вашему типичному устройству iOS "нужно", чтобы сделать.
Доступны вам оптимизационные возможности (например, низкоуровневые или частотные кадры), но это может лишить вас возможности захвата CALayer
s.