SAPI 费率公式评估
SAPI rate formula evaluation
我创建了一个电脑语音,我想正确对待rate命令。
Microsoft 白皮书对速率 (https://msdn.microsoft.com/en-us/library/ms717037(v=vs.85).aspx) 是这样说的:
评分:
Rate 标签控制语音的速率。标签可以是空的,在这种情况下它适用于所有后续文本,或者它可以有内容,在这种情况下它只适用于该内容。 Rate 标签有两个属性,Speed 和 AbsSpeed,其中之一必须存在。这些属性的值应该是负十到十之间的整数。超出此范围的值可能会被引擎截断(但不会被 SAPI 截断)。 AbsSpeed 属性控制语音的绝对速率,因此值 10 始终对应于值 10;值五始终对应于值五。
这段文字应以五速朗读。
这段文字应该以负五的速率朗读。
以下所有文字均应以十速率朗读。
我没有找到任何指示实际应转换成什么汇率的迹象。不过,我还是想用微软的电脑语音来确认一下。
我用例句做了一些测试。
Microsoft 自己的计算机语音生成了以下带有例句的输出 ("This is a test."):
评分 8:
1.15 秒
评分 0:
2,65 秒
评分-8:
6,35 秒
但是,我没有看到这背后的真正公式。
我的尝试
float f1 = (rate / 10.0f);
float fSpeed = 1+f1;
似乎与MS的输出长度完全不对应
我将这个值提供给著名的 libSonic 库中的 sonicChangeFloatSpeed。
在速率 -8 下,我的语音输出约为 12 秒,而 Microsoft 的语音输出约为 6 秒。
有人可以估算出 MS 语音速率背后的公式吗?
感谢您的帮助。
使用 IVONA 2 Amy(英国英语)SAPI5 语音朗读短语 One Two Three Four Five.
我得到持续时间与减速(负)速率的严格线性关系。
但是对于超速(正)率,关系是不一样的。它可以是线性的,具有不同的斜率。
Rate Duration (s)
-10 3.0 150%
-9 2.9 145%
-8 2.8 140%
-7 2.7 135%
-6 2.6 130%
-5 2.5 125%
-4 2.4 120%
-3 2.3 115%
-2 2.2 110%
-1 2.1 105%
0 2.0 100%
+1 1.8 90%
+2 1.7 85%
+3 1.6 80%
+4 1.4 70%
+5 1.3 65%
+6 1.1 55%
+7 1.0 50%
+8 0.8 40%
+9 0.7 35%
+10 0.5 25%
由于只有 21 个离散级别,您可以避免使用公式,只需使用我在上面第 3 列中提供的百分比 查找 table。这是图表供您检查。
我创建了一个电脑语音,我想正确对待rate命令。
Microsoft 白皮书对速率 (https://msdn.microsoft.com/en-us/library/ms717037(v=vs.85).aspx) 是这样说的:
评分:
Rate 标签控制语音的速率。标签可以是空的,在这种情况下它适用于所有后续文本,或者它可以有内容,在这种情况下它只适用于该内容。 Rate 标签有两个属性,Speed 和 AbsSpeed,其中之一必须存在。这些属性的值应该是负十到十之间的整数。超出此范围的值可能会被引擎截断(但不会被 SAPI 截断)。 AbsSpeed 属性控制语音的绝对速率,因此值 10 始终对应于值 10;值五始终对应于值五。
这段文字应以五速朗读。 这段文字应该以负五的速率朗读。 以下所有文字均应以十速率朗读。
我没有找到任何指示实际应转换成什么汇率的迹象。不过,我还是想用微软的电脑语音来确认一下。
我用例句做了一些测试。
Microsoft 自己的计算机语音生成了以下带有例句的输出 ("This is a test."):
评分 8: 1.15 秒
评分 0: 2,65 秒
评分-8: 6,35 秒
但是,我没有看到这背后的真正公式。 我的尝试
float f1 = (rate / 10.0f);
float fSpeed = 1+f1;
似乎与MS的输出长度完全不对应
我将这个值提供给著名的 libSonic 库中的 sonicChangeFloatSpeed。
在速率 -8 下,我的语音输出约为 12 秒,而 Microsoft 的语音输出约为 6 秒。
有人可以估算出 MS 语音速率背后的公式吗?
感谢您的帮助。
使用 IVONA 2 Amy(英国英语)SAPI5 语音朗读短语 One Two Three Four Five.
我得到持续时间与减速(负)速率的严格线性关系。
但是对于超速(正)率,关系是不一样的。它可以是线性的,具有不同的斜率。
Rate Duration (s)
-10 3.0 150%
-9 2.9 145%
-8 2.8 140%
-7 2.7 135%
-6 2.6 130%
-5 2.5 125%
-4 2.4 120%
-3 2.3 115%
-2 2.2 110%
-1 2.1 105%
0 2.0 100%
+1 1.8 90%
+2 1.7 85%
+3 1.6 80%
+4 1.4 70%
+5 1.3 65%
+6 1.1 55%
+7 1.0 50%
+8 0.8 40%
+9 0.7 35%
+10 0.5 25%
由于只有 21 个离散级别,您可以避免使用公式,只需使用我在上面第 3 列中提供的百分比 查找 table。这是图表供您检查。