Я пытаюсь сделать простой диктофон. Я использую Xcode-бета 7, и я основал свой код из этих трех источников.Использование AVAudioRecorder для записи голоса
- AVFoundation Audio Recording With Swift
- AVAudioRecorder Reference видеть на входы инициализаторах.
- Recording audio in Swift, чтобы получить настройки, которые я должен использовать
Я использую следующий код:
var recordSettings = [
AVFormatIDKey: kAudioFormatAppleIMA4,
AVLinearPCMIsBigEndianKey: 0,
AVLinearPCMIsFloatKey: 0,
AVNumberOfChannelsKey: 2,
AVSampleRateKey: 32000
]
var session = AVAudioSession.sharedInstance()
do{
try session.setCategory(AVAudioSessionCategoryPlayAndRecord)
recorder = AVAudioRecorder(URL: filePath, settings: recordSettings, error: nil)
}catch{
print("Error")
}
, но он говорит, что «не удается найти инициализатор для типа„AVAudioRecorder“, который принимает Список аргументов типа '(URL: NSURL ?, настройки: [String: AudioFormatID], ошибка: nil)' "
Не являются ли мои данные именно тем, что требует документация?
Я имея эту ТОЧНУЮ ту же проблему прямо сейчас! Когда я создаю словарь recordSettings, я получаю сообщение об ошибке «AudioFormatID не соответствует протоколу AnyObject». У вас тоже есть эта проблема? – hundley
, потому что вы передаете Int, а не объект. Попробуйте создать NSNumber, как показано в моем ответе: NSNumber (integer: kAudioFormatAppleIMA4) –