Objective c 是否可以使用奴佛卡因进行音频流

Objective c 是否可以使用奴佛卡因进行音频流,objective-c,audio-streaming,circular-buffer,novocaine,Objective C,Audio Streaming,Circular Buffer,Novocaine,目前,出于不同的原因,我在多个应用程序中使用。 感谢Alex提供了出色的框架!感谢Nick D.让它成为arc 我可以使用基本的play-thru示例获取样本,如下所示: [self.audioManager setInputBlock:^(float *data, UInt32 numFrames, UInt32 numChannels) { NSMutableData *theData = [NSMutableData dataWithBytes:data

目前,出于不同的原因,我在多个应用程序中使用。 感谢Alex提供了出色的框架!感谢Nick D.让它成为arc

我可以使用基本的play-thru示例获取样本,如下所示:

[self.audioManager setInputBlock:^(float *data, UInt32 numFrames, UInt32 numChannels) {
     NSMutableData *theData = [NSMutableData dataWithBytes:data
                                                    length:(numFrames* numChannels*sizeof(float))];
}];
[audioManager setOutputBlock:^(float *outData, UInt32 numFrames, UInt32 numChannels) {
     _ringBufferOut->FetchInterleavedData(outData, numFrames, numChannels);
 }];
然后我通过套接字流发送数据,使用

收到数据后,我将其放入环形缓冲区

float *floatData = (float*)[theData bytes];
_ringBufferOut->AddNewInterleavedFloatData(floatData, numFrames, numChannels);
像这样玩:

[self.audioManager setInputBlock:^(float *data, UInt32 numFrames, UInt32 numChannels) {
     NSMutableData *theData = [NSMutableData dataWithBytes:data
                                                    length:(numFrames* numChannels*sizeof(float))];
}];
[audioManager setOutputBlock:^(float *outData, UInt32 numFrames, UInt32 numChannels) {
     _ringBufferOut->FetchInterleavedData(outData, numFrames, numChannels);
 }];
我最好的办法是根据缓冲区的大小接收几秒钟的声音,而不是只接收小故障或没有声音

我在使用缓冲区方面完全是新手,我已经花了好几天的时间尝试配置如何实现这一点

我的问题是:是否可以只使用Novocaine及其ringBuffer在iPhone设备之间传输音频? 我是否应该像示例一样使用AudioQueue? 也许两者兼而有之? 我知道我的问题是使用缓冲区,所以非常感谢您对缓冲的任何帮助