可以使用Superpowered输出5.1或7.1环绕声吗?

时间:2018-11-13 02:22:56

标签: tvos superpowered

我正在tvOS上试用Superpowered。我希望能够将音频输出到不止两个立体声通道。使用Superpowered SDK是否可以?

到目前为止,我已经尝试过修改包含的tvOS示例,如下所示:

  • ViewController.m中,初始化超能力的地方,我将channels参数的值从2更改为6。 (这是用于5.1环绕声的,这是所连接的输出设备所支持的。)

  • audioHandler.mm中,我向audioProcessingCallback添加了以下内容:

    SuperpoweredDeInterleave(stereoOutput, buffers[2], buffers[3], numberOfSamples);
    SuperpoweredDeInterleave(stereoOutput, buffers[4], buffers[5], numberOfSamples);
    

通过这些更改,我希望可以通过所有6个环绕声扬声器播放飞快移动,但只能在左右前扬声器中播放。要为环绕声输出配置Superpowered,我还需要做其他事情吗?

1 个答案:

答案 0 :(得分:1)

在[audioIO启动]之前,还可以尝试以下操作:

AVAudioSession *instance = [AVAudioSession sharedInstance];  
NSLog(@"output channels: %ld", (long)instance.outputNumberOfChannels);  
NSLog(@"max channels: %ld", (long)instance.maximumOutputNumberOfChannels);  
BOOL r = [instance setPreferredOutputNumberOfChannels:instance.maximumOutputNumberOfChannels error:&error];  
NSLog(@"set preferred channels: %d error: %@", r, error);  
NSLog(@"output channels: %ld", (long)instance.outputNumberOfChannels);