winsound ---Windows声音播放界面


这个 winsound 该模块提供了使用Windows平台提供的基本声音播放设备的途径。它包括函数和几个常量。

winsound.Beep(frequency, duration)

按一下电脑扬声器。这个 频率 参数指定声音的频率(赫兹),并且必须在37到32767之间。这个 期间 参数指定声音应持续的毫秒数。如果系统无法使扬声器发出哔哔声, RuntimeError 提高了。

winsound.PlaySound(sound, flags)

调用基础 PlaySound() 来自平台API的函数。这个 声音 参数可以是文件名、系统声音别名、音频数据 bytes-like objectNone . 它的解释取决于 flags ,它可以是下面描述的常量的按位或“或”组合。如果 声音 参数是 None ,任何当前播放的波形声音都将停止。如果系统显示错误, RuntimeError 提高了。

winsound.MessageBeep(type=MB_OK)

调用基础 MessageBeep() 来自平台API的函数。这将播放注册表中指定的声音。这个 type 参数指定要播放的声音;可能的值为 -1MB_ICONASTERISKMB_ICONEXCLAMATIONMB_ICONHANDMB_ICONQUESTIONMB_OK ,所有描述如下。价值 -1 发出一声“简单的哔哔声”;如果无法播放声音,这是最后一次回退。如果系统显示错误, RuntimeError 提高了。

winsound.SND_FILENAME

这个 声音 参数是wav文件的名称。请勿与一起使用 SND_ALIAS .

winsound.SND_ALIAS

这个 声音 参数是注册表中的声音关联名称。如果注册表不包含此类名称,则播放系统默认声音,除非 SND_NODEFAULT 也被指定。如果未注册默认声音,则发出 RuntimeError . 不要使用 SND_FILENAME .

所有Win32系统至少支持以下功能;大多数系统还支持更多功能:

PlaySound() name

相应的控制面板声音名称

'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

这个 声音 参数到 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 声音。