Python 中用于 Windows 的声音播放接口 (winsound)
winsound 模块特定于在 Windows 操作系统上安装的 Python。该模块定义了以下函数:
Beep()
调用此函数时,会从 PC 的扬声器发出一声蜂鸣声。该函数需要两个参数。frequency 参数指定声音的频率,必须在 37 到 32,767 赫兹之间。duration 参数指定声音的持续时间(以毫秒为单位)。
>>> import winsound >>> winsound.Beep(1000,500)
MessageBeep()
此函数播放注册表中指定的声音。type 参数指定要播放的声音。可能的值为:
-1、MB_ICONASTERISK、MB_ICONEXCLAMATION、MB_ICONHAND、MB_ICONQUESTION 和 MB_OK(默认值)。
值 -1 会产生“简单的蜂鸣声”。
>>> winsound.MessageBeep()
PlaySound()
此函数调用来自平台 API 的底层 PlaySound() 函数。该函数需要两个参数。sound 参数可以是文件名、系统声音别名或作为类似字节的对象的音频数据。它的解释取决于 flags 的值。标志定义如下:
SND_FILENAME | sound 参数是 WAV 文件的名称。 |
SND_LOOP | 重复播放声音。 |
SND_MEMORY | PlaySound() 的 sound 参数是 WAV 文件的内存映像,作为类似字节的对象。 |
SND_ASYNC | 立即返回,允许声音异步播放。 |
SND_NODEFAULT | 如果找不到指定的声音,则不播放系统默认声音。 |
SND_NOSTOP | 不要中断当前正在播放的声音。 |
以下语句播放给定的 WAV 文件。
>>> winsound.PlaySound('sample.wav', winsound.SND_FILENAME|winsound.SND_NOWAIT)
SND_ALIAS
Windows 注册表项与声音名称相关联。如果注册表中没有此类名称,则播放系统默认声音,除非设置了 SND_NODEFAULT。所有 Win32 系统都支持以下内容:
PlaySound() 名称 | 相应的控制面板声音名称 |
---|---|
'SystemAsterisk' | 星号 |
'SystemExclamation' | 感叹号 |
SystemExit' | 退出 Windows |
'SystemHand' | 严重错误 |
SystemQuestion' | 问号 |
例如,以下语句播放 Windows 退出声音。
>>> winsound.PlaySound("SystemExit", winsound.SND_ALIAS)
winsound 模块还定义了以下声音:
MB_ICONASTERISK | 播放 SystemDefault 声音。 |
MB_ICONEXCLAMATION | 播放 SystemExclamation 声音。 |
MB_ICONHAND | 播放 SystemHand 声音。 |
MB_ICONQUESTION | 播放 SystemQuestion 声音。 |
MB_OK | 播放 SystemDefault 声音。 |
广告