Я пытаюсь интегрировать AudioKit в наше приложение для обработки аудио. Звук поступает со входа mi c, подаваемого на устройство iOS, и у нас не было проблем со встроенными микрофонами на iPhone. Тем не менее, мы пытаемся получить стерео вход и поэтому используем внешний mi c, который подключается к порту освещения. Mi c это Shure MV88. Ввод мы получаем двойной моно, а не стерео. Есть ли настройка, которую нам нужно переключить или изменить в коде, чтобы получить стерео? Я попытался установить channelCount на 2, но это не имеет значения.
РЕДАКТИРОВАТЬ: Некоторый код того, как мы используем AudioKit для захвата ввода c:
AKSettings.useBluetooth = true
AKSettings.bluetoothOptions = [.allowBluetoothA2DP, .allowAirPlay]
// Configure AudioKit for low latency
AKSettings.bufferLength = .medium
AKSettings.sampleRate = 16000
AKSettings.audioInputEnabled = true
AKSettings.channelCount = 2
AKSettings.defaultToSpeaker = false
mic = AKMicrophone()
AudioKit.output = mic
let format = [
AVLinearPCMBitDepthKey: 32,
AVLinearPCMIsBigEndianKey: 0,
AVNumberOfChannelsKey: 2,
AVFormatIDKey: 1819304813,
AVSampleRateKey: 16000,
AVLinearPCMIsNonInterleaved: 1,
AVLinearPCMIsFloatKey: 1
]
// Install input tap
do {
inputFile = try AVAudioFile(forWriting: inputPath, settings: format)
} catch {
AKLog("Error with output file: \(error)")
}
mic.avAudioNode.installTap(onBus: 0,
bufferSize: 4096,
format: mic.avAudioNode.outputFormat(forBus: 0),
block: { (buffer: AVAudioPCMBuffer!, _) -> Void in
do {
try self.inputFile.write(from: buffer)
} catch {
print(NSString(string: "Write failed: \(error)"))
}
})
do {
try AudioKit.start()
} catch {
AKLog("AudioKit did not start")
}