Здраствуйте. Помогите мне вот с какой проблемой: необходимо вывести два звуковых файла (wav), но в разные каналы:один в левый канал, а другой в правый. Звуковой файл может быть при этом и стерео. Если можно, то хотелось бы по-подробнее. На худой конец можно подкинуть источноки, где освещены сходные вопросы. Заранее всем спасибо за внимание.
Здравствуйте, MEB, Вы писали:
MEB>необходимо вывести два звуковых файла (wav), но в разные каналы:один в левый канал, а другой в правый.
Открываете устройство вывода в режиме стерео, отсчеты левого канала берете из первого файла, отсчеты правого канала — из второго файла.
MEB>Звуковой файл может быть при этом и стерео.
Тогда его левые/правые отсчеты нужно предварительно просуммировать.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: Вывод звука в различные каналы
От:
Аноним
Дата:
30.03.06 10:15
Оценка:
Здравствуйте, MEB, Вы писали:
MEB>Здраствуйте. Помогите мне вот с какой проблемой: необходимо вывести два звуковых файла (wav), но в разные каналы:один в левый канал, а другой в правый. Звуковой файл может быть при этом и стерео. Если можно, то хотелось бы по-подробнее. На худой конец можно подкинуть источноки, где освещены сходные вопросы. Заранее всем спасибо за внимание.
Пользовать DirectSound. Создать два стерео буфера (DirectSoundBuffer), для этих двух файлов, выбрать канал звуковухи (если файл моно, то сэмплы писать через 1, т.к. в буфере чередуются левый-правый и можно ещё сделать SetPane(), либо пользовать WAVE_FORMAT_EXTENSIBLE и задавать маску в dwChannelMask). В этом случае за смешивание уже DS будет отвечать.
Здравствуйте, <Аноним>, Вы писали:
А>Пользовать DirectSound. Создать два стерео буфера (DirectSoundBuffer), для этих двух файлов, выбрать канал звуковухи (если файл моно, то сэмплы писать через 1, т.к. в буфере чередуются левый-правый и можно ещё сделать SetPane()
Только в том случае, когда фазовые соотношения сигналов не важны.
А>либо пользовать WAVE_FORMAT_EXTENSIBLE и задавать маску в dwChannelMask)
Не выйдет — далеко не все звуковые адаптеры умеют направлять моно-поток в нужный канал, а драйверам, соответственно, лениво делать промежуточные преобразования. Одни драйверы возвращают ошибку на такие хитрые форматы, а другие просто игнорируют маску.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: Вывод звука в различные каналы
От:
Аноним
Дата:
31.03.06 01:20
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:
ЕМ>Не выйдет — далеко не все звуковые адаптеры умеют направлять моно-поток в нужный канал, а драйверам, соответственно, лениво делать промежуточные преобразования. Одни драйверы возвращают ошибку на такие хитрые форматы, а другие просто игнорируют маску.
Но все поддерживают стерео — значит создавать стерео (FRONT_LEFT|FRONT_RIGHT) и нули писать в ненужный канал.