Кто-нибудь знает, почему я получаю SIGSEGV так скоро, как объект superpoweredReverb удаляется?
int size = 3056;
SuperpoweredReverb* superpoweredReverb = new SuperpoweredReverb(44100);
superpoweredReverb->enable(true);
float* buffer = new float[size * 2];
superpoweredReverb->process(buffer, buffer, size);
delete(superpoweredReverb); // <-- error SIGSEGV
delete[](buffer);
Если размер 16, 32, 64 или 1024, все работает нормально. Но, используя другие кратные 8, такие как 1032, 2048 или 4096, я получаю следующее сообщение об ошибке:
Я использую Superpowered SDK для автономной обработки с помощью приложения для Android. Буду благодарен за любую помощь.
Кажется, это ошибка в SDK. Используйте размеры буфера <= 1024 для SuperpoweredReverb, пока не будет исправлено.
Увидеть https://github.com/superpoweredSDK/Low-Latency-Android-Audio-iOS-Audio-Engine/issues/168
Других решений пока нет …