1

マイクからオーディオをキャプチャするために、Swift プロジェクトにこの EZAudio メソッドがあります。

func microphone(microphone: EZMicrophone!, hasAudioReceived bufferList: UnsafeMutablePointer<UnsafeMutablePointer<Float>>, withBufferSize bufferSize: UInt32, withNumberOfChannels numberOfChannels: UInt32) {

}

しかし、Objective C で行ったのと同じように、ソケットを介してこれらのオーディオ パケットを送信するために、「bufferList」パラメーターを AudioBufferList 型として入力する必要があります。

//Objective C pseudocode:
for(int i = 0; i < bufferList.mNumberBuffers; ++i){
   AudioBuffer buffer = bufferList.mBuffers[i];
   audio = ["audio": NSData(bytes: buffer.mData, length: Int(buffer.mDataByteSize))];
   socket.emit("message", audio);
}

その UnsafeMutablePointer> 変数を AudioBufferList に変換するにはどうすればよいですか?

4

2 に答える 2

0

AudioBufferListポインターを作成し、memory関数の結果を使用すると思います。

let audioBufferList = UnsafePointer<AudioBufferList>(bufferList).memory 
于 2016-06-16T16:05:55.147 に答える