Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Синтезировать сигнал необходимой частоты.
Форум программистов > Системное программирование > Delphi и Pascal > Delphi - Multimedia, Графика, Игры
kalexi
Необходимо вывести сигнал необходимой частоты на звуковуху, а НЕ на спикер. Как же это сделать то?
MechWarrior
Вообще-то способов много. Можно создать в памяти небольшой wav-файл (заголовок+данные) и проиграть его с помощью (snd)PlaySound (как, например, тут ]]>http://delphi-faq.zoxt.net/926.htm)]]>.
В софте (плейерах, эмуляторах и т.п) обычно используются более интерактивные способы генерации, позволяющие проигрывать звук потоком и менять его на лету. Например, через обычный WaveOut - открывается устройство (waveOutOpen), готовится один или несколько буферов (waveOutPrepareHeader), затем в них последовательно пишутся амплитуды, задающие колебания нужной частоты, и готовые буферы посылаются на проигрывание (waveOutWrite). Система их проигрывает и освобождает для получения в них новой информации. Можно пользовать и DirectSound - принцип примерно тот же.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2008 IPS, Inc.