如何在 MTAudioProcessingTapInitCallback 中将 tapStorageOut 传递给 clientInfo

How to pass tapStorageOut to clientInfo in MTAudioProcessingTapInitCallback

我正在尝试转换为解释如何使用 MTAudioProcessingTap 的 Swift this 教程。在 MTAudioProcessingTapInitCallback 中,它将 UnsafeMutablePointer<UnsafeMutableRawPointer?> 的 clientInfo 传递给 UnsafeMutableRawPointer?

的 tapStorageOut

在 Objc 中像这样:

void init(MTAudioProcessingTapRef tap, void *clientInfo, void **tapStorageOut)
{
    NSLog(@"Initialising the Audio Tap Processor");
    *tapStorageOut = clientInfo;
}

现在的问题是..我如何在 Swift 中做到这一点?

let tapInit: MTAudioProcessingTapInitCallback = {
        (tap, clientInfo, tapStorageOut) in

        print("init \(tap, clientInfo, tapStorageOut)\n")

    }
tapStorageOut.pointee = clientInfo

p.s 不是 swift 的东西,但我一直不明白为什么 taps 允许 tapStorage 和 clientInfo 不同。