加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

iphone – 如何在FliteController类中使用withVoice:argument来

发布时间:2020-12-14 17:53:14 所属栏目:百科 来源:网络整理
导读:我正在使用OpenEars FliteController类将文本转换为语音. 我使用的方法: [self.fliteController说:@“我想让我的应用大声说出一句话.” withVoice:@ “cmu_us_awb8k”]; 可以在withVoice之后输入参数的选项:如下: cmu_us_awb8kcmu_us_rms8kcmu_us_slt8k
我正在使用OpenEars FliteController类将文本转换为语音.

我使用的方法:

[self.fliteController说:@“我想让我的应用大声说出一句话.” withVoice:@ “cmu_us_awb8k”];

可以在withVoice之后输入参数的选项:如下:

cmu_us_awb8k
cmu_us_rms8k
cmu_us_slt8k
cmu_time_awb
cmu_us_awb
cmu_us_kal
cmu_us_kal16
cmu_us_rms
cmu_us_slt

我用withVoice尝试了所有这些参数:

但是,我的客户对声音不满意.他告诉我这些都很快.所以,我需要一种方法来使用withVoice:参数减慢语音速度.我该怎么做?还有其他语音可用吗?

解决方法

速度/音调/方差偏移现在是OpenEars的一个特征,版本为.911.您可以按如下方式使用它:

使用FliteController的以下属性更改语音的速度,音高和可变性:

duration_stretch // Duration of speech
target_mean // Average pitch of speech
target_stddev // Variance

例如,在发送此消息之前:

[self.fliteController说:@“我想让我的应用大声说出一句话.” withVoice:@ “cmu_us_awb8k”];

您可以对self.fliteController进行以下设置:

self.fliteController.duration_stretch = 1.5; // Slow down the speed a bit
self.fliteController.target_mean = 1.2; // Raise the pitch
self.fliteController.target_stddev = 1.5; // Increase the variance

1.0是默认值,0.0是最小值,2.0是可能的最大有用值(虽然你可以高于2.0,但它可能不会是一个有用的值).

duration_stretch为.5将是1.0的两倍,duration_stretch为2.0将是1.0的速度的一半. target_mean或target_stddev为2.0将使平均音高频率加倍或使方差加倍,而0.5将使它们减半.

您不必设置或覆盖这些设置 – 如果您不使用它们,它们将被设置为语音的默认值.如果要在覆盖它们之后将它们返回到默认值,只需将它们全部设置为1.0:

self.fliteController.duration_stretch = 1.0; // Reset the speed
self.fliteController.target_mean = 1.0; // Reset the pitch
self.fliteController.target_stddev = 1.0; // Reset the variance

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读