Forum Discussion

DonFinch-912708's avatar
DonFinch-912708
Community Member
6 months ago

SSML Does not work for me

Hello

I have tried repeatedly to use SSML in my text to speech narration but it has never worked. I can see the markup tags with proper highlighting, and am trying to keep as simple as possible, use tags that are common to Standard and Neural voices, try different voices. Every time I try to generate the audio, I get a popup with the message:

Storyline 360 can’t convert this text to speech. Verify the SSML tags are correct and supported for the selected voice.

<speak>
I want to pronounce the letters in <sub>CTR</sub>, not have it say center.</speak>

Might there be some sort of hidden URL on the back end that must be whitelisted by our IT department to allow SSML to work? Perhaps some dependency on Amazon web services?

  • JHauglie's avatar
    JHauglie
    Community Member

    While not offering a full explanation of the SSML functions, you can get the effect you want ("C-T-R") by simply breaking up the letters in the way I just did:

    C-T-R (include the hyphens)

    That works for us when we are trying to spell an abbreviation/acronym/initialism.

  • Of course. Been doing that for years.

    The promise of SSML was the ability to do these and many other marvelous things with markup.

    The only tag that seems to work is <break> as is found in an example provided by Articulate staff. This one uses English (Australia) Standard voices

    And I have to use English (US) voices which are only Neural. Hence only the “Neural and Standard” voice tags are viable.

  • Well, I have discovered the issue with the <sub> tag and likely a few others that I have tried and failed with. The "Help" that Articulate provides on their SSML support page is inadequate. The syntax is not really spelled out. When I see the syntax on the Amazon Polly site, i discover the problem.

    Supported SSML tags - Amazon Polly

    <sub>

    This tag is supported by generative, long-form, neural, and standard TTS formats.

    Use the <sub> tag with the alias attribute to substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation.

    This uses the syntax:

    <sub alias="new word">abbreviation</sub>


    In the following example, the name "Mercury" is substituted for the element's chemical symbol to make the audio content clearer.

    <speak>My favorite chemical element is <sub alias="Mercury">Hg</sub>, because it looks so shiny.
    </speak>

    So, to use the sub tag to spell out CTR instead of having it shortcut to "center" I would need to add something like:

    <sub alias="see tee are">CTR</sub>

    Obviously, just writing C-T-R is much simpler, as Joe mentioned earlier.  At least now I know to check the Polly site for more complete syntax.

  • continuing with the Polly site for help: Supported SSML tags - Amazon Polly

    I was finally able to get the <w> tag to work for noun versus verb type pronunciation.

    <speak>I would like to <w role="amazon:VB"> present</w> you with this <w role="amazon:NN">present</w>.</speak>