winsound
winsound - 适用于Windows的声音播放界面
1.5.2版本的新功能。
该winsound
模块提供对Windows平台提供的基本声音播放设备的访问。它包含函数和几个常量。
winsound.Beep(frequency, duration)
此为PC的扬声器。 频率参数指定声音的频率(赫兹),并且必须在37到32,767的范围内。 持续时间参数指定声音应持续的毫秒数。 如果系统不能发出扬声器,则会引发RuntimeError。
1.6版新增功能
winsound.PlaySound(sound, flags)
PlaySound()
从平台API 调用底层函数。声音
参数可以是文件名,音频数据作为一个字符串,或None
。它的解释取决于标志
的值,它可以是下面描述的常量的按位或运算组合。如果声音
参数是None
,则任何当前正在播放的波形声音
都会停止。如果系统显示错误,则引发RuntimeError
。
winsound.MessageBeep([type=MB_OK])
从Platform API调用基础MessageBeep()函数。 这会播放注册表中指定的声音。 type参数指定要播放的声音; 可能的值是-1,MB_ICONASTERISK,MB_ICONEXCLAMATION,MB_ICONHAND,MB_ICONQUESTION和MB_OK,全部在下面描述。 值-1产生“simple beep”; 如果声音无法播放,这是最后的回退。
2.3版本的新功能。
winsound.SND_FILENAME
该sound
参数是一个WAV文件的名称。不要与SND_ALIAS
一起使用。
winsound.SND_ALIAS
该声音
参数是从注册表中声音的关联名称。如果注册表中不包含此类名称,则除非SND_NODEFAULT
另外指定,否则请播放系统默认声音。如果没有登录默认声音,请提高RuntimeError
。不要与SND_FILENAME
一起使用。
所有Win32系统至少支持以下内容; 大多数系统支持更多:
PlaySound() 名称 | 相应的控制面板声音名称 |
---|---|
'SystemAsterisk' | Asterisk |
'SystemExclamation' | Exclamation |
'SystemExit' | Exit Windows |
'SystemHand' | Critical Stop |
'SystemQuestion' | Question |
例如:
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文件的存储器中的图像,为一个字符串。
注意
这个模块不支持异步播放内存映像,所以这个标志的组合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
声音。