winsound — Интерфейс воспроизведения звука для Windows


Модуль winsound предоставляет доступ к базовым средствам воспроизведения звука, предоставляемым платформами Windows. Он включает в себя функции и несколько констант.

winsound.Beep(frequency, duration)

Подайте звуковой сигнал на динамик компьютера. Параметр frequency определяет частоту звука в герцах и должен быть в диапазоне от 37 до 32 767 Гц. Параметр duration определяет количество миллисекунд, которое должен длиться звук. Если система не может подать звуковой сигнал на динамик, то будет поднят RuntimeError.

winsound.PlaySound(sound, flags)

Вызовите базовую функцию PlaySound() из API платформы. Параметр sound может быть именем файла, системным звуковым псевдонимом, аудиоданными в виде bytes-like object или None. Его интерпретация зависит от значения flags, которое может быть побитовым или комбинированным значением констант, описанных ниже. Если параметр sound равен None, любой воспроизводимый в данный момент звуковой сигнал будет остановлен. Если система указывает на ошибку, выводится сообщение RuntimeError.

winsound.MessageBeep(type=MB_OK)

Вызовите базовую функцию MessageBeep() из API платформы. При этом воспроизводится звук, указанный в реестре. Аргумент type указывает, какой звук воспроизводить; возможные значения -1, MB_ICONASTERISK, MB_ICONEXCLAMATION, MB_ICONHAND, MB_ICONQUESTION, и MB_OK, все они описаны ниже. Значение -1 выдает «простой звуковой сигнал»; это последний резервный вариант, если звук не может быть воспроизведен иным образом. Если система выдает сообщение об ошибке, активируется RuntimeError.

winsound.SND_FILENAME

Параметр sound - это имя WAV-файла. Не используйте с SND_ALIAS.

winsound.SND_ALIAS

Параметр sound - это имя ассоциации звуков из реестра. Если в реестре нет такого имени, воспроизведите системный звук по умолчанию, если только не указано значение SND_NODEFAULT. Если звук по умолчанию не зарегистрирован, увеличьте значение RuntimeError. Не используйте с SND_FILENAME.

Все системы Win32 поддерживают, по крайней мере, следующее; большинство систем поддерживают гораздо больше:

PlaySound() имя

Соответствующее звуковое название панели управления

'SystemAsterisk'

Звездочка

'SystemExclamation'

Восклицание

'SystemExit'

Выход из окон

'SystemHand'

Критическая остановка

'SystemQuestion'

Вопрос

Например:

import winsound
# Play Windows exit sound.
winsound.PlaySound("SystemExit", winsound.SND_ALIAS)

# Probably play Windows default sound, if any is registered (because
# "*" probably isn't the registered name of any sound).
winsound.PlaySound("*", winsound.SND_ALIAS)
winsound.SND_LOOP

Воспроизведите звук повторно. Также необходимо использовать флажок SND_ASYNC, чтобы избежать блокировки. Нельзя использовать с SND_MEMORY.

winsound.SND_MEMORY

Параметр sound, указанный в PlaySound(), представляет собой запоминаемый образ WAV-файла в виде bytes-like object.

Примечание

Этот модуль не поддерживает асинхронное воспроизведение из образа в памяти, поэтому комбинация этого флага и SND_ASYNC приведет к повышению RuntimeError.

winsound.SND_PURGE

Прекратите воспроизведение всех экземпляров указанного звука.

Примечание

Этот флаг не поддерживается на современных платформах Windows.

winsound.SND_ASYNC

Немедленно возвращайтесь, позволяя звукам воспроизводиться асинхронно.

winsound.SND_NODEFAULT

Если указанный звук не найден, не воспроизводите системный звук по умолчанию.

winsound.SND_NOSTOP

Не прерывайте воспроизведение звуков в данный момент.

winsound.SND_NOWAIT

Немедленно вернитесь, если звуковой драйвер занят.

Примечание

Этот флаг не поддерживается на современных платформах Windows.

winsound.MB_ICONASTERISK

Воспроизведите звук SystemDefault.

winsound.MB_ICONEXCLAMATION

Воспроизведите звук SystemExclamation.

winsound.MB_ICONHAND

Воспроизведите звук SystemHand.

winsound.MB_ICONQUESTION

Воспроизведите звук SystemQuestion.

winsound.MB_OK

Воспроизведите звук SystemDefault.

Вернуться на верх