Text zu Audio Datei erstellen mit PowerShell

Mit PowerShell und dem Assembly System.Speech ist es möglich einen Text zu Audio Datei erstellen zu lassen von einem vordefinierten Text. Hierzu gibt man einen Text an, welcher dann mit der Microsoft Stimme in eine Audio-Datei gewandelt wird. Mehr dazu nachfolgend.

Text zu Audio Datei wandeln mit PowerShell und Microsoft Stimmen (Cortana)

PowerShell ist inzwischen sehr mächtig und man kann sogar einen vordefinierten Text in eine Audio Datei (.wav) wandeln. Hierzu benötigt man das Assembly System.Speech unter Windows, welches man mit Add-Type in PowerShell hinzufügt. Außerdem erzeugen wir dann sofort ein neues Objekt des SpeechSynthesizer.

Add-Type -AssemblyName System.Speech
$SpeechSynthesizer = New-Object System.Speech.Synthesis.SpeechSynthesizer

Aber es ist nicht nur ein einfaches Text zu WAV möglich, sondern man kann die Stimme ändern, oder sogar die Geschwindigkeit bestimmen. Die installierten Stimmen findet man übrigens in Windows Text-To-Speech oder auf Deutschen Windows Systemen in den Einstellungen unter Spracherkennung.

Windows Spracherkennung
$SpeechSynthesizer.SelectVoice("Microsoft Stefan")
$SpeechSynthesizer.Rate = 0  # -10 am langsamsten, 10 ist am schnellsten

Die zu verwendende Stimme für die Audio Datei ist aber optional und kann auch auskommentiert werden. Dann wird für den Text die Standard-Sprache von Cortana verwendet.

Als nächsten müssen wir eine Ausgabe-Audio-Datei im .wav-Format definieren, in die der Text mit PowerShell erzeugt wird.

$WavFileOut = Join-Path -Path $env:USERPROFILE -ChildPath "Desktop\cortana-text-to-audio-demo.wav"
$SpeechSynthesizer.SetOutputToWaveFile($WavFileOut)

Zum Schluss muss natürlich noch der Text definiert werden, welcher in die Audio-Datei erzeugt werden soll. Dieser wird in einer Variable übergeben und in die WAV-Datei erzeugt.

$YourText = '
Mit PowerShell kann man Cortana Audio Dateien erstellen.
Mehr dazu findet ihr auf www.ITnator.net
'

$SpeechSynthesizer.Speak($YourText)
$SpeechSynthesizer.Dispose()

Sind diese Schritte in einem kompletten Script zusammengefasst und ausgeführt, so hat man erfolgreich seine erste Audio Datei aus einem Text mit PowerShell erstellt.

Text zu Audio mit PowerShell und Cortana

Das ganze könnte sich dann so anhören:

Johannes Huber
 

In seiner Freizeit macht Johannes nichts lieber, als für ITnator Beiträge zu schreiben. Input bekommt er hierfür von Problemen in der IT Administration von Servern, Clients und vielen weiteren IT Komponenten.

Click Here to Leave a Comment Below 0 comments