winsound —- Sound-playing interface for Windows


The winsound module provides access to the basic sound-playing machineryprovided by Windows platforms. It includes functions and several constants.

  • winsound.Beep(frequency, duration)
  • Beep the PC's speaker. The frequency parameter specifies frequency, in hertz,of the sound, and must be in the range 37 through 32,767. The _duration_parameter specifies the number of milliseconds the sound should last. If thesystem is not able to beep the speaker, RuntimeError is raised.

  • winsound.PlaySound(sound, flags)

  • Call the underlying PlaySound() function from the Platform API. Thesound parameter may be a filename, a system sound alias, audio data as abytes-like object, or None. Itsinterpretation depends on the value of flags, which can be a bitwise ORedcombination of the constants described below. If the sound parameter isNone, any currently playing waveform sound is stopped. If the systemindicates an error, RuntimeError is raised.

  • winsound.MessageBeep(type=MB_OK)

  • Call the underlying MessageBeep() function from the Platform API. Thisplays a sound as specified in the registry. The type argument specifies whichsound to play; possible values are -1, MB_ICONASTERISK,MB_ICONEXCLAMATION, MB_ICONHAND, MB_ICONQUESTION, and MB_OK, alldescribed below. The value -1 produces a "simple beep"; this is the finalfallback if a sound cannot be played otherwise. If the system indicates anerror, RuntimeError is raised.

  • winsound.SND_FILENAME

  • The sound parameter is the name of a WAV file. Do not use withSND_ALIAS.

  • winsound.SND_ALIAS

  • The sound parameter is a sound association name from the registry. If theregistry contains no such name, play the system default sound unlessSND_NODEFAULT is also specified. If no default sound is registered,raise RuntimeError. Do not use with SND_FILENAME.

All Win32 systems support at least the following; most systems support manymore:

PlaySound()name

Corresponding Control Panel Sound name

'SystemAsterisk'

Asterisk

'SystemExclamation'

Exclamation

'SystemExit'

Exit Windows

'SystemHand'

Critical Stop

'SystemQuestion'

Question

例如:

  1. import winsound
  2. # Play Windows exit sound.
  3. winsound.PlaySound("SystemExit", winsound.SND_ALIAS)
  4.  
  5. # Probably play Windows default sound, if any is registered (because
  6. # "*" probably isn't the registered name of any sound).
  7. winsound.PlaySound("*", winsound.SND_ALIAS)
  • winsound.SND_LOOP
  • Play the sound repeatedly. The SND_ASYNC flag must also be used toavoid blocking. Cannot be used with SND_MEMORY.

  • winsound.SND_MEMORY

  • The sound parameter to PlaySound() is a memory image of a WAV file, as abytes-like object.

注解

This module does not support playing from a memory image asynchronously, so acombination of this flag and SND_ASYNC will raise RuntimeError.

  • winsound.SND_PURGE
  • Stop playing all instances of the specified sound.

注解

This flag is not supported on modern Windows platforms.

  • winsound.SND_ASYNC
  • Return immediately, allowing sounds to play asynchronously.

  • winsound.SND_NODEFAULT

  • If the specified sound cannot be found, do not play the system default sound.

  • winsound.SND_NOSTOP

  • Do not interrupt sounds currently playing.

  • winsound.SND_NOWAIT

  • Return immediately if the sound driver is busy.

注解

This flag is not supported on modern Windows platforms.

  • winsound.MB_ICONASTERISK
  • Play the SystemDefault sound.

  • winsound.MB_ICONEXCLAMATION

  • Play the SystemExclamation sound.

  • winsound.MB_ICONHAND

  • Play the SystemHand sound.

  • winsound.MB_ICONQUESTION

  • Play the SystemQuestion sound.

  • winsound.MB_OK

  • Play the SystemDefault sound.