SpeechEventInfo SpeechEventInfo SpeechEventInfo SpeechEventInfo Struct

Definizione

Usato per specificare il tipo di evento e i relativi argomenti, se presenti, che un motore di sintesi vocale personalizzato deve generare come parte del rendering del testo.Used to specify the type of event, and its arguments (if any) to be generated as part of the rendering of text to speech by a custom synthetic speech engine.

public value class SpeechEventInfo : IEquatable<System::Speech::Synthesis::TtsEngine::SpeechEventInfo>
public struct SpeechEventInfo : IEquatable<System.Speech.Synthesis.TtsEngine.SpeechEventInfo>
type SpeechEventInfo = struct
Public Structure SpeechEventInfo
Implements IEquatable(Of SpeechEventInfo)
Ereditarietà
SpeechEventInfoSpeechEventInfoSpeechEventInfoSpeechEventInfo
Implementazioni

Esempi

L'esempio seguente fa parte di un'implementazione di sintesi vocale personalizzata che eredita da TtsEngineSsmle tramite l'utilizzo di TextFragment, SpeechEventInfo, FragmentState, e TtsEventIdThe example below is part of a custom speech synthesis implementation inheriting from TtsEngineSsml, and using the use of TextFragment, SpeechEventInfo, FragmentState, and TtsEventId

L'implementazione di SpeakThe implementation of Speak

  1. Riceve una matrice di TextFragment istanze e crea una nuova matrice del TextFragment istanze deve essere passato il Speak metodo su un motore di sintesi sottostante.Receives an array of TextFragment instances and creates a new array of TextFragment instances to be passed to the Speak method on an underlying synthesis engine.

  2. Se il TtsEngineAction valore di enumerazione da trovato dal Action proprietà le FragmentState restituito dal State proprietà di ogni TextFragment istanza è Speak, l'implementazioneIf the TtsEngineAction enumeration value by found from the Action property on the FragmentState returned by the State property of each TextFragment instance is Speak, the implementation

    • Traduce Americanism a Britishisms nel testo da pronunciare.Translates Americanism to Britishisms in the text to be spoken.

    • Se il EventInterest proprietà il ITtsEngineSite interfacce fornite per il supporto di implementazione il WordBoundary tipo di evento, un SpeechEventInfo istanza viene usata per creare un evento all'unità viene creato un indicatore di avanzamento del sintetizzatore.If the EventInterest property on the ITtsEngineSite interfaces provided to the implementation support the WordBoundary event type, a SpeechEventInfo instance is used to create an event to drive a synthesizer progress meter is created.

  3. Un motore di rendering di sintesi vocale viene quindi chiamato con modificato TextFragment matrice.A speech rendering engine is then called with the modified TextFragment array.

private const int WordBoundaryFlag = 1 << (int)TtsEventId.WordBoundary;  
private readonly char[] spaces = new char[] { ' ', '\t', '\r', '\n' };  
internal struct UsVsUk  
{  
  internal string UK;  
  internal string US;  
}  

override public void Speak (TextFragment [] frags, IntPtr wfx, ITtsEngineSite site)  
{  
  TextFragment [] newFrags=new TextFragment[frags.Length];  

  for (int i=0;i<frags.Length;i++){  
    newFrags[i].State=frags[i].State;  
    //truncate  
    newFrags[i].TextToSpeak = frags[i].TextToSpeak.Substring(frags[i].TextOffset,  
                               frags[i].TextLength);  
    newFrags[i].TextLength = newFrags[i].TextToSpeak.Length;  
    newFrags[i].TextOffset = 0;  
    if (newFrags[i].State.Action == TtsEngineAction.Speak) {  
      //Us to UK conversion  
      foreach (UsVsUk term in TransList) {  
      newFrags[i].TextToSpeak.Replace(term.US, term.UK);  
      }  
      //Generate progress meter events if supported  
      if ((site.EventInterest & WordBoundaryFlag) != 0) {  
      string[] subs = newFrags[i].TextToSpeak.Split(spaces);  

      foreach (string s in subs) {  
        int offset = newFrags[i].TextOffset;  
        SpeechEventInfo spEvent = new SpeechEventInfo((Int16)TtsEventId.WordBoundary,   
                (Int16)EventParameterType.Undefined,   
                 s.Length, new IntPtr(offset));  
        offset += s.Length;  
        if (s.Trim().Length > 0) {  
          SpeechEventInfo[] events = new SpeechEventInfo[1];  
          events[0] = spEvent;  
          site.AddEvents(events, 1);  
        }  
      }  
      }  
    }  
  }  

  _baseSynthesize.Speak(newFrags, wfx, site);  

}  

Commenti

Motore di sintesi vocale personalizzato richiede la generazione di eventi nella piattaforma di riconoscimento vocale, fornendo un'apposita SpeechEventInfo dell'istanza di AddEvents membro del ITtsEngineSite motore sito oggetto passato alle implementazioni di Speak, AddLexicon, e RemoveLexicon.A custom speech synthesis engine requests the generation of events under the Speech Platform by providing an appropriate SpeechEventInfo instance to AddEvents member of the ITtsEngineSite engine site object passed to implementations of Speak, AddLexicon, and RemoveLexicon.

Costruttori

SpeechEventInfo(Int16, Int16, Int32, IntPtr) SpeechEventInfo(Int16, Int16, Int32, IntPtr) SpeechEventInfo(Int16, Int16, Int32, IntPtr) SpeechEventInfo(Int16, Int16, Int32, IntPtr)

Costruisce un oggetto SpeechEventInfo appropriato.Constructs an appropriate SpeechEventInfo.

Proprietà

EventId EventId EventId EventId

Ottiene e imposta l'evento della piattaforma di riconoscimento vocale richiesto da un'istanza di SpeechEventInfo.Gets and set the Speech platform event which an instance of SpeechEventInfo is used to request.

Param1 Param1 Param1 Param1

Ottiene e imposta il valore integer (param1 nel costruttore) da passare alla piattaforma di riconoscimento vocale in modo da generare un evento richiesto dall'istanza corrente di SpeechEventInfo.Gets and set the integer value (param1 in the constructor) to be passed to the Speech platform to generate an event the current instance of SpeechEventInfo is used to request.

Param2 Param2 Param2 Param2

Ottiene e imposta l'istanza di System.IntPtr (param2 nel costruttore) cha fa riferimento all'oggetto da passare alla piattaforma di riconoscimento vocale in modo da generare un evento richiesto dall'istanza corrente di SpeechEventInfo.Gets and set the System.IntPtr instance (param2 in the constructor) referencing the object to be passed to the Speech platform to generate an event the current instance of SpeechEventInfo is used to request.

ParameterType ParameterType ParameterType ParameterType

Restituisce il tipo di dati dell'oggetto a cui fa riferimento IntPtr restituito dal parametro Param2 sull'oggetto SpeechEventInfo corrente.Returns the data type of the object pointed to by the IntPtr returned by the Param2 parameter on the current SpeechEventInfo object.

Metodi

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se un oggetto specificato è un'istanza di SpeechEventInfo ed è uguale all'istanza corrente di SpeechEventInfo.Determines whether a specified object is an instance of SpeechEventInfo and equal to the current instance of SpeechEventInfo.

Equals(SpeechEventInfo) Equals(SpeechEventInfo) Equals(SpeechEventInfo) Equals(SpeechEventInfo)

Determina se un oggetto SpeechEventInfo specificato è uguale all'istanza corrente di SpeechEventInfo.Determines whether a specified SpeechEventInfo object is equal to the current instance of SpeechEventInfo.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Specifica un codice hash per un oggetto a SpeechEventInfo.Provides a hash code for a SpeechEventInfo object.

Operatori

Equality(SpeechEventInfo, SpeechEventInfo) Equality(SpeechEventInfo, SpeechEventInfo) Equality(SpeechEventInfo, SpeechEventInfo) Equality(SpeechEventInfo, SpeechEventInfo)

Determina se due istanze di SpeechEventInfo sono uguali.Determines whether two instances of SpeechEventInfo are equal.

Inequality(SpeechEventInfo, SpeechEventInfo) Inequality(SpeechEventInfo, SpeechEventInfo) Inequality(SpeechEventInfo, SpeechEventInfo) Inequality(SpeechEventInfo, SpeechEventInfo)

Determina se due istanze di SpeechEventInfo non sono uguali.Determines whether two instances of SpeechEventInfo are not equal.

Si applica a