Requisitos de los motores de reconocimiento de voz
[Microsoft Agent está en desuso a partir de Windows 7 y puede no estar disponible en versiones posteriores de Windows.
Un motor de reconocimiento de voz también debe ser un motor de comando y control (C&) totalmente compatible según SAPI 4.0. Debe admitir varias gramáticas en el formato binario descrito en la especificación y permitir que esas gramáticas se activen o desactiven en tiempo real.
Tenga en cuenta que SAPI 4.0 requiere que los motores de reconocimiento de voz admitan el carácter ancho y las interfaces Unicode. Sin embargo, al admitir estas interfaces, el motor no debe depender de la conversión de datos Unicode en ANSI, ya que es posible que el motor no funcione correctamente en algunos sistemas. Por ejemplo, un motor japonés que convierte Unicode en ANSI puede no funcionar en un sistema de Microsoft Windows 95 en inglés.
Además, para considerarse conforme a Microsoft Agent, el motor debe devolver objetos de resultados tras el reconocimiento correcto de una frase (a través de ISRGramNotifySinkW::P hraseFinish). Estos objetos de resultados deben admitir ISRResBasic, ya que la especificación requiere. Además, deben admitir ISRResScore. Aunque Microsoft Agent se ejecutará con un motor que solo admita ISRResBasic, o incluso con un motor que no devuelva ningún objeto de resultados en absoluto, el rendimiento suele ser significativamente más deficiente con estos motores. Muchas aplicaciones usan los valores de confianza proporcionados por el motor para controlar cómo responden a varios comandos.