[swift] 사운드 반복 재생하기

iOS 애플리케이션을 개발할 때 때로는 사운드 파일을 반복적으로 재생해야 할 경우가 있습니다. 예를 들어 배경음악이나 반복되는 효과음을 재생해야 할 때 사용할 수 있습니다.

아래는 Swift를 사용하여 사운드 파일을 반복하여 재생하는 방법을 알려드리겠습니다.

AVAudioPlayer를 사용한 사운드 반복 재생하기

import AVFoundation

class SoundPlayer {
    var player: AVAudioPlayer?

    // 사운드 파일을 반복하여 재생하는 함수
    func playSound(file: String) {
        guard let url = Bundle.main.url(forResource: file, withExtension: "mp3") else {
            return
        }

        do {
            // 사운드 재생을 위한 AVAudioPlayer 인스턴스 생성
            player = try AVAudioPlayer(contentsOf: url)
            
            // 무한반복 설정
            player?.numberOfLoops = -1

            // 사운드 재생
            player?.play()
        } catch {
            print("사운드 재생 중 오류 발생: \(error.localizedDescription)")
        }
    }

    // 사운드 재생 정지 함수
    func stopSound() {
        player?.stop()
        player = nil
    }
}

위의 코드를 사용하여 사운드 파일을 반복하여 재생할 수 있습니다. playSound 함수를 호출할 때 재생하고자 하는 사운드 파일의 이름을 전달하면, 해당 파일을 무한 반복하여 재생합니다. stopSound 함수를 호출하면 사운드 재생이 중지됩니다.

사용 예시

let soundPlayer = SoundPlayer()

// 사운드 파일 반복 재생 시작
soundPlayer.playSound(file: "bgm")

// 사운드 파일 재생 중지
soundPlayer.stopSound()

위의 코드는 사운드 파일 반복 재생을 시작하는 예시입니다. playSound 함수에 재생하고자 하는 사운드 파일의 이름을 전달하여 재생을 시작합니다. 재생 중지는 stopSound 함수를 호출하여 수행할 수 있습니다.

참고 자료