user2245759
user2245759

Reputation: 467

Microsoft Speech Synthesizer PhonemeReached Event generates unrecognized characters for phonemes

I am using the Microsoft speech SDK and attempting to get the list of phonemes from a string of text as it is speaking. When I inspect the PhonemeReachedEventArgs.Phoneme it displays something that makes me think it its using a different character set.
For instance, the text:

"this is a sample sentence with Microsoft Speech"

will create a string of phonemes that looks like:

↑)'%∟↕'♂ %☼▼'§!)☼!'.←¶ ►▲&☼'

Any suggestions on what I need to do to get a readable string of phonemes?

Upvotes: 1

Views: 240

Answers (1)

lod3n
lod3n

Reputation: 2903

You have to cast the result as an int:

    private static void Synth_PhonemeReached(object sender, PhonemeReachedEventArgs e)
    {
        int sym = (int)e.Phoneme[0];
    }

Why it's passed as a string in the first place is beyond me, and I could not find any mention of this anywhere on the web.

Once you have the symbol, you can look it up in the American English Phoneme Table that Hans Passant linked to above.

Upvotes: 0

Related Questions