SpeechSynthesizer.VisemeReached Event


Raised when a viseme is reached.

 event EventHandler<System::Speech::Synthesis::VisemeReachedEventArgs ^> ^ VisemeReached;
public event EventHandler<System.Speech.Synthesis.VisemeReachedEventArgs> VisemeReached;
member this.VisemeReached : EventHandler<System.Speech.Synthesis.VisemeReachedEventArgs> 
Public Custom Event VisemeReached As EventHandler(Of VisemeReachedEventArgs) 

Event Type



A viseme is the basic position of the mouth and face when pronouncing a phoneme. Visemes are visual representations of phonemes.

System.Speech supports 21 visemes for US English, each of which corresponds to one or more phonemes. VisemeReached events are raised when a new phoneme reached has a different corresponding viseme than the previous phoneme reached. Since some visemes represent more than one phoneme, a VisemeReached event is not generated if the next phoneme reached corresponds to the same viseme as the previous phoneme. For example, for the spoken words "this zone", a PhonemeReached event is raised for the "s" in "this" and the "z" in "zone". However, a VisemeReached event is not raised for the "z" in "zone" because it corresponds to the same viseme as the "s" in "this".

The following is a list of the 21 SAPI phonemes and phoneme groups that correspond to a viseme in US English.

Viseme Phoneme(s)
0 silence
1 ae, ax, ah
2 aa
3 ao
4 ey, eh, uh
5 er
6 y, iy, ih, ix
7 w, uw
8 ow
9 aw
10 oy
11 ay
12 h
13 r
14 l
15 s, z
16 sh, ch, jh, zh
17 th, dh
18 f, v
19 d, t, n
20 k, g, ng
21 p, b, m

For information about data associated with the VisemeReached event, see VisemeReachedEventArgs.

Applies to