Cómo hacer que su computadora hable / diga lo que escribe

Cree un script de VBS que tomará una entrada de texto de un usuario

¡Hay una característica interesante en Windows que le permite hacer que su computadora hable o diga lo que le diga! Este método aprovecha una API incorporada instalada en Windows XP, Vista, 7, 8 y 10 llamada SAPI (Interfaz de programación de aplicaciones de voz).

La API de Microsoft Speech es lo que se utiliza para la función de accesibilidad de texto a voz integrada en Windows. También puede escribir programas que llamen a la API, lo que le permitiría dejar que sus aplicaciones hablen, pero eso es para los desarrolladores.

¡Hacer que tu computadora diga lo que quieres es bastante fácil en realidad! En este artículo, le mostraré cómo crear un script de VBS que tomará una entrada de texto de un usuario y luego la hablará. También mencionaré cómo codificar el texto que desea que se lea y luego programar ese script para que se ejecute en eventos específicos, como iniciar Windows o cerrar la sesión.

Introducir texto, pronunciar mensaje

Comencemos con una secuencia de comandos simple que mostrará un cuadro de diálogo en el que puede escribir lo que desea que diga Windows. Primero, continúe y abra el Bloc de notas.

Paso 1:  pegue el siguiente texto en un nuevo documento:

Atenuar mensaje, sapi
mensaje = InputBox (“Ingrese el texto que desea que se diga”, “Diga esto”)
Establecer sapi = CreateObject (“sapi.spvoice”)
sapi.Speak mensaje

Tenga en cuenta que cuando copia texto de su navegador web y lo pega en el Bloc de notas, las comillas causarán problemas. Antes de guardar el archivo, debe revisar y eliminar cada cotización (“) y volver a escribir la cotización. En el siguiente ejemplo, hay seis comillas. Debería parecerse a la imagen de abajo.

hacer que la computadora hable

Ahora, cuando vaya a guardar el archivo, asígnele cualquier nombre, pero asegúrese de escribir también <strong>.VBS</strong> después del nombre. A continuación, para el cuadro Guardar como tipo , elija Todos los archivos en lugar de los Documentos de texto predeterminados.

hacer que la computadora hable

¡Ahora haga doble clic en el archivo VBS y debería ver un cuadro de entrada donde puede escribir el texto que desea que se lea! Escriba algo y haga clic en Aceptar.

hablar cuadro de diálogo

Si hiciste todo bien, deberías escuchar una voz masculina o femenina decir tu oración. Si recibe algún tipo de mensaje de error, asegúrese de copiar y pegar el texto nuevamente y reemplazar esas comillas.

Configurar los ajustes de voz de SAPI

Esto es divertido, pero también podemos configurar nuestra pequeña computadora parlante con diferentes configuraciones. Podemos cambiar el volumen, qué tan rápido o lento habla la voz y cambiar el género entre masculino y femenino. Aquí hay un código de ejemplo en el que agregué un par de líneas adicionales.

Atenuar mensaje, sapi
mensaje = InputBox (“Ingrese el texto que desea que se hable”, “Diga esto”)
Establecer sapi = CreateObject (“sapi.spvoice”)
Establecer sapi.Voice = sapi.GetVoices.Item (1)
sapi.Rate = 0
sapi.volume = 100
sapi.Speak mensaje

La tasa predeterminada es 0 y el rango es de -10 a 10. -10 hará que la voz hable muy lentamente y 10 hablará muy rápido. El volumen está predeterminado en 100 y el rango es de 0 a 100. La línea que comienza con Set sapi.Voice le permitirá cambiar a otra voz, si está instalada en su sistema.

Tenga en cuenta que el número de voces entre las que puede elegir depende del sistema operativo. En Windows 7, solo hay una voz, Microsoft Anna.

voces instaladas

En Windows 10, hay dos voces: Microsoft David y Microsoft Zira, como se muestra a continuación.

voz de microsoft davis

microsoft zira voz

Si solo hay una voz instalada en su sistema, debe cambiar que dice sapi.GetVoices.Item (1) a <em><em>sapi.GetVoices.Item (0)</em></em> , de lo contrario, obtendrá un mensaje de error cuando intente ejecutar el script. También puede crear otro documento del Bloc de notas y pegar el código a continuación, que le dirá qué voces están instaladas. Guárdelo como un archivo .VBS como se muestra arriba y ejecútelo.

Establezca VObj = CreateObject (“SAPI.SpVoice”)
para cada voz en VObj.getvoices
I = I + 1
msgbox “” &amp; (I – 1) &amp; ”-” &amp; Voice.GetDescription
Siguiente

Hasta ahora, hemos estado usando este cuadro de diálogo emergente para ingresar texto, pero también puede simplemente escribir su mensaje en el archivo de secuencia de comandos. Esto sería útil si quisiera programar el script para que se ejecute automáticamente. Obviamente, esto se puede usar para bromear con tus amigos y familiares y funciona muy bien.

Imagínense a alguien encendiendo su computadora y escuchando que la computadora les dice “Hola John, tengo mucho sueño, ¡por favor no me molestes hoy!” cuando arranca! Te lo prometo por experiencia, es histérico y definitivamente deberías intentarlo.

Para codificar el mensaje, simplemente cambie la última línea a algo como esto:

sapi. Diga “Hola John, ¡estoy muy cansado hoy!”

Programar archivo de secuencia de comandos

Ahora que ha codificado su mensaje para su objetivo previsto, simplemente tiene que ejecutarlo cuando lo desee. Si es experto en tecnología, puede usar un programa como AutoIt, que le permitirá hacer cosas extremas como ejecutar su archivo de script cuando se abre un programa determinado o cuando se maximiza o minimiza una ventana.

No tengo tiempo para entrar en todo eso en esta publicación, pero afortunadamente Microsoft tiene una función incorporada llamada Programador de tareas que le permite hacer cosas bastante complicadas con scripts fácilmente.

Mi publicación anterior profundiza en cómo programar un archivo de script para que se ejecute cuando ocurren ciertos eventos en Windows. Si tiene algún problema para que su guión funcione, no dude en publicar un comentario e intentaré ayudarlo. ¡Disfrutar!

Leave a Comment

Your email address will not be published. Required fields are marked *