import javax.speech.*;
import javax.speech.recognition.*;
...
public class Reconnaissance {
public static void main(String
args[]) {
...
// creation d'un reconnaisseur
recognizer = Central.createRecognizer(null);
recognizer.allocate();
...
// creation d'une grammaire de règle à partir du fichier
hello_fr.gram
Reader reader = new FileReader("hello_fr.gram");
ruleGrammar = (RuleGrammar) recognizer.loadJSGF(reader);
// ajout d'un listener déclanché lorsqu'une règle
est reconnue
ruleGrammar.addGrammarListener(ruleListener);
...
recognizer.commitChanges();
recognizer.resume();
}
static GrammarListener ruleListener =
new GrammarResultAdapter() {
public void
acceptedResult(ResultEvent e) {
...
// pour récupérer les tags des
règles reconnues
FinalRuleResult result = (FinalRuleResult) e.getSource();
String tags[] = result.getTags();
// l'utilisateur a dit "c'est fini"
if (tags[0].equals("stop")) {
...
System.out.println("c'est fini");
System.out.println("A bientot");
}
}
};
} |