# `winsound` — Interface de reprodução de som para Windows

O módulo `winsound` fornece acesso ao mecanismo básico de reprodução de som fornecido pelas plataformas Windows. Inclui funções e várias constantes.

`winsound.``Beep`(frequency, duration)

  Emite um bipe no alto-falante do PC. O parâmetro frequency especifica a frequência, em hertz, do som e deve estar no intervalo de 37 a 32.767. O parâmetro duration especifica o número de milissegundos que o som deve durar. Se o sistema não conseguir emitir um bipe no alto-falante, `RuntimeError` é levantado.

`winsound.``PlaySound`(sound, flags)

  Call the underlying `PlaySound()` function from the Platform API. The sound parameter may be a filename, a system sound alias, audio data as a bytes-like object, or `None`. Its interpretation depends on the value of flags, which can be a bitwise ORed combination of the constants described below. If the sound parameter is `None`, any currently playing waveform sound is stopped. If the system indicates an error, `RuntimeError` is raised.

`winsound.``MessageBeep`(type=MB_OK)

  Call the underlying `MessageBeep()` function from the Platform API. This plays a sound as specified in the registry. The type argument specifies which sound to play; possible values are `-1`, `MB_ICONASTERISK`, `MB_ICONEXCLAMATION`, `MB_ICONHAND`, `MB_ICONQUESTION`, and `MB_OK`, all described below. The value `-1` produces a “simple beep”; this is the final fallback if a sound cannot be played otherwise. If the system indicates an error, `RuntimeError` is raised.

`winsound.``SND_FILENAME`

  O parâmetro sound é o nome de um arquivo WAV. Não use com `SND_ALIAS`.

`winsound.``SND_ALIAS`

  O parâmetro sound é um nome de associação de som do registro. Se o registro não contiver tal nome, reproduza o som padrão do sistema, a menos que `SND_NODEFAULT` também seja especificado. Se nenhum som padrão for registrado, levanta `RuntimeError`. Não use com `SND_FILENAME`.

  Todos os sistemas Win32 oferecem suporte a pelo menos o seguinte; a maioria dos sistemas oferecem suporte a muito mais:

  name `PlaySound()` | Nome do som correspondente no Painel de Controle
  --- | ---
  `'SystemAsterisk'` | Asterisco
  `'SystemExclamation'` | Exclamação
  `'SystemExit'` | Logoff do Windows
  `'SystemHand'` | Parada crítica
  `'SystemQuestion'` | Pergunta

  Por exemplo:

      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`

  Reproduz o som repetidamente. O sinalizador `SND_ASYNC` também deve ser usado para evitar bloqueio. Não pode ser usado com `SND_MEMORY`.

`winsound.``SND_MEMORY`

  O parâmetro sound para `PlaySound()` é uma imagem de memória de um arquivo WAV, como um objeto bytes ou similar.

  Nota

  Este módulo não oferece suporte à reprodução de uma imagem de memória de forma assíncrona, portanto, uma combinação deste sinalizador e `SND_ASYNC` levantará `RuntimeError`.

`winsound.``SND_PURGE`

  Para de reproduzir todas as instâncias do som especificado.

  Nota

  Não há suporte a este sinalizador em plataformas Windows modernas.

`winsound.``SND_ASYNC`

  Retorna imediatamente, permitindo que os sons sejam reproduzidos de forma assíncrona.

`winsound.``SND_NODEFAULT`

  Se o som especificado não for encontrado, o som padrão do sistema não será reproduzido.

`winsound.``SND_NOSTOP`

  Não interrompe os sons que estão sendo reproduzidos.

`winsound.``SND_NOWAIT`

  Retorna imediatamente se o driver de som estiver ocupado.

  Nota

  Não há suporte a este sinalizador em plataformas Windows modernas.

`winsound.``MB_ICONASTERISK`

  Reproduz o som `SystemDefault`.

`winsound.``MB_ICONEXCLAMATION`

  Reproduz o som `SystemExclamation`.

`winsound.``MB_ICONHAND`

  Reproduz o som `SystemHand`.

`winsound.``MB_ICONQUESTION`

  Reproduz o som `SystemQuestion`.

`winsound.``MB_OK`

  Reproduz o som `SystemDefault`.