Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Эхо в wav-файлах


Автор: NwinIX 14.8.2005, 22:11
У меня вопрос следующего характера. На языке С нужно написать кое-какую программу, и я не знаю как можно во входном потоке(wav-файл) сдвинуть все данные во временном промежутке на
0,001 секунды- чтобы образовался эхо-сигнал оригинала, и как потом все это записать в выходной wav-файл(как бы слить в один файл и оригинал и его эхо сигнал с 0,001 секундной задержкой). Если можно, то и ссылочку подкиньте по этой теме, сам ничего конкретного не нашел. smile

Автор: Stuw 30.9.2005, 10:26
На счет эхо: в DirectSound есть функция дубирования буфера (DuplicateSoundBuffer у интерфейса IDirectSound) . Используешь ее и запускаешь два буфера на проигрывание с задержкой. Эхо при 0.001 с не слышно :) Я ставил 0.1 с :)
Про запись всего этого в файл не могу ничего сказать - не работал. А пробовать нет времени. В DirectX SDK есть примеры работы с WAV файлами.

Автор: AndreySol 5.11.2005, 10:53
Правильно про DirectX SDK - там есть все.
А вообще наверно можно попроще с добавлением эха сделать - в DirectSound есть интерфейс для реализации многих прибамбасов со звуком, кстати в примерах DX SDK есть такой: там и эхо и ревербератор и эквалайзер и еще дофига.
А без DXSDK туго тебе будет DirectSound'ом заниматься.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)