Condividi tramite


Note

Please see Azure Cognitive Services for Speech documentation for the latest supported speech solutions.

PromptBreak Enumeration

Enumerates values for intervals of prosodic separation (breaks) between word boundaries.

Namespace:  Microsoft.Speech.Synthesis
Assembly:  Microsoft.Speech (in Microsoft.Speech.dll)

Syntax

'Declaration
Public Enumeration PromptBreak
'Usage
Dim instance As PromptBreak
public enum PromptBreak

Members

Member name Description
None Indicates no break.
ExtraSmall Indicates an extra small pause.
Small Indicates a small pause.
Medium Indicates a medium pause.
Large Indicates a large pause.
ExtraLarge Indicates an extra large pause.

Remarks

The values in the PromptBreak enumeration represent a range of separation intervals (pauses) between word boundaries. The speech synthesis engine determines the exact duration of the interval. When a break is requested, one of these values is passed to the text-to-speech (TTS) engine, which contains a mapping between these values and the corresponding millisecond break values.

The value None represents the absence of a pause between word boundaries and can be used to remove a break where one would normally occur. The remaining values are listed in order of increasing durations for breaks.

Examples

The following example builds a prompt containing two sentences separated by a break and sends the output to a WAV file for playback.

using System;
using Microsoft.Speech.Synthesis;

namespace SampleSynthesis
{
  class Program
  {
    static void Main(string[] args)
    {

      // Initialize a new instance of the SpeechSynthesizer.
      using (SpeechSynthesizer synth = new SpeechSynthesizer())
      {

        // Configure the audio output. 
        synth.SetOutputToWaveFile(@"C:\test\ShowTimes.wav");

        // Create a SoundPlayer instance to play the output audio file.
        System.Media.SoundPlayer m_SoundPlayer =
          new System.Media.SoundPlayer(@"C:\test\ShowTimes.wav");

        // Build a prompt with two sentences separated by a break.
        PromptBuilder builder = new PromptBuilder(
          new System.Globalization.CultureInfo("en-US"));
        builder.AppendText(
          "Tonight's movie showings in theater A are at 5:45, 7:15, and 8:45");
        builder.AppendBreak(PromptBreak.Medium);
        builder.AppendText(
          "Tonight's movie showings in theater B are at 5:15, 7:15, and 9:15");

        // Speak the prompt and play back the output file.
        synth.Speak(builder);
        m_SoundPlayer.Play();
      }

      Console.WriteLine();
      Console.WriteLine("Press any key to exit...");
      Console.ReadKey();
    }
  }
}

See Also

Reference

Microsoft.Speech.Synthesis Namespace

Prompt