¡Hay una característica genial en Windows que le permite hacer que su computadora hable o hable lo que le diga! Este método aprovecha una API integrada instalada en Windows XP, Vista, 7, 8 y 10 llamada SAPI (Interfaz de programación de aplicaciones de voz).
Microsoft Speech API es lo que se usa 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.
Tabla de contenido
- Introducir texto, pronunciar mensaje
- Configurar los ajustes de voz de SAPI
- Programar archivo de secuencia de comandos
¡Simplemente 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 VBS que tomará una entrada de texto de un usuario y luego lo pronunciará. También mencionaré cómo codificar el texto que desea pronunciar y luego programar ese script para que se ejecute en eventos específicos, como iniciar Windows o cerrar sesión.
Introducir texto, pronunciar mensaje
Comencemos con una secuencia de comandos simple que abrirá un cuadro de diálogo donde puede escribir lo que desea que hable Windows. Primero, continúe y abra el Bloc de notas.
Paso 1: pegue el siguiente texto en un nuevo documento:
Dim message, sapi
message=InputBox(“Enter the text you want spoken”,”Speak This”)
Set sapi=CreateObject(“sapi.spvoice”)
sapi.Speak message
Tenga en cuenta que cuando copia texto desde 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 cita (") y volver a escribir la cita. En el siguiente ejemplo, hay seis comillas. Debería verse algo como la imagen de abajo.
Ahora, cuando vaya a guardar el archivo, asígnele cualquier nombre, pero asegúrese de escribir también .VBS 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.
¡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 hable! Escriba algo y haga clic en Aceptar.
Si hiciste todo bien, deberías escuchar una voz masculina o femenina pronunciar tu oración. Si recibe algún tipo de mensaje de error, asegúrese de copiar y pegar el texto nuevamente y reemplace 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 donde agregué un par de líneas adicionales.
Dim message, sapi
message=InputBox(“Enter the text you want spoken”,”Speak This”)
Set sapi=CreateObject(“sapi.spvoice”)
Set sapi.Voice = sapi.GetVoices.Item(1)
sapi.Rate = 0
sapi.volume = 100
sapi.Speak message
La tasa predeterminada es 0 y el rango es de -10 a 10. -10 hará que la voz hable muy despacio y 10 hablará muy rápido. El volumen predeterminado es 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.
En Windows 10, hay dos voces: Microsoft David y Microsoft Zira, como se muestra a continuación.
Si solo hay una voz instalada en su sistema, debe cambiar lo que dice sapi.GetVoices.Item(1) a sapi.GetVoices.Item(0) , de lo contrario, recibirá un mensaje de error cuando intente ejecutar el script. También puede crear otro documento de Bloc de notas y pegar el código a continuación, que le indicará qué voces están instaladas. Guárdelo como un archivo .VBS como se muestra arriba y ejecútelo.
Set VObj = CreateObject(“SAPI.SpVoice”)
For Each Voice In VObj.getvoices
I = I + 1
msgbox “” & (I – 1) & ” – ” & Voice.GetDescription
Next
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 script. Esto sería útil si desea 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.
Solo imagina a alguien que enciende su computadora y escucha que la computadora les dice: "Hola, John, tengo mucho sueño, ¡por favor no me molestes hoy!" cuando arranca! Puedo prometerte 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.Speak “Hello John, I am very tired today!”
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 integrada 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 secuencia de comandos funcione, no dude en publicar un comentario e intentaré ayudarlo. ¡Disfrutar!