Powershell: Como sintetizar voz

Ivo Dias
1 min readJan 8, 2021

Utilizando o Powershell podemos fazer o computador falar com o recurso de sintetizar voz, e com isso, levar os scripts a um novo nível, como emitir alertas ou ter retornos mais acessíveis.

É possível enviar sons para outros computadores e fazer um mensageiro, mas para esse artigo, vamos começar com algo bem simples, criando um script que recebe uma mensagem e lê ela.

Inicialmente, temos que adicionar a biblioteca responsável pela função de sintetizar voz, depois, criamos uma variável que vai receber o objeto dessa biblioteca, que vamos chamar de narrador. Fazemos uma chamada simples de Read-Host para receber do usuário um texto, armazenando numa variável e finalizamos chamando a função Speak, ou falar, para fazer com o que o computador leia o texto salvo. Codificando esse algoritmo, temos isso:

# Adiciona biblioteca 
Add-Type -AssemblyName System.speech

# Cria narrador
$narrador = New-Object System.Speech.Synthesis.SpeechSynthesizer

# Recebe o texto
$texto = Read-Host "Informe o que deseja ouvir: "

# Lê o texto
$narrador.Speak("$texto")

Você pode fazer o download desse script nessa galeria.

--

--

Ivo Dias

MCC, MSLA and Microsoft Community Moderator. Currently work with DevOps and write articles about automation, IT support and script development