He estado tratando de descubrir cómo usar el módulo Dragonfly. He echado un vistazo a la documentación, pero parece que no puedo entender cómo usarla. Solo quiero poder reconocer algunas frases y actuar sobre esas frases.¿Cómo se reconoce el habla con el módulo de Python Dragonfly?
Respuesta
Eso es correcto, este ejemplo se terminará. He visto bastante este ejemplo en particular y me faltan algunas características clave.
Lo primero es que Pythoncom no se importa. Esto proporciona un ciclo principal para el programa. Lo anterior
from dragonfly.all import Grammar, CompoundRule
# Voice command rule combining spoken form and recognition processing.
class ExampleRule(CompoundRule):
spec = "do something computer" # Spoken form of command.
def _process_recognition(self, node, extras): # Callback when command is spoken.
print "Voice command spoken."
# Create a grammar which contains and loads the command rule.
grammar = Grammar("example grammar") # Create a grammar to contain the command rule.
grammar.add_rule(ExampleRule()) # Add the command rule to the grammar.
grammar.load() # Load the grammar.
while True:
pythoncom.PumpWaitingMessages()
sleep(.1)
Arreglo menor: necesita agregar "importar pythoncom" antes de usarlo. –
La bomba de mensajes aquí la proporciona la propia aplicación NaturallySpeaking cuando el dll natlink.pyd está vinculado a la aplicación NaturallySpeaking en el registro. Esto es parte del proceso de configuración que está documentado en el sitio de cómputo del discurso. Una vez que el registro y las rutas asociadas se han configurado, la bomba de mensajes externos no es necesaria y la aplicación debe responder directamente al habla. Tenga en cuenta que este comentario solo se aplica si usa NaturallySpeaking para proporcionar la traducción de voz a texto. – reckoner
¿No era mejor simplemente corregir la respuesta existente en lugar de copiar su contenido y modificarlo en una publicación separada? – halflings
encuentro el ejemplo de uso dada en this document a ser bastante simple y autoexplicativo:
Un ejemplo muy simple del uso de la libélula es crear un comando estática voz con una devolución de llamada que se llamará cuando el comando es hablado. Esto se hace de la siguiente manera: ::
from dragonfly.all import Grammar, CompoundRule
# Voice command rule combining spoken form and recognition processing.
class ExampleRule(CompoundRule):
spec = "do something computer" # Spoken form of command.
def _process_recognition(self, node, extras): # Callback when command is spoken.
print "Voice command spoken."
# Create a grammar which contains and loads the command rule.
grammar = Grammar("example grammar") # Create a grammar to contain the command rule.
grammar.add_rule(ExampleRule()) # Add the command rule to the grammar.
grammar.load() # Load the grammar.
Este ejemplo no funciona para mí. La secuencia de comandos termina. – Moh
Esto se debe a que no hay ningún bucle while esperando el bombeo de mensajes como se explica en la respuesta anterior del usuario1110728. –
En mi caso, este módulo me pregunta acerca de win32gui, mientras lo estoy ejecutando en Debian: V – erm3nda
En primer lugar, en caso de que esté utilizando Linux, usted debe saber que la libélula sólo funciona con Windows reconocimiento de voz Dragon NaturallySpeaking o + Natlink. (Es posible hacerlo funcionar en Linux con una máquina virtual y Aenea, pero eso parece estar fuera del alcance de esta pregunta.)
Si lo está utilizando con WSR, debe ser tan simple como asegurarse libélula que se encuentra en la ruta de Python y llamando a la siguiente al final de su script principal:
while True:
pythoncom.PumpWaitingMessages()
time.sleep(0.1)
Si se está usando con Dragon NaturallySpeaking, siga el enlace anterior para la página web Natlink y siga las instrucciones para instala y activa Natlink antes de intentar usar Dragonfly. Una vez que esté instalado (utilice todos los valores predeterminados), debería poder colocar scripts de Dragonfly en su carpeta C: \ NatLink \ NatLink \ MacroSystem y hacer que se activen automáticamente cuando inicie Dragon NaturallySpeaking.
- 1. ¿Cómo se puede usar el módulo de registro en python con el módulo unittest?
- 2. ¿Cómo usar el módulo win32gui con Python?
- 3. El módulo de error personalizado no reconoce este error
- 4. Proxies con el módulo 'Solicitudes' de Python
- 5. paginación con el módulo python cmd
- 6. El módulo php no compila. No reconoce "static function_entry"
- 7. Opera Dragonfly vs. Firebug
- 8. "El formato de imagen no se reconoce", según el monitor
- 9. Python: ¿cómo se puede usar el alias de un módulo para importar sus submódulos?
- 10. Distribuya el módulo de extensión de python precompilado con distutils
- 11. Errores con el módulo de mecanización de Python
- 12. ¿Cómo se hace el equivalente de "importar * del módulo" con la función __import__ de Python?
- 13. Python y el módulo hashlib
- 14. falta el módulo python bz2
- 15. Integración de Python Twisted con el módulo Cmd
- 16. Cuando se habla del código C#, ¿cómo se pronuncia '' T? `'
- 17. Con el módulo de multiprocesamiento
- 18. Cómo evitar el truncamiento del archivo de registro con el módulo de registro de Python?
- 19. Python 3.2: no se puede importar el módulo del sqlite3
- 20. Cómo importar el módulo python desde el archivo .so?
- 21. Python: no se puede importar el módulo urandom (OS X)
- 22. ¿Cómo maneja python el módulo y el paquete con el mismo nombre?
- 23. ¿De dónde se importa el módulo?
- 24. ¿Cómo instalar el módulo Python ssl en Windows? El
- 25. Forzar el módulo Python json para que funcione con ASCII
- 26. ¿ActiveRecord habla con dos bases de datos?
- 27. ¿Cómo volver a cargar el módulo de Python en IDLE?
- 28. Importando el módulo de Python desde el Bash
- 29. ¿Cómo reconoce Google el contenido para adultos con safesearch?
- 30. Python no reconoce directorios os.path.isdir()
Debe decidir si desea que Dragon NaturallySpeaking proporcione la traducción de voz a texto, o si desea confiar en la aplicación integrada de reconocimiento de voz de Windows. – reckoner