要解决AudioKit麦克风在第一次运行时无法初始化的问题,可以尝试以下解决方法:
NSMicrophoneUsageDescription
需要访问您的麦克风以录制音频
import AVFoundation
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
do {
try AVAudioSession.sharedInstance().setCategory(.playAndRecord, mode: .default, options: [])
try AVAudioSession.sharedInstance().setActive(true)
} catch {
print("Failed to set audio session category.")
}
return true
}
这将设置音频会话的类别为“playAndRecord”,以便允许录制和播放音频。
import AudioKit
class ViewController: UIViewController {
var mic: AKMicrophone!
override func viewDidLoad() {
super.viewDidLoad()
AKSettings.audioInputEnabled = true
AKSettings.useBluetooth = true // 如果需要使用蓝牙麦克风,请设置为true
do {
try AKSettings.setSession(category: .playAndRecord, with: .defaultToSpeaker)
} catch {
print("Failed to set audio session category.")
}
mic = AKMicrophone()
do {
try AudioKit.start()
} catch {
print("Failed to start AudioKit.")
}
}
}
请注意,该示例在开始之前设置了音频会话类别,并且在初始化麦克风之前启用了音频输入。
通过按照上述步骤检查和设置麦克风权限、音频会话和AudioKit引擎,您应该能够解决AudioKit麦克风无法初始化的问题。