OpenAL: как воспроизводить несколько звуков одновременно и смешивать их? - PullRequest
4 голосов
/ 23 апреля 2011

Я использовал SDL_Mixer и раньше, и он делает эту работу правильно: когда я играю один звук с одним вызовом функции 10 раз подряд, все звуки будут смешиваться вместе. Но в OpenAL, когда я играю звук с помощью alSourcePlay (), он просто воспроизводит один звук без микширования с предыдущими звуками.

Итак, как я могу воспроизвести более 1 звука одновременно?

1 Ответ

10 голосов
/ 23 апреля 2011

Для каждого звука необходим один источник.

Буфер содержит необработанные сэмплы звука и может подавать один или несколько источников (одновременно и одновременно).Слушатель определяет, где находится ваше «ухо» (есть только одно!).Источник - это отдельный экземпляр звука, с учетом местоположения в пространстве, громкости, буфера для извлечения сэмплов и т. Д.

Таким образом, для одновременного воспроизведения 2 звуков необходимо 2 источника.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...