2015-04-10 19 views
6

In meiner App, wenn der Benutzer ein bestimmtes Wort oder Wörter sagt, wird die App durch das Auslesen eines Satzes antworten, der in App gesetzt wird. Was ist der einfachste Weg dies zu tun?Einfache Spracherkennung Swift?

ich die neueste Version von Xcode (Sein für meine WWDC 2015 Stipendium app)

Antwort

2

werden Sie wollen SpeechKit verwenden. Ray hat ein schönes Tutorial hier:

http://www.raywenderlich.com/60870/building-ios-app-like-siri

Das SDK von Nuance entwickelt wird (die Drachen Personen):

http://nuancemobiledeveloper.com/public/index.php

+1

Meine app in Swift codiert, hatte eine Menge Leute mit mir viel Mühe versucht speechKit zu bekommen schnell arbeiten. Würdest du vielleicht andere Tutorials in swift kennen? Danke vielmals! – Junaid

+0

@Junaid Sie können Objective-C und Swift immer in derselben Anwendung verwenden. Schreiben Sie einfach die Teile, die mit 'SpeechKit' in Objective-C verbunden sind, und verbinden Sie diese mit einem Bridging-Header. Ich kenne keine anderen guten Tutorials, die ich empfehlen würde, aber ich werde weiter schauen – Oxcug

+0

Ich habe Mühe, meine Swift-App Speechkit zu verwenden. Initialisierung funktioniert gut, aber ich kann nicht herausfinden, wie Override-Callback-Methoden von SpeechKit (didFinishWithErrors, didFinishWithResults usw.) in den .swift-Code implementieren. Wenn Sie diese Methoden nur zu einem Protokoll hinzufügen, können Sie Methoden hinzufügen, aber das ergibt keinen Sinn. – Josh

9

Ab iOS 10 können Sie Speech.framework verwenden:

import Speech 

let recognizer = SFSpeechRecognizer() 
let request = SFSpeechURLRecognitionRequest(url: audioFileURL) 
recognizer?.recognitionTask(with: request, resultHandler: { (result, error) in 
    print (result?.bestTranscription.formattedString) 
}) 
+0

Was ist das audioFileURL – suji

+0

Die URL der Audiodatei, die Sie erkannt werden möchten. Sie können auch einen Audiopuffer verwenden, wenn Sie die Echtzeiterkennung wünschen. – fpg1503

+1

Aber Speech framework hat eine Begrenzung von einer Minute Aufnahme. Und wie für eine lange Audiodatei zu erreichen. Wie Aufnahme von Zeit zu Zeit in der Audiodatei. –