Interested Article - Beep
- 2021-03-14
- 1
Beep ( /biːp/ , англ. — гудок, сигнал) — простой однотонный звук, выводимый через встроенный динамик персонального компьютера .
Также «beep» называются различные функции и программы, связанные с этим звуком.
Функция Windows API
Beep — функция Windows API , предназначенная для воспроизведения простых однотонных звуков через встроенный динамик с заданной частотой и продолжительностью. Существует в операционных системах семейства Microsoft Windows и ReactOS . Входит в состав ядра системы ( Kernel32.dll в 32-х разрядных версиях Windows и ReactOS).
В более общем смысле beep (бип) — любой короткий звуковой сигнал, издаваемый любым электронным устройством, часто единственная наглядная возможность получить какую-либо информацию от устройства.
Применение
Функция Beep выполняется синхронно, то есть возвращает управление лишь после завершения воспроизведения звука. Она имеет два параметра:
-
dwFrec
— частота звука в герцах , допустимый диапазон — от 37 до 32 767 Гц; -
dwDuration
— продолжительность звука в миллисекундах ;
и возвращает значение типа BOOL (ненулевое при успешном выполнении).
Минимальное допустимое значение частоты звука 37 Гц предотвращает возможность случайного или преднамеренного воспроизведения инфразвука , который может представлять опасность для здоровья человека .
В Windows XP SP3+ для воспроизведения используется устройство, использующее при прослушивании музыки. Если функция Beep воспроизводит звук через PC-speaker, стандартные средства регулировки громкости не окажут на неё влияния. Вместо этого для отключения звука можно использовать команды:
net stop beep
sc config beep start= disabled
Реализация Beep в Windows NT и ReactOS использует файл -устройство «\Device\Beep\». Поэтому прерывание работы потока во время её выполнения может привести к тому, что дескриптор устройства останется незакрытым.
История
Впервые появилась ещё в 16-разрядных версиях Windows . В ОС Windows 95/98/Me функция Beep была реализована ограниченно: значения обоих параметров игнорируются. При наличии звуковой карты воспроизводится стандартный системный звук, а при её отсутствии — звук с некоторыми стандартными параметрами через встроенный динамик.
В ReactOS функция Beep появилась 10 марта 1999 года . Контроль значений параметров, наряду с рядом других исправлений, добавлен 27 октября 2005 года .
Пример использования
Ниже приведён исходный текст программы на языке Си , которая воспроизводит мелодию — пример синкопы .
#include <windows.h>
int WINAPI
WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
Beep(294, 1000/8);
Beep(440, 1000/4);
Beep(262*2, 1000/4);
Beep(330*2, 1000/4);
Beep(415, 1000/8);
Beep(440, 1000);
return 0;
}
См. также
- Управляющие символы — символ 07 (BELL).
Примечания
- от 8 июня 2007 на Wayback Machine — Microsoft Developer Network.
- (недоступная ссылка) — реализация функции Beep в ReactOS.
- от 14 мая 2007 на Wayback Machine — Мастера DELPHI.
- (недоступная ссылка) — ReactOS.
- (недоступная ссылка) — ReactOS.
- 2021-03-14
- 1