2020-11-06 15:30:14 +01:00
|
|
|
#!/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
|
2020-12-09 10:30:55 +01:00
|
|
|
} catch {
|
|
|
|
Write-Error "ERROR in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
|
|
|
|
exit 1
|
|
|
|
}
|