winsound
— Windows 声音播放接口
¶
winsound
模块提供对由 Windows 平台提供的基本声音播放机制的访问。它包括一些函数和几个常量。
哔哔 PC 扬声器。
frequency
参数指定声音的频率 (以赫兹为单位),且必须在 37 到 32,767 范围内。
duration
参数指定声音应该持续的毫秒数。若系统无法蜂鸣扬声器,
RuntimeError
被引发。
调用底层
PlaySound()
函数从平台 API。
sound
参数可以是文件名、系统声音别名、音频数据如
像字节对象
,或
None
。其解释从属值对于
flags
,其可以是下文描述常量的按位 OR (或) 组合。若
sound
参数为
None
,停止目前播放的任何波形声音。若系统指示出错,
RuntimeError
被引发。
调用底层
MessageBeep()
函数从平台 API。这播放如注册表中的指定声音。
type
自变量指定要播放的声音;可能的值包括
-1
,
MB_ICONASTERISK
,
MB_ICONEXCLAMATION
,
MB_ICONHAND
,
MB_ICONQUESTION
,和
MB_OK
,所有的描述见下文。值
-1
产生 "简单蜂鸣声";这是最后回退,若声音无法以其它方式播放。若系统指示出错,
RuntimeError
被引发。
sound
参数是来自注册表的声音关联名称。若注册表未包含这样的名称,播放系统默认声音,除非
SND_NODEFAULT
也有指定。若默认声音未注册,引发
RuntimeError
。不要使用同
SND_FILENAME
.
所有 Win32 系统至少支持以下;大多数系统支持更多:
|
|
相应的控制面板声音名称 |
|---|---|
'SystemAsterisk'
|
星号 |
'SystemExclamation'
|
感叹号 |
'SystemExit'
|
退出 Windows |
'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)
重复播放声音。
SND_ASYNC
标志还必须被使用以避免阻塞。无法使用同
SND_MEMORY
.
sound
参数用于
PlaySound()
是 WAV 文件的内存映像,作为
像字节对象
.
注意
此模块不支持从内存映像异步播放,因此组合此标志和
SND_ASYNC
会引发
RuntimeError
.
停止播放指定声音的所有实例。
注意
现代 Windows 平台不支持此标志。
立即返回,允许异步播放声音。
若找不到指定声音,不播放系统默认声音。
不中断目前播放的声音。
立即返回,若声音驱动程序繁忙。
注意
现代 Windows 平台不支持此标志。
播放
SystemDefault
声音。
播放
SystemExclamation
声音。
播放
SystemHand
声音。
播放
SystemQuestion
声音。
播放
SystemDefault
声音。