问题描述
我找到的所有 JUCE 教程和 AudioProcessor 示例都是插件。如果我想创建自己的应用程序来播放AudioProcessor
,但没有插件怎么办?
例如:
HelloSamplerAudioProcessor::HelloSamplerAudioProcessor()
: AudioProcessor (BusesProperties()
.withOutput("Output",juce::AudioChannelSet::stereo(),true)
我正在将其插入到这样的 AudioDeviceManager
中:
auto samplerProcessor = std::make_shared<HelloSamplerAudioProcessor>();
auto samplerProcessorPlayer = std::make_shared<juce::AudioProcessorPlayer>();
samplerProcessorPlayer->setProcessor (samplerProcessor.get());
deviceManager.addAudioCallback (samplerProcessorPlayer.get());
但是因为它没有输入,我得到
I/JUCE: JUCE Assertion failure in juce_AudioProcessor.cpp:200
I/JUCE: JUCE Assertion failure in juce_AudioProcessor.cpp:350
I/JUCE: JUCE Assertion failure in juce_AudioProcessor.cpp:356
JUCE Assertion failure in juce_AudioProcessor.cpp:360
I/JUCE: JUCE Assertion failure in juce_AudioProcessor.cpp:363
来自这里:
void AudioProcessor::setPlayConfigDetails (int newNumIns,int newNumOuts,double newSampleRate,int newBlockSize)
{
bool success = true;
if (getTotalNumInputChannels() != newNumIns)
success &= setChannelLayoutOfBus (true,AudioChannelSet::canonicalChannelSet (newNumIns));
// Failed to find a compatible input configuration
jassert (success); //line 350
if (getTotalNumOutputChannels() != newNumOuts)
success &= setChannelLayoutOfBus (false,AudioChannelSet::canonicalChannelSet (newNumOuts));
// Failed to find a compatible output configuration
jassert (success); //line 356
// if the user is using this method then they do not want any side-buses or aux outputs
success &= disableNonMainBuses();
jassert (success);
// the processor may not support this arrangement at all
jassert (success && newNumIns == getTotalNumInputChannels() && newNumOuts == getTotalNumOutputChannels());
setRateAndBufferSizeDetails (newSampleRate,newBlockSize);
ignoreUnused (success);
}
结果是 AudioDeviceManager
在我的处理器上调用了 setPlayConfigDetails
(上面的函数),这给出了断言,因为我的 AudioProcessor 上没有输入。
如果我向 HelloSamplerAudioProcessor
添加一个输入,它不再断言,但我得到一个回声,即使我禁用了输入。无论如何,我不需要它,我不需要向我的 AudioProcessor 添加输入,我只想从它的样本中输出音频。
我应该如何在 Juce 中制作一个仅播放 AudioProcessor
的独立应用程序?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)