[ios] Core Audio 오디오 레코딩 설정

Core Audio는 iOS 애플리케이션에서 오디오 입력과 출력을 다루는 강력한 프레임워크입니다. 오디오 레코딩을 구현하려면 다음과 같은 단계를 따를 수 있습니다.

  1. AVAudioSession 설정: 오디오 녹음을 위해 AVAudioSession을 설정합니다. 이렇게 하면 앱이 오디오를 녹음하고 재생할 수 있는 환경을 구성할 수 있습니다.
let audioSession = AVAudioSession.sharedInstance()
do {
    try audioSession.setCategory(.record, mode: .default, options: [])
    try audioSession.setActive(true)
} catch {
    print("Error setting up audio session")
}
  1. 오디오 입력 장치 확인: 사용 가능한 오디오 입력 장치를 확인합니다.
let inputDevices = AVCaptureDevice.DiscoverySession(deviceTypes: [.builtInMicrophone], mediaType: AVMediaType.audio, position: .unspecified).devices
  1. AVAudioRecorder 인스턴스 생성: AVAudioRecorder를 사용하여 오디오를 실제로 녹음합니다.
guard let audioFileURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first?.appendingPathComponent("recording.m4a") else { return }
let audioSettings: [String: Any] = [
    AVFormatIDKey: kAudioFormatMPEG4AAC,
    AVSampleRateKey: 44100.0,
    AVNumberOfChannelsKey: 2,
    AVEncoderAudioQualityKey: AVAudioQuality.high.rawValue
]
do {
    audioRecorder = try AVAudioRecorder(url: audioFileURL, settings: audioSettings)
} catch {
    print("Error creating AVAudioRecorder")
}
  1. 오디오 녹음 및 정지: AVAudioRecorder를 사용하여 녹음을 시작하고 정지합니다.
audioRecorder.record()
audioRecorder.stop()

Core Audio를 사용하여 iOS 앱에서 오디오 레코딩을 구현하는 방법에 대한 간단한 안내였습니다.

참고 자료