相关疑难解决方法(0)

AVAudioEngine多个AVAudioInputNodes不能完美同步

我一直在尝试使用AVAudioEngine来安排多个音频文件以完美的同步方式播放,但是在收听输出时,输入节点之间似乎存在非常小的延迟.音频引擎使用以下图表实现:

//
//AVAudioPlayerNode1 -->
//AVAudioPlayerNode2 -->
//AVAudioPlayerNode3 --> AVAudioMixerNode --> AVAudioUnitVarispeed ---> AvAudioOutputNode
//AVAudioPlayerNode4 -->                                            |
//AVAudioPlayerNode5 -->                                        AudioTap
//      |                                                         
//AVAudioPCMBuffers    
//
Run Code Online (Sandbox Code Playgroud)

我正在使用以下代码加载示例并同时安排它们:

- (void)scheduleInitialAudioBlock:(SBScheduledAudioBlock *)block {
    for (int i = 0; i < 5; i++) {
        NSString *path = [self assetPathForChannel:i trackItem:block.trackItem]; //this fetches the right audio file path to be played
        AVAudioPCMBuffer *buffer = [self bufferFromFile:path];
        [block.buffers addObject:buffer];
    }

    AVAudioTime *time = [[AVAudioTime alloc] initWithSampleTime:0 atRate:1.0];
    for (int i = 0; i < 5; i++) {
        [inputNodes[i] …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c core-audio ipad ios

8
推荐指数
2
解决办法
3225
查看次数

标签 统计

core-audio ×1

ios ×1

ipad ×1

iphone ×1

objective-c ×1