8 votes

Reconnaissance vocale de la ligne de commande avec Mac OS X

Comment faire de la reconnaissance vocale sur Mac OS X à partir de la ligne de commande ? Détails :

% Quand je regarde dans ~/Library/Speech/Speakable Items, je vois beaucoup de fichiers, comme "Tell me a joke", dont le contenu est :

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd"> 
<plist version="0.9"> 
<dict> 
        <key>BuiltInCommandID</key> 
        <integer>105</integer> 
        <key>semanticCategory</key> 
        <string>globalTellMeAJoke</string> 
        <key>alternativeSpokenFeedback</key> 
        <string></string> 
        <key>suppressSpokenConfirmation</key> 
        <string>yes</string> 
        <key>alternativeFeedback</key> 
        <string></string> 
        <key>DefaultCommandName</key> 
        <string>Tell me a joke</string> 
</dict> 
</plist> 

% Comment OS X sait-il quand invoquer ce fichier ? Lorsque je dis quelque chose cherche-t-il un nom de fichier correspondant ?

% Comment OS X sait-il quelle commande exécuter ? Je ne vois rien dans ce fichier qui indique la commande à exécuter ("Tell me a joke" n'est pas une commande en ligne). de ligne de commande).

Je sais qu'il y a de la magie dans osacompile, mais je n'arrive pas à savoir ce que c'est.

% Comment puis-je faire en sorte que OS X écoute la chaîne " "cmd" en réponse ? Je préférerais effectuer cette opération uniquement à partir de la ligne de commande, mais si je dois ouvrir un programme graphique, je le ferai.

3voto

Gareth Jenkins Points 1480

Vous pourriez être intéressé par la lecture de Documentation d'Apple sur les éléments parlants Mais la partie pertinente de votre question, "Comment puis-je faire en sorte que OS X écoute la chaîne "s" et exécute le programme "cmd" en réponse", est la suivante :

Vous pouvez ajouter un article à la liste des articles à parler. Items pour le rendre parlable.

Pour ouvrir quelque chose à l'aide d'un outil oral commande vocale, il suffit de l'ajouter au dossier Speakable Items. Vous pouvez utiliser une commande pour ouvrir tout ce que vous pouvez ouvrir en double-clic, y compris les applications, les fichiers et les sites Web. Vous pouvez également écrire des scripts et les ajouter et les ajouter au dossier.

En ce qui concerne la question "Comment OS X sait-il quelle commande exécuter ? Je ne vois rien dans ce fichier qui indique quelle commande exécuter", la partie pertinente du fichier que vous avez posté est la suivante :

    <key>BuiltInCommandID</key> 
    <integer>105</integer> 
    <key>DefaultCommandName</key> 
    <string>Tell me a joke</string> 

Cela signifie que, lorsque la commande vocale "Raconte-moi une blague" est reçue, exécutez la commande interne ID#105, qui est la commande "Raconte-moi une blague".

Dans ce cas, il s'agit d'une commande interne au système vocal. Mais vous pouvez également ajouter des AppleScripts ou des commandes shell dans le dossier des éléments parlables.

Cet article sur les conseils de Mac OS X peut également être utile.

EDITAR: Après quelques recherches, je ne suis pas sûr que vous puissiez exécuter le shell scripts directement à partir de là, mais un petit wrapper AppleScript serait assez facile à écrire, et vous pourriez même l'écrire de façon à ce qu'il puisse être dupliqué et renommé, et il exécuterait juste le shell scripts correspondant à partir de /scripts ou quelque chose comme ça.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X