Разделить AVMutableComposition и экспортировать в несколько небольших композиций - PullRequest
0 голосов
/ 08 ноября 2018

Я создаю приложение, которое требует следующих функций:

  • Объедините видео в одну AVMutableComposition и представьте эту единственную видео композицию пользователю.
  • Экспорт видео композиции в несколько кусков. Например, если длина всей композиции составляет 60 секунд, экспортируйте ее как 3 видеоролика по 20 секунд.

Какой самый эффективный способ разделить AVMutableComposition и экспортировать его в несколько небольших композиций?

Я предложил следующие решения, но ни одно из них не кажется особенно эффективным:

  • Создание х композиций нужной длины.
  • Создайте x копий всей композиции и используйте removeTimeRange (), чтобы обрезать каждую копию до более мелких композиций.
  • Экспорт отдельной композиции и использование файла для создания более коротких AVMutableCompositions.

Прежде чем приступить к реализации одного из приведенных выше решений, я хочу подтвердить, что не существует простого метода разбиения AVMutableCompositions, который мне не хватает.

1 Ответ

0 голосов
/ 21 ноября 2018

Самый эффективный способ - вообще не разбивать композицию . Вместо этого используйте

  • свойство timeRange AVAssetExportSession или

  • startSessionAtSourceTime и endSessionAtSourceTime при написании с AVAssetWriter

...