当前位置: 首页 > article >正文

文本转语音:微软语音合成标记语言 (SSML) 文本结构和事件

​ 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 元素还包含文本和以下元素:audiobreakpsphonemeprosodysay-as 和 sub
  • bookmark:此元素不能包含文本或任何其他元素。
  • break:此元素不能包含文本或任何其他元素。
  • emphasis:此元素可包含文本和以下元素:audiobreakemphasislangphonemeprosodysay-as 和 sub
  • lang:此元素可包含除 mstts:backgroundaudiovoice 和 speak 以外的所有其他元素。
  • lexicon:此元素不能包含文本或任何其他元素。
  • math:此元素只能包含文本和 MathML 元素。
  • mstts:audioduration:此元素不能包含文本或任何其他元素。
  • mstts:backgroundaudio:此元素不能包含文本或任何其他元素。
  • mstts:express-as:此元素可包含文本和以下元素:audiobreakemphasislangphonemeprosodysay-as 和 sub
  • mstts:silence:此元素不能包含文本或任何其他元素。
  • mstts:viseme:此元素不能包含文本或任何其他元素。
  • p:此元素可包含文本和以下元素:audiobreakphonemeprosodysay-assubmstts:express-as 和 s
  • phoneme:此元素只能包含文本,不能包含任何其他元素。
  • prosody:此元素可包含文本和以下元素:audiobreakpphonemeprosodysay-assub 和 s
  • s:此元素可包含文本和以下元素:audiobreakphonemeprosodysay-asmstts:express-as 和 sub
  • say-as:此元素只能包含文本,不能包含任何其他元素。
  • sub:此元素只能包含文本,不能包含任何其他元素。
  • speak:SSML 文档的根元素。 此元素可包含以下元素:mstts:backgroundaudio 和 voice
  • voice:此元素可包含除 mstts:backgroundaudio 和 speak 以外的所有其他元素。

语音服务可自动适当处理停顿(例如,在句号后面暂停片刻),或者在以问号结尾的句子中使用正确的音调。

添加停顿

使用 break 元素替代单词之间的默认中断或暂停行为。 可以使用它来添加语音服务以其他方式自动插入的暂停。下表描述了 break 元素的属性用法。

 

属性说明必需还是可选
strength使用以下值之一指定暂停的相对持续时间:
  • x-weak
  • weak
  • medium(默认值)
  • strong
  • x-strong
可选
time暂停的绝对持续时间,以秒为单位(例如 2s)或以毫秒为单位(例如 500ms)。 有效值的范围为 0 到 5000 毫秒。 如果设置的值大于支持的最大值,则服务将使用 5000ms。 如果设置了 time 属性,则会忽略 strength 属性。可选

下面是有关该 strength 属性的更多详细信息。

Strength相对持续时间
x-weak250 毫秒
weak500 毫秒
中型750 毫秒
1,000 毫秒
x-strong1,250 毫秒

http://www.kler.cn/a/145824.html

相关文章:

  • JS宏进阶:正则表达式的使用
  • 【Vim Masterclass 笔记25】S10L45:Vim 多窗口的常用操作方法及相关注意事项
  • 玉米植物结构受乙烯生物合成基因 ZmACS7 的调控
  • 2023年江西省职业院校技能大赛网络系统管理赛项(Linux部分样题)
  • 云原生周刊:K8s 生产环境架构设计及成本分析
  • 深入探索Python人脸识别技术:从原理到实践
  • web前端之vue和echarts的堆叠柱状图顶部显示总数、鼠标悬浮工具提示、设置图例的显示与隐藏、label、legend、tooltip
  • 【Unity入门】Input.GetAxis(““)控制物体移动、旋转
  • 在vue或者react或angular中,模板表达式中的箭头函数是无效的吗?为什么无效?
  • 安卓吸顶效果
  • C#异常处理-throw语句
  • C语言——深入理解指针(2)
  • 二叉树经典面试题—折纸
  • WPF绘图技术介绍
  • Python基于jieba+wordcloud实现文本分词、词频统计、条形图绘制及不同主题的词云图绘制
  • 记一次oracle错误处理
  • 软件工程简明教程
  • 【Amazon】通过直接连接的方式导入 KubeSphere集群至KubeSphere主容器平台
  • 在我国干独立游戏开发有多难?
  • 【WSA】无法打开 适用于 Android™ 的 Windows 子系统,因为它处于脱机状态。可能缺少存储设备,或者存储设备已断开连接。
  • 【Amazon】在Amazon EKS集群中安装部署最小化KubeSphere容器平台
  • 考过了PMP,面试的时候应该怎么办?
  • 精进Beautiful Soup 小技巧(二)---处理多种页面结构
  • es6字符串模板之标签化模板
  • [PyTorch][chapter 66][强化学习-值函数近似]
  • NextJS开发:Prisma数据库事务处理