#!/snap/bin/powershell # Syntax: ./txt2wav.ps1 # Description: converts the given text into an audio .WAV file # Author: Markus Fleschutz # Source: github.com/fleschutz/PowerShell # License: CC0 # Configuration: $Text = "Hello, my name ist Bond, James Bond" $Speed = -1 # -10 is slowest, 10 is fastest $TargetWavFile = "spoken.wav" # Run: try { Add-Type -AssemblyName System.Speech $SpeechSynthesizer = New-Object System.Speech.Synthesis.SpeechSynthesizer # $SpeechSynthesizer.SelectVoice("Microsoft Eva Mobile") $SpeechSynthesizer.Rate = $Speed $SpeechSynthesizer.SetOutputToWaveFile($TargetWavFile) $SpeechSynthesizer.Speak($Text) $SpeechSynthesizer.Dispose() exit 0 } catch { Write-Error "ERROR in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])" exit 1 }