iphone – 如何在FliteController类中使用withVoice:argument来减慢声音?

iphone – 如何在FliteController类中使用withVoice:argument来减慢声音?,第1张

概述我正在使用OpenEars FliteController类将文本转换为语音. 我使用的方法: [self.fliteController说:@“我想让我的应用大声说出一句话.” withVoice:@ “cmu_us_awb8k”]; 可以在withVoice之后输入参数的选项:如下: cmu_us_awb8kcmu_us_rms8kcmu_us_slt8kcmu_time_awbcmu 我正在使用OpenEars FliteController类将文本转换为语音.

我使用的方法:

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

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

cmu_us_awb8kcmu_us_rms8kcmu_us_slt8kcmu_time_awbcmu_us_awbcmu_us_kalcmu_us_kal16cmu_us_rmscmu_us_slt

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

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

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

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

duration_stretch // Duration of speechtarget_mean // Average pitch of speechtarget_stddev // Variance

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

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

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

self.fliteController.duration_stretch = 1.5; // Slow down the speed a bitself.fliteController.target_mean = 1.2; // Raise the pitchself.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 speedself.fliteController.target_mean = 1.0; // reset the pitchself.fliteController.target_stddev = 1.0; // reset the variance
总结

以上是内存溢出为你收集整理的iphone – 如何在FliteController类中使用withVoice:argument来减慢声音?全部内容,希望文章能够帮你解决iphone – 如何在FliteController类中使用withVoice:argument来减慢声音?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1021412.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存