SSML 的语音服务实现基于万维网联合会的语音合成标记语言版本 1.0。 语音服务支持的元素可能与 W3C 标准不同。
每个 SSML 文档是使用 SSML 元素(或标记)创建的。 这些元素用于调整语音、风格、音节、韵律、音量等。
下面是 SSML 文档的基本结构和语法的子集:
<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="https://www.w3.org/2001/mstts" xml:lang="string">
<mstts:backgroundaudio src="string" volume="string" fadein="string" fadeout="string"/>
<voice name="string" effect="string">
<audio src="string"></audio>
<bookmark mark="string"/>
<break strength="string" time="string" />
<emphasis level="value"></emphasis>
<lang xml:lang="string"></lang>
<lexicon uri="string"/>
<math xmlns="http://www.w3.org/1998/Math/MathML"></math>
<mstts:audioduration value="string"/>
<mstts:express-as style="string" styledegree="value" role="string"></mstts:express-as>
<mstts:silence type="string" value="string"/>
<mstts:viseme type="string"/>
<p></p>
<phoneme alphabet="string" ph="string"></phoneme>
<prosody pitch="value" contour="value" range="value" rate="value" volume="value"></prosody>
<s></s>
<say-as interpret-as="string" format="string" detail="string"></say-as>
<sub alias="string"></sub>
</voice>
</speak>
以下列表描述了每个元素中允许的一些内容示例:
-
audio
:如果音频文件不可用或不可播放,可在audio
元素的正文中包含可讲述的纯文本或 SSML 标记。audio
元素还包含文本和以下元素:audio
、break
、p
、s
、phoneme
、prosody
、say-as
和sub
。 -
bookmark
:此元素不能包含文本或任何其他元素。 -
break
:此元素不能包含文本或任何其他元素。 -
emphasis
:此元素可包含文本和以下元素:audio
、break
、emphasis
、lang
、phoneme
、prosody
、say-as
和sub
。 -
lang
:此元素可包含除mstts:backgroundaudio
、voice
和speak
以外的所有其他元素。 -
lexicon
:此元素不能包含文本或任何其他元素。 -
math
:此元素只能包含文本和 MathML 元素。 -
mstts:audioduration
:此元素不能包含文本或任何其他元素。 -
mstts:backgroundaudio
:此元素不能包含文本或任何其他元素。 -
mstts:express-as
:此元素可包含文本和以下元素:audio
、break
、emphasis
、lang
、phoneme
、prosody
、say-as
和sub
。 -
mstts:silence
:此元素不能包含文本或任何其他元素。 -
mstts:viseme
:此元素不能包含文本或任何其他元素。 -
p
:此元素可包含文本和以下元素:audio
、break
、phoneme
、prosody
、say-as
、sub
、mstts:express-as
和s
。 -
phoneme
:此元素只能包含文本,不能包含任何其他元素。 -
prosody
:此元素可包含文本和以下元素:audio
、break
、p
、phoneme
、prosody
、say-as
、sub
和s
。 -
s
:此元素可包含文本和以下元素:audio
、break
、phoneme
、prosody
、say-as
、mstts:express-as
和sub
。 -
say-as
:此元素只能包含文本,不能包含任何其他元素。 -
sub
:此元素只能包含文本,不能包含任何其他元素。 -
speak
:SSML 文档的根元素。 此元素可包含以下元素:mstts:backgroundaudio
和voice
。 -
voice
:此元素可包含除mstts:backgroundaudio
和speak
以外的所有其他元素。
语音服务可自动适当处理停顿(例如,在句号后面暂停片刻),或者在以问号结尾的句子中使用正确的音调。
添加停顿
使用 break
元素替代单词之间的默认中断或暂停行为。 可以使用它来添加语音服务以其他方式自动插入的暂停。下表描述了 break
元素的属性用法。
文章来源:https://www.toymoban.com/news/detail-768681.html
属性 | 说明 | 必需还是可选 |
---|---|---|
strength |
使用以下值之一指定暂停的相对持续时间:
|
可选 |
time |
暂停的绝对持续时间,以秒为单位(例如 2s )或以毫秒为单位(例如 500ms )。 有效值的范围为 0 到 5000 毫秒。 如果设置的值大于支持的最大值,则服务将使用 5000ms 。 如果设置了 time 属性,则会忽略 strength 属性。 |
可选 |
下面是有关该 strength
属性的更多详细信息。文章来源地址https://www.toymoban.com/news/detail-768681.html
Strength | 相对持续时间 |
---|---|
x-weak | 250 毫秒 |
weak | 500 毫秒 |
中型 | 750 毫秒 |
强 | 1,000 毫秒 |
x-strong | 1,250 毫秒 |
到了这里,关于文本转语音:微软语音合成标记语言 (SSML) 文本结构和事件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!