Note
Please see Azure Cognitive Services for Speech documentation for the latest supported speech solutions.
SpeechSynthesizer.SetOutputToWaveFile Method (String, SpeechAudioFormatInfo)
Configures the SpeechSynthesizer object to append output to a Waveform audio format file in a specified format.
Namespace: Microsoft.Speech.Synthesis
Assembly: Microsoft.Speech (in Microsoft.Speech.dll)
Syntax
'Declaration
Public Sub SetOutputToWaveFile ( _
path As String, _
formatInfo As SpeechAudioFormatInfo _
)
'Usage
Dim instance As SpeechSynthesizer
Dim path As String
Dim formatInfo As SpeechAudioFormatInfo
instance.SetOutputToWaveFile(path, formatInfo)
public void SetOutputToWaveFile(
string path,
SpeechAudioFormatInfo formatInfo
)
Parameters
- path
Type: System.String
The path to the file.
- formatInfo
Type: Microsoft.Speech.AudioFormat.SpeechAudioFormatInfo
The audio format information.
Examples
The following example specifies the format of the output of speech synthesis and sends it to a WAV file. Because the SpeakAsync(PromptBuilder) call is asynchronous, the SoundPlayer instance is created (and the Play method invoked) in the handler for the SpeakCompleted event.
using System;
using Microsoft.Speech.Synthesis;
using Microsoft.Speech.AudioFormat;
namespace SampleSynthesis
{
class Program
{
static void Main(string[] args)
{
// Initialize a new instance of the SpeechSynthesizer.
SpeechSynthesizer synth = new SpeechSynthesizer();
// Configure the audio output.
synth.SetOutputToWaveFile(@"C:\Test\Sample.wav",
new SpeechAudioFormatInfo(16000, AudioBitsPerSample.Eight, AudioChannel.Mono));
// Register for the SpeakCompleted event.
synth.SpeakCompleted += new EventHandler<SpeakCompletedEventArgs>(synth_SpeakCompleted);
// Create a PromptBuilder object and append a text string.
PromptBuilder song = new PromptBuilder();
song.AppendText("This is sample output to a WAVE file");
// Speak the contents of the prompt asynchronously.
synth.SpeakAsync(song);
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
// Handle the SpeakCompleted event.
static void synth_SpeakCompleted(object sender, SpeakCompletedEventArgs e)
{
// Create a SoundPlayer instance to play the output audio file.
System.Media.SoundPlayer m_SoundPlayer =
new System.Media.SoundPlayer(@"C:\Test\Sample.wav");
// Play the output file.
m_SoundPlayer.Play();
}
}
}