애플리케이션의 사운드 재생을 관리하는 클래스입니다.

  • 싱글턴 패턴을 사용하여 인스턴스가 하나만 존재하도록 보장합니다.
  • 효율적인 재생을 위해 사운드를 미리 로드합니다.
  • 자동 재생 제한을 우아하게 처리합니다.
const soundManager = SoundManager.getInstance();
soundManager.preloadSound(SOUND_IDS.ENTRY, 'path/to/entry-sound.mp3');
await soundManager.playSound(SOUND_IDS.ENTRY, 0.5);

Methods

  • 미리 로드된 사운드를 재생합니다.

    Parameters

    • id: string

      재생할 사운드의 식별자

    • volume: number = 1

      볼륨 레벨 (0.0에서 1.0), 기본값은 1입니다.

    Returns Promise<void>

    사운드가 재생되기 시작할 때까지 해결되는 Promise

    • 재생이 끝나면 오디오를 처음으로 되감습니다.
    • 자동 재생 제한을 처리하고 적절한 메시지를 로그로 남깁니다.
  • 나중에 재생할 사운드를 미리 로드합니다.

    Parameters

    • id: string

      사운드의 고유 식별자

    • src: string

      사운드 파일의 소스 URL

    Returns void