Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.15;
Скачать: CL | DM;

Вниз

Работа со звуком в реальном времени   Найти похожие ветки 

 
Yura27   (2005-04-17 08:29) [0]

Подскажите пожалуйста, как работать со звуком в реальном времени. Читать Wave-файлы я научился, проигрывать их через DirectSound тоже, а вот как мне проигрывать и на ходу обрабатывать этот звук. То есть мне нужно сделать Эффекты в реальном времени. Как делать сами алгоритмы для эффектов я знаю, я не знаю как их применять во время проигрывания звука. Есть конечно один вариант: перед проигрыванием wave-файла, создать новый wave-файл с уже примененным эффектом. Но это будет сильно долго и коряво.
Или может хотя бы кто-нибудь подскажет: мне нужно получить функцию-событие, которое происходит при сигнале WaveOut на звуковую карту. Для файлов с частотой 44100Hz, получается эта функция должна вызываться 44100 раз в секунду. Таймером здесь не напасешься.


 
Руслана   (2005-04-17 12:05) [1]

А создать промежуточный буфер - туда копировать порцию данных, обрабатывать , а потом отсылать этот буфер в звуковуху? Только буфер конечно не один, а несколько, но идея такая


 
Анонимщик1   (2005-04-18 11:14) [2]

Не парь мозги своими обработками - верное средство - написать DirectShow фильтр для саунда или, как вариант (поскольку у тебя какие-то эффекты), делать это с помощью DMO.


 
имя   (2005-08-03 00:34) [3]

Удалено модератором


 
programania ©   (2005-08-03 21:49) [4]

BASS.dll http://www.un4seen.com
играет mp3 ogg wav и в ней есть
BASS_ChannelSetDSP(chan, CallBack, 0);
и при проигрывании вызывается
procedure CallBack(handle: HDSP; channel: DWORD; p2: Pointer; l1, user: DWORD); stdcall;
в которой можно делать со звуком что угодно
например я делаю псевдостерео
и пропуск музыки непригодной для плясок


 
Thaddy   (2005-08-04 13:58) [5]

For true realtime there are only two proper choices, and Bass.dll is not one of them:

ASIO, for which Delphi units are available from www.tobybear.de
DSPACK, from www.dsp-worx.de

ASIO has the lowest latency, is the easiest to program and is the most professional for realtime audio programming.


 
WondeRu ©   (2005-08-04 14:56) [6]

Thaddy   (04.08.05 13:58) [5]
DSPACK is only wrapper for DirectShow (see [2])

Yura27   (17.04.05 8:29)
можно вообще написать DSP-плагин для ВинАмпа и мучать себя...


 
thaddy   (2005-08-08 00:11) [7]

I knew that. I worked on the development of dspack. (see credits on the dspack website)


 
WondeRu ©   (2005-08-08 12:57) [8]

thaddy   (08.08.05 0:11) [7]
I knew that. I worked on the development of dspack. (see credits on the dspack website)

Wow! Respect :)



Страницы: 1 вся ветка

Текущий архив: 2006.01.15;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.036 c
2-1135500746
Максим
2005-12-25 11:52
2006.01.15
Среднее арифметическое


14-1135240647
Витёк
2005-12-22 11:37
2006.01.15
Возвести число 2 в степень n (n<=10000)!


14-1134973829
Интересно мне
2005-12-19 09:30
2006.01.15
День добрый!


3-1131864905
KostR
2005-11-13 09:55
2006.01.15
Редактирование найденных данных.


14-1135326519
LordOfRock
2005-12-23 11:28
2006.01.15
Задание лабораторной