7

以下のように音声認識を使ってみます

    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)

    })

結果は nil です。デバッグすると、次のようなエラーが表示されます

Error Domain=kAFAssistantErrorDomain Code=1101 "(null)"

何か考えはありますか?

4

1 に答える 1

13

同じエラーが発生しましたが、同じコードがデバイスで正常に機能しました。そのため、iOS 10 ベータ版を物理デバイスにインストールして、コードを実行してください。このようなものは、トリックを行う必要があります:

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)
                }
            })
        }
    }
}

これについてはこちらに詳しく書いています。

于 2016-06-14T11:48:36.470 に答える