SpeechSynthesizer.SpeakSsmlAsync(String) Méthode

Définition

Énonce de façon asynchrone une String qui contient un balisage SSML.

public:
 System::Speech::Synthesis::Prompt ^ SpeakSsmlAsync(System::String ^ textToSpeak);
public System.Speech.Synthesis.Prompt SpeakSsmlAsync (string textToSpeak);
member this.SpeakSsmlAsync : string -> System.Speech.Synthesis.Prompt
Public Function SpeakSsmlAsync (textToSpeak As String) As Prompt

Paramètres

textToSpeak
String

Balisage SMML à utiliser pour le discours.

Retours

Objet qui contient le contenu à parler.

Exceptions

textToSpeak a la valeur null.

Exemples

using System;
using System.Speech.Synthesis;

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.SetOutputToDefaultAudioDevice();

      // Build an SSML prompt in a string.
      string str = "<speak version=\"1.0\"";
      str += " xmlns=\"http://www.w3.org/2001/10/synthesis\"";
      str += " xml:lang=\"en-US\">";
      str += "<say-as type=\"date:mdy\"> 1/29/2009 </say-as>";
      str += "</speak>";

      // Speak the contents of the prompt asynchronously.
      synth.SpeakSsmlAsync(str);

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

Cette méthode stocke dans la tâche toutes les exceptions de non-utilisation que le équivalent synchrone de la méthode peut lever. Si une exception est stockée dans la tâche retournée, cette exception est levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de manière synchrone. Pour les exceptions stockées, consultez les exceptions levées par SpeakSsml(String).

Remarques

Le contenu du textToSpeak paramètre doit inclure un speak élément et doit être conforme à SSML (Speech Synthesis Markup Language) version 1.0. Pour plus d’informations, consultez Informations de référence sur le langage de balisage de synthèse vocale.

Pour parler de manière synchrone d’une chaîne qui contient le balisage SSML, utilisez la SpeakSsml méthode . Vous pouvez utiliser SpeakAsync pour lancer le langage asynchrone d’une chaîne qui ne contient pas de balisage SSML.

Lors d’un appel à cette méthode, peut SpeechSynthesizer déclencher les événements suivants :

  • StateChanged. Déclenché lorsque l’état de parole du synthétiseur change.

  • SpeakStarted. Déclenché lorsque le synthétiseur commence à générer de la parole.

  • PhonemeReached. Déclenché chaque fois que le synthétiseur atteint une lettre ou une combinaison de lettres qui constituent un son discret de la parole dans une langue.

  • SpeakProgress. Déclenché chaque fois que le synthétiseur termine de parler un mot.

  • VisemeReached. Déclenché chaque fois que la sortie orale nécessite un changement de position de la bouche ou des muscles faciaux utilisés pour produire la parole.

  • BookmarkReached. Déclenché lorsque le synthétiseur rencontre un signet dans une invite.

  • VoiceChange. Déclenché lorsque la voix orale pour le synthétiseur change.

  • SpeakCompleted. Déclenché lorsque le synthétiseur termine le traitement d’une SpeakSsmlAsync opération.

Si votre application n’a pas besoin d’effectuer des tâches en parlant, vous pouvez utiliser la SpeakSpeakSsml méthode ou pour générer la voix de manière synchrone.

S’applique à