[swift] 스위프트에서 사운드 이퀄라이저 설정하기

아래는 스위프트에서 AVAudioUnitEQ를 사용하여 사운드 이퀄라이저를 설정하는 간단한 예제입니다.

import AVFoundation

// AVAudioEngine를 생성합니다.
var audioEngine = AVAudioEngine()

// 재생할 오디오 파일을 로드합니다.
let audioFile = try! AVAudioFile(forReading: audioURL)

// AVAudioPlayerNode를 생성합니다.
let audioPlayerNode = AVAudioPlayerNode()

// AVAudioUnitEQ를 생성합니다.
let equalizer = AVAudioUnitEQ(numberOfBands: 3)

// 주파수 대역을 설정합니다.
equalizer.bands[0].frequency = 100
equalizer.bands[0].gain = 0

equalizer.bands[1].frequency = 1000
equalizer.bands[1].gain = 0

equalizer.bands[2].frequency = 10000
equalizer.bands[2].gain = 0

// AVAudioEngine에 노드를 추가합니다.
audioEngine.attach(audioPlayerNode)
audioEngine.attach(equalizer)

// 연결을 설정합니다.
audioEngine.connect(audioPlayerNode, to: equalizer, format: audioFile.processingFormat)
audioEngine.connect(equalizer, to: audioEngine.outputNode, format: audioFile.processingFormat)

// 재생을 시작합니다.
audioPlayerNode.scheduleFile(audioFile, at: nil)
try! audioEngine.start()
audioPlayerNode.play()

이 예제에서는 AVAudioEngine를 사용하여 오디오 파일을 재생하고, AVAudioUnitEQ를 사용하여 이퀄라이저를 설정합니다. 각 주파수 대역의 게인을 조절하여 음악이나 오디오의 사운드를 조정할 수 있습니다.

더 많은 세부 내용과 예제 코드는 Apple의 공식 문서를 참고하시기 바랍니다. (AVAudioUnitEQ - Apple Developer Documentation)