I try using speech recognition as below
let urlpath = Bundle.main().pathForResource("myvoice2", ofType: "m4a")
let url:URL = URL.init(fileURLWithPath: urlpath!)
let recognizer = SFSpeechRecognizer()
let request = SFSpeechURLRecognitionRequest(url: url)
recognizer?.recognitionTask(with: request, resultHandler: { (result, error) in
print (result?.bestTranscription.formattedString)
})
The result is nil, I debug and see the error as below
Error Domain=kAFAssistantErrorDomain Code=1101 "(null)"
Do you have any idea?
I have the same error, but identical code worked fine on device. So, install iOS 10 beta on a physical device and run your code. Something like this ought to do the trick:
SFSpeechRecognizer.requestAuthorization { authStatus in
if authStatus == SFSpeechRecognizerAuthorizationStatus.authorized {
if let path = Bundle.main().urlForResource("test", withExtension: "m4a") {
let recognizer = SFSpeechRecognizer()
let request = SFSpeechURLRecognitionRequest(url: path)
recognizer?.recognitionTask(with: request, resultHandler: { (result, error) in
if let error = error {
print("There was an error: \(error)")
} else {
print (result?.bestTranscription.formattedString)
}
})
}
}
}
I wrote about this in more detail here.