我有一个奇怪的问题:我想从两个声音文件和静音中生成一个新的声音文件。
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 秒的声音,而 sound2 会滑到 sound1 的末尾:
[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];
似乎不允许段之间有“无”!?