【发布时间】:2020-11-10 00:48:00
【问题描述】:
我可以通过使用以下代码将缓冲区数据附加到音频文件的 END 来将音频录制到音频文件:
// AVAudioFile uses the Core Audio Format (CAF) to write to disk.
// So we're using the caf file extension.
file = try AVAudioFile(forWriting: FileManagerHelper.recordingLocalURL(), settings: format.settings)
tapNode.installTap(onBus: 0, bufferSize: bufferSize, format: format, block: {
(buffer, _) in
do {
buffer.frameLength = 1024 // Tap is now called every 40ms. By default, tap is called every 0.375s
try self.file?.write(from: buffer)
self.delegate?.recorderDidRecieveAudioBuffer(self, buffer: buffer)
semaphore.signal()
} catch {
log("Error writing mic data to file.", msgType: .error)
}
})
但是有没有办法将缓冲区数据写入文件的某个位置,即缓冲区数据中的时间或索引?
谢谢
【问题讨论】:
标签: ios swift avaudioengine