Я интегрировал сверхдержаву CrossExample успешно, и теперь мне нужно применить звуковой эффект отключения звука вправо / влево, и я проверил
SuperpoweredMixer.h , SuperpoweredSimple.h
эти файлы, но не могут найти соответствующие методы для применения этого эффекта,
так есть ли другие способы сделать это?
Просто обнуляйте каждый четный или нечетный сэмпл, с помощью некоторого простого линейного изменения, когда он включается или выключается для предотвращения «щелчков».
Superpowered на самом деле не предлагает функцию для такой крошечной задачи. Вы можете сделать это с SuperpoweredStereoMixer, но это может быть слишком сложно для этой простой работы.
Вот фрагмент кода
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;
}
Других решений пока нет …