SpeechSynthesizer.VisemeReached Event

Definition

Raised when a viseme is reached.

C#
public event EventHandler<System.Speech.Synthesis.VisemeReachedEventArgs> VisemeReached;

Event Type

Remarks

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

Product Versions
.NET 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)