Search code examples
powershellwavsapi

Making SAPI sing


I'm working on a PowerShell script to create wav files of synthesized singing using SAPI. I've run into several problems:

  1. I don't know how to make pauses.
  2. I can't seem to make a sequence of speech with changes in rate, without overwriting the wav file.

Solution

  • You'll want to use SSML and the SpeechSynthesizer.SpeakSSML method.

    Then you can use the <break> element to specify a pause time, and the <prosody> element to specify changes in rate.