IBM Cloud Docs
理解音标符号

理解音标符号

IBM Watson® Text to Speech 服务的所有语言和声音都支持标准国际音标 (IPA) 和 IBM 符号音标表示法 (SPR) 表示法来表示词的声音。 两种注音法都提供了表示单词发音、单词构成音节、音节划分以及重音的音标。 受支持语言的音标符号 提供了指向用于记录每种语言的音标符号的主题的链接。

定义词的发音

要在输入文本或自定义模型中定义单词的语音发音,可以使用语音合成标记语言(SSML)中的 <phoneme> 元素或等效的方法参数。 <phoneme> 元素有两个属性:

  • alphabet 属性指定发音的表示法。 使用 ibm 值可指示发音是以 SPR 定义的。 使用 ipa 值可指示发音是以 IPA 定义的。
  • ph 属性定义发音。 此属性包含给定语言允许的音标符号的序列。 这些符号定义了 <phoneme> 元素中包含的单词的读音。

定义发音时,请遵循以下规则:

  • 仅使用记录的 SPR 或 IPA 音标符号。 服务会将包含语言中不允许使用的音标符号的任何定义视为无效。 不符合必需规范的 SPR 或 IPA 条目是无效的。
  • 如果针对一个 SPR 音标符号列出了多个 IPA 音标符号(或音标符号组合),那么所有这些 IPA 音标符号都等效于这个 SPR 音标符号。 服务会将所有这些 IPA 音标符号都视为相同,不会表现出 IPA 想要描述的细微差异或区域性差异。

有关更多信息,请参阅

使用 IBM SPR

IBM SPR 是标准 IPA 的替代表示法。 以下有效SPR标记的示例定义了美式英语中 throughshocking 这两个词:

<phoneme alphabet="ibm" ph=".1Tru">through</phoneme>
<phoneme alphabet="ibm" ph=".1Sa.0kIG">shocking</phoneme>

在定义中,这些字母表示美国英语语音的特定读音。 . 表示新音节的开始,数字 10 表示音节重音。 有关更多信息,请参阅指定音节

语音发音符号

每种语言都使用自己的 SPR 音标符号清单来表示该语言的语音发音。 以下规则适用于指定 SPR 音标符号:

  • 字母是区分大小写的,例如 eE 表示两个不同的发音。
  • 在符号表中指示时,必须用单引号将两个和三个字符的符号括起来。 单引号指示多个字符实际上是单个符号。 例如,德语单词heim 中的符号 'aj' 被指定为 "h'aj'm"
  • 某些三字符符号仅包含两个字符的单引号。 单引号指示这两个字符是单个符号。 所以 SPR 由两个符号组成。 例如,荷兰语单词 dependances 中的符号 'a:'n 包含两个符号 'a:'n,并指定为 d'e:'.pEn.1d'a:'n.s@s

此外,以 SPR 格式定义词的发音时,请考虑以下因素:

  • 每种语言的发音都具有该语言的特定分布模式。 例如,在英语的所有方言中,Gsing* (*) 中的 ".1sIG" 音不会出现在单词开头。 其他分布特别窄的美国英语声音是声门 (?),襟翼 (F) 和音节鼻 (N)。如果在通常不会出现的上下文中输入声音符号,那么生成的语音可能听起来不自然。
  • 服务会将一组复杂的语言规则应用于其输入,以反映读音在自然语言的特定上下文中的变化过程。 例如,在美式英语中,单词 write (".1r1Yt") 的声音 twriter (".1rY.0FR") 中发音为襟翼 (F)。SPR 输入会像普通输入文本一样经历这些修改。 在此示例中,输入 ".1rY.0tR"".1rY.0FR" 不会影响生成的语音。

使用 IPA

可以使用音标符号或 Unicode 值来定义 IPA 发音。 IPA 是一种行业标准表示法。 下面是单词 tomato 以音标符号和 Unicode 表示的有效 IPA 表示法的示例:

<phoneme alphabet="ipa" ph="təˈmeɪ.ɾoʊ">tomato</phoneme>
<phoneme alphabet="ipa" ph="t&#x0259;&#x02C8;me&#x026A;.&#x027E;o&#x028A;">tomato</phoneme>

指定音节

在 SPR 和 IPA 中都可以指定音节边界和重音。

音节边界

您可以使用 . (句点,IPA Unicode 002E) 来标记 SPR 或 IPA 中每个音节的开头。 但是,为了保留语言的有效音标,在某些情况下(例如,如果音节边界的放置位置对于某种语言是不合法或不自然的位置),服务可以选择不采用句点。 一般来说,如果您能指出某个音节边界或单词发音的其他方面,该服务会满足您的要求。

音节重音

表 1 标识可用于指示发音的音节压力的符号。IBM 建议您指示 SPR 或 IPA 中发音的主要压力。 而在这两种格式中标明音节重音不是必需的;如果未标明,服务会确定音节重音出现的位置。

音节重音
重音 SPR 音标符号 IPA 音标符号 IPA Unicode
主重音 1 ˈ 02C8
次重音 2 ˌ 02CC
无重音 0 无音标符号 无值

必须将音节重音标记放在音节边界内,但必须始终位于音节元音的左侧。 可以将标记放置在重读元音左侧的任何位置。 例如,以下SPR示例中的每个示例都将主要重音(1 )放在单词结构中的正确元音上:

<phoneme alphabet="ibm" ph="kXn1strHkSXn">construction</phoneme>
<phoneme alphabet="ibm" ph="kXns1trHkSXn">construction</phoneme>
<phoneme alphabet="ibm" ph="kXnst1rHkSXn">construction</phoneme>
<phoneme alphabet="ibm" ph="kXnstr1HkSXn">construction</phoneme>

特定于语言的音节重音使用规则

表 2 列出了适用于指定音节重音的特定于语言的注意事项。 如果该表不符合某种语言的规则,您可以使用先前部分中描述的音节重音符号。

特定于语言的音节重音使用规则
语言 表示法 特定于语言的规则
法语和
加拿大法语
SPR 支持所有音节重音符号。 但音节重音必须紧挨在音节的元音之前。 法语的音节重音比其他语言严格得多。 如果将重音符号放在无效位置,那么会发生错误。
法语和
加拿大法语
IPA 所有音节重音符号都会被忽略。
意大利语 SPR 和 IPA 只能指定 1(主重音)。 如果指定次重音或未指定重音,那么会发生错误。
日语 SPR 和 IPA 只能指定 1(主重音)和 0(无重音)。 如果指定次重音,那么会发生错误。
西班牙语 SPR 和 IPA 只能指定 1(主重音)。 如果指定次重音或未指定重音,那么会发生错误。

受支持语言的音标符号

表 3 列出了服务支持的语言,并提供了指向描述其 SPR 符号,IPA 符号和 IPA Unicode 值的主题的链接。 这些话题以语言中的单词举例说明了每个符号。 由于方言差异,示例可能并不总是与您的发音相匹配。

可用性列显示每个语音是否可用于 IBM CloudIBM Cloud Pak for Data或全部(所有版本)。IBM Software Hub 或全部 (所有版本 )。 如需了解所支持语音的更多信息,请参阅 语言和语音

支持语言的音标
语言 可用性
荷兰语(荷兰语)符号 所有版本
英语(澳大利亚)符号 所有版本
英语(英国)音标符号 所有版本
英语(美国)音标符号 所有版本
法语(加拿大)符号 所有版本
法语(法国)符号 所有版本
德语音标符号 所有版本
意大利语音标符号 所有版本
日语音标符号 所有版本
韩语音标符号 所有版本
葡萄牙语(巴西)符号 所有版本
西班牙语音标符号 所有版本