我正在使用TextToSpeech类在 android 中工作,并且有一个具有特定长度的字符串。我想计算这个生成的文本到语音音频的估计时间(我知道我可以得到音频,然后得到这个生成的音频的时间长度,但我想探索其他替代方案)。
我正在尝试获取speechRate(但似乎不可能),并且使用字符串的长度创建一些公式来估计时间。
有什么建议吗??
提前致谢。
我正在使用TextToSpeech类在 android 中工作,并且有一个具有特定长度的字符串。我想计算这个生成的文本到语音音频的估计时间(我知道我可以得到音频,然后得到这个生成的音频的时间长度,但我想探索其他替代方案)。
我正在尝试获取speechRate(但似乎不可能),并且使用字符串的长度创建一些公式来估计时间。
有什么建议吗??
提前致谢。
我使用 int pauseInSeconds=1+string.length()/7 进行简短的英语口语。
当然非常粗糙。
你可以这样做:
private void speakWord(String word)
{
//Get time
textToSpeech.speak(...);
checkSpeaking(true);
}
private void checkSpeaking(boolean isSpeaking)
{
Print.e("Speaking is: " + isSpeaking);
if (isSpeaking)
{
new Handler().postDelayed(()->
{
if (textToSpeech.isSpeaking()) {
checkSpeaking(true);
}
else {
checkSpeaking(false);
}
},300);
}
else
{
//Get time
}
}