AudioKit.renderToFile AKClipPlayer同步问题。渲染的文件与第一个剪辑的位置不同步,并且也被截断了

问题描述 投票:0回答:1

我对Audiokit的renderToFile方法有问题。我有一个AKClipPlayer,从位置0.0开始有一个剪辑。我需要将AKClipPlayer生成的回放呈现到文件中。

func preRender() {
       self.clipPlayer.play()
   }

   let writeFile = try AKAudioFile()
        guard let duration = self.musicPlayer.clips.first?.duration else {
            let error = makeError(message: "No track file")
            failure(error)
            return
        }
        self.clipPlayer.volume = 1.0
        preparePlayers()

        try AudioKit.renderToFile(writeFile, duration: duration,
                                  prerender: preRender)

这里是在下面的图片上呈现结果。enter image description here

第一曲目是录制的音频剪辑。其次是第一个渲染结果。文件在开头被截断。如果我将另一个剪辑添加到clipPlayer并重复渲染-第一个剪辑将变得不同步。第二个与点击同步。

问题是我做错了什么?渲染时如何使所有剪辑同步。如果我只是从剪辑播放器播放音频,则所有内容都会完美同步。

我正在使用版本10.3(10G8)和AudioKit v4.7.2

ios swift audio-recording audiokit
1个回答
0
投票

要解决此问题-我添加了一个空剪辑作为clipPlayer.clips的第一个元素。这将阻止剪辑取消同步。

© www.soinside.com 2019 - 2024. All rights reserved.