installTap
オーディオ バッファ フロート サンプルを提供するメソッドを実装しました。C++ DSP ライブラリでそれらをフィルタリングしました。このバッファをヘッドフォン/スピーカーに「送信」したい。AVAudioPCMBuffer
サンプルからやり直しました。誰もそれを行う方法を知っていますか?
コード:
node.installTap(onBus: bus, bufferSize: AVAudioFrameCount(BUFFER_SIZE), format: node.inputFormat(forBus: bus), block: { (buffer : AVAudioPCMBuffer ,time : AVAudioTime) in
let root = buffer.floatChannelData!.pointee
// First pointer defines chanels
// Second pointer defines floats values
for i in 0 ..< BUFFER_SIZE{
self.signalData[i] = Double(root.advanced(by: i).pointee) * self.gainCorrection
}
let signalDataPreEq = self.signalData
let filteredSignal = shared.EQ.filterBuffer(UnsafeMutablePointer<Double>(mutating: self.signalData), with_count: Int32(BUFFER_SIZE))
self.signalData = Array(UnsafeBufferPointer(start : filteredSignal, count : BUFFER_SIZE))
for i in 0 ..< BUFFER_SIZE{
root.advanced(by: i).pointee = Float(self.signalData[i])
}
// HERE I WANT TO LISTEN(PLAYBACK) AUDIO FROM BUFFER
ありがとう