У меня странная проблема: я хочу создать новый звуковой файл из двух звуковых файлов и тишины.
sound1: 2 секунды
+
тишина: 2 секунды тишины
+
sound2: длительность 2 секунды
Когда я пробую приведенный ниже код, я получаю звуковой файл длиной 6 секунд со всеми частями, но в другом порядке! Порядок: sound1, sound2, тишина
Я не могу поместить это молчание в середину этой композиции (также не в начале). Это типичное поведение или я что-то не так?
Вот код для соединения сегментов:
[compositionAudioTrack insertTimeRange:CMTimeRangeMake(kCMTimeZero, [audio1 duration]) ofTrack:clipAudioTrack1 atTime:kCMTimeZero error:nil];
[compositionAudioTrack insertEmptyTimeRange:CMTimeRangeMake(kCMTimeZero, CMTimeMake(2, 1))];
[compositionAudioTrack insertTimeRange:CMTimeRangeMake(kCMTimeZero, [audio2 duration]) ofTrack:clipAudioTrack2 atTime:CMTimeMake(4, 1) error:nil];
Возможно, у кого-то есть идея? Заранее спасибо!
Кстати: следующий код без строки insertEmptyTimeRange тоже не работает, он просто генерирует 4 секунды звука и звук2 скользит до конца звука1:
[compositionAudioTrack insertTimeRange:CMTimeRangeMake(kCMTimeZero, [audio1 duration]) ofTrack:clipAudioTrack1 atTime:kCMTimeZero error:nil];
[compositionAudioTrack insertTimeRange:CMTimeRangeMake(kCMTimeZero, [audio2 duration]) ofTrack:clipAudioTrack2 atTime:CMTimeMake(4, 1) error:nil];
Похоже, что не допускается, чтобы между сегментами было "ничего"!?