# `winsound` — 윈도우용 소리 재생 인터페이스

Source code: PC/winsound.c

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

가용성: Windows.

## Functions

winsound.Beep(frequency, duration)

  PC 스피커로 신호음을 울립니다. frequency 매개 변수는 소리의 주파수를 헤르츠 단위로 지정하며 37에서 32,767 범위에 있어야 합니다. duration 매개 변수는 소리의 지속 시간을 밀리 초로 지정합니다. 시스템이 스피커에서 신호음을 울리지 못하면, `RuntimeError`가 발생합니다.

winsound.PlaySound(sound, flags)

  플랫폼 API에서 하부 `PlaySound()` 함수를 호출합니다. sound 매개 변수는 파일명, 시스템 소리 별칭, 바이트열류 객체의 오디오 데이터 또는 `None` 일 수 있습니다. 해석은 flags의 값에 따라 달라지는데, 아래에 설명된 상수의 비트별 OR 결합이 될 수 있습니다. sound 매개 변수가 `None`이면, 현재 재생 중인 파형 소리가 중지됩니다. 시스템이 에러를 표시하면 `RuntimeError`가 발생합니다.

winsound.MessageBeep(type=MB_OK)

  플랫폼 API에서 하부 `MessageBeep()` 함수를 호출합니다. 레지스트리에 지정된 소리를 재생합니다. type 인자는 재생할 소리를 지정합니다; 가능한 값은 아래에 설명된 `-1`, `MB_ICONASTERISK`, `MB_ICONEXCLAMATION`, `MB_ICONHAND`, `MB_ICONQUESTION` 및 `MB_OK`입니다. `-1` 값은 “간단한 신호음”을 생성합니다; 이것은 소리를 재생할 수 없을 때 최종 대체가 됩니다. 시스템이 에러를 표시하면 `RuntimeError`가 발생합니다.

## Constants

winsound.SND_FILENAME

  sound 매개 변수는 WAV 파일의 이름입니다. `SND_ALIAS`와 함께 사용하지 마십시오.

winsound.SND_ALIAS

  sound 매개 변수는 레지스트리의 소리 연결 이름입니다. 레지스트리에 그러한 이름이 없으면, `SND_NODEFAULT`도 함께 지정하지 않는 한 시스템 기본 소리를 재생합니다. 기본 소리가 등록되어 있지 않으면, `RuntimeError`를 일으킵니다. `SND_FILENAME`과 함께 사용하지 마십시오.

  모든 Win32 시스템은 적어도 다음을 지원합니다; 대부분 시스템은 더 많은 것을 지원합니다:

  `PlaySound()` 이름 | 해당 제어판 소리 이름
  --- | ---
  `'SystemAsterisk'` | Asterisk
  `'SystemExclamation'` | Exclamation
  `'SystemExit'` | Exit Windows
  `'SystemHand'` | Critical Stop
  `'SystemQuestion'` | Question

  예를 들면:

      import winsound
      # 윈도우 종료 소리를 재생합니다.
      winsound.PlaySound("SystemExit", winsound.SND_ALIAS)

      # 아마도 (등록되어 있다면) 윈도우 기본 소리를 재생합니다 (아마도 "*" 는 등록 된 소리
      # 이름이 아닐 것이기 때문입니다).
      winsound.PlaySound("*", winsound.SND_ALIAS)

winsound.SND_LOOP

  소리를 반복해서 재생합니다. 블로킹을 피하고자 `SND_ASYNC` 플래그도 사용해야 합니다. `SND_MEMORY`와 함께 사용할 수 없습니다.

winsound.SND_MEMORY

  `PlaySound()`에 대한 sound 매개 변수는 바이트열류 객체의 WAV 파일의 메모리 이미지입니다.

  참고

  이 모듈은 메모리 이미지를 비동기적으로 재생하는 것을 지원하지 않으므로, 이 플래그와 `SND_ASYNC`의 조합은 `RuntimeError`를 발생시킵니다.

winsound.SND_PURGE

  지정된 소리의 모든 인스턴스 재생을 중지합니다.

  참고

  이 플래그는 최신 윈도우 플랫폼에서 지원되지 않습니다.

winsound.SND_ASYNC

  소리를 비동기적으로 재생할 수 있도록, 즉시 반환합니다.

winsound.SND_NODEFAULT

  지정된 소리를 찾을 수 없을 때, 시스템 기본 소리를 재생하지 않습니다.

winsound.SND_NOSTOP

  현재 재생 중인 소리를 중단하지 않습니다.

winsound.SND_NOWAIT

  사운드 드라이버가 바쁘면 즉시 반환합니다.

  참고

  이 플래그는 최신 윈도우 플랫폼에서 지원되지 않습니다.

winsound.SND_APPLICATION

  The sound parameter is an application-specific alias in the registry. This flag can be combined with the `SND_ALIAS` flag to specify an application-defined sound alias.

winsound.SND_SENTRY

  Triggers a SoundSentry event when the sound is played.

  Added in version 3.14.

winsound.SND_SYNC

  The sound is played synchronously. This is the default behavior.

  Added in version 3.14.

winsound.SND_SYSTEM

  Assign the sound to the audio session for system notification sounds.

  Added in version 3.14.

winsound.MB_ICONASTERISK

  `SystemDefault` 소리를 재생합니다.

winsound.MB_ICONEXCLAMATION

  `SystemExclamation` 소리를 재생합니다.

winsound.MB_ICONHAND

  `SystemHand` 소리를 재생합니다.

winsound.MB_ICONQUESTION

  `SystemQuestion` 소리를 재생합니다.

winsound.MB_OK

  `SystemDefault` 소리를 재생합니다.

winsound.MB_ICONERROR

  `SystemHand` 소리를 재생합니다.

  Added in version 3.14.

winsound.MB_ICONINFORMATION

  `SystemDefault` 소리를 재생합니다.

  Added in version 3.14.

winsound.MB_ICONSTOP

  `SystemHand` 소리를 재생합니다.

  Added in version 3.14.

winsound.MB_ICONWARNING

  `SystemExclamation` 소리를 재생합니다.

  Added in version 3.14.