【问题标题】:Mute Left/Right Audio Effect using Superpowered sdk使用 Superpowered sdk 静音左/右音频效果
【发布时间】:2016-09-20 14:56:34
【问题描述】:

我已经成功集成了超能力CrossExample,现在我需要应用静音右/左音频效果,我已经检查了

SuperpoweredMixer.h , SuperpoweredSimple.h

这些文件但找不到相关的方法来应用这个效果,

那么还有其他方法可以做这件事吗?

【问题讨论】:

  • 投反对票有什么理由吗?

标签: android c++ audio superpowered


【解决方案1】:

只需简单地将每个偶数或奇数样本归零,并在打开或关闭时使用一些简单的斜坡来防止“点击”。

Superpowered 并没有真正为如此微小的任务提供功能。您可以使用 SuperpoweredStereoMixer 来完成它,但对于这个简单的工作来说它可能太复杂了。

这里是代码sn-p

bool Tempo::process(short int *output, unsigned int numberOfSamples) {
    bool silence = !playerA->process(stereoBuffer, false, numberOfSamples, volA);
    echo->process(stereoBuffer, stereoBuffer, numberOfSamples);
    reverb->process(stereoBuffer, stereoBuffer, numberOfSamples);

    float *mixerInputs[4] = {stereoBuffer, NULL, NULL, NULL};

    float *mixerOutputs[2] = {stereoBuffer, NULL};

    float mixerInputLevels[8] = {1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f};

    float mixerOutputLevels[2] = {left, right};

    mixer->process(mixerInputs, mixerOutputs, mixerInputLevels, mixerOutputLevels, NULL, NULL,
                   numberOfSamples);

    if (!silence) {
        SuperpoweredFloatToShortInt(mixerOutputs[0], output, numberOfSamples);
    }
    return !silence;
}

【讨论】:

  • 我已经按照您在回答中提到的那样进行了尝试,但我并没有完全按照您在我编辑的问题中看到的那样。顺便说一句,谢谢你的回答。
  • 感谢您的帮助,现在我可以使用您的方法完美实现效果了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-03
  • 1970-01-01
相关资源
最近更新 更多