| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Управление звуком |
| Автор: Yogurt 22.1.2013, 15:44 |
| Есть компьютер (Windows XP), к которому подключены 2 динамика (колонки). Есть набор коротких звуков. Есть Visual Studio 2008 Вопрос: Как организлвать воспроизведение звуковых файлов отдельно на каждом динамике. P.S. Вопрос можно поделить пополам: 1) как воспроизвести звук на динамики? 2) Как воспроизвести звук на одном динамике? |
| Автор: borisbn 22.1.2013, 18:00 |
http://msdn.microsoft.com/en-us/library/windows/desktop/dd743680(v=vs.85).aspx Этой функцией никак, но можно поизвращаться - создать по две копии каждого файла. Каждая копия должна быть стерео, причём в первом файле в левом канале будет записан звук, а в правом канале - тишина. Во втором файле - наоборот. Когда же нужно проиграть этот звук на левом динамике - просто проигрывается первый файл. Когда на правом - второй. Такие файлы можно за 5 сек. сделать в каком-нибудь звуковом редакторе, например в CoolEdit. М.б. есть консольные утилитки (а ля ffmpeg) для этого - хз. погугли |
| Автор: kuzulis 22.1.2013, 20:51 |
| Или DirectSound в помощь |
| Автор: bsa 23.1.2013, 11:59 |
| А еще можно кроссплатформенный OpenAL заюзать. Там вообще все просто - расставляешь виртуальные источники в пространстве вокруг слушателя и получаешь удовольствие. |
| Автор: Yogurt 24.1.2013, 17:07 |
| Всем большое спасибо Пока начали делать, как borisbn предложил. На самом деле всё намного сложнее, так как калонок 8 шт. (система 7.1) Если ещё есть предложения - пишите, так как метод от borisbn прост, но дико неудобен. |
| Автор: bsa 25.1.2013, 11:47 |
| Yogurt, тебе вообще зачем это нужно? |
| Автор: Yogurt 25.1.2013, 14:37 |
| Для макета кабина самолёта. Большая часть систем моделируется с одного компа с виндой. В том числе и управление звуковыми сигналами при различных ситуациях. В кабине есть динамики. Собственно, для разных ситуаций звучат заданные звуки из определённых динамиков. |
| Автор: Dem_max 25.1.2013, 14:54 |
| используй библиотеку BASS там все есть с примерами. |
| Автор: bsa 25.1.2013, 16:39 |
| ну или тот же OpenAL (это что-то вроде OpenGL, но для звука), который в принципе бесплатен. |