【问题标题】:How to give pause or gap between words in TTS in android如何在 android 中的 TTS 中的单词之间暂停或间隔
【发布时间】:2022-03-24 00:23:44
【问题描述】:

我已经在mytts.speak("hi hello hi",parameter,parameter...);发了一条短信

但是单词是连续说的,没有任何间隙或停顿,我想在单词之间提供一些时间间隔以更清楚。

我怎样才能做到这一点?

【问题讨论】:

  • 1 秒就可以了。在模拟器中通过给出'/' 我 cud 实现了这一点,但是当我在 sumsung 设备上运行它时,行为发生了变化。
  • 同意不同的设备,不同的 TTS 行为。甚至有时语音质量也不同。
  • 我想在 sumsung 设备上定位,我们如何在所有设备上推广 TTS
  • 如何从hi hello hi句子中拆分单词并在tts上播放?
  • 您能否提供一些示例代码来说明您通过拆分单词的含义

标签: android text-to-speech


【解决方案1】:

如果我正确理解了您的问题,this 线程将给出答案(作者:rushi)。

通过拆分字符串并通过 for 循环在 sn-ps 上循环,只需在 TTS 队列中添加延迟:

mytts.speak(snippet, QUEUE_ADD, null);
mytts.playSilentUtterance(2000, QUEUE_ADD, null);

【讨论】:

    【解决方案2】:

    只需添加一个逗号。示例:如果您想让下面的网址说得慢一些,请输入 a, t, t, r, s.gov

    希望对您有所帮助。

    【讨论】:

    • 我不明白为什么这被否决了。它可能不适合某些解决方案,但它确实有效
    【解决方案3】:

    这就是我如何在每个单词之间放置更长的停顿:

    //初始化并声明TextToSpeech为tts

    //"line" 是你要说的字符串

    char ch = '';
    String temp = "";
    
    for(int counter = 0; counter < line.length; counter++)
    {
        ch = charAt(counter);
        temp = temp + ch;
    
        if(ch == ' ' || counter == (line.length() - 1))
        {
            tts.speak(temp, TextToSpeech.QUE_ADD, null, null);
            tts.playSilentUtterance(1000, TextToSpeech.QUEUE_ADD,null);
            temp = "";
        }
    
    }
    

    【讨论】:

      【解决方案4】:

      尝试在您的文本中添加“/ / / / /”。它应该给你一些喘息的空间。如果您想要更长的暂停,请尝试添加更多。

      【讨论】:

        【解决方案5】:

        您可以将句子拆分成单词,然后在新线程中的 for 循环中说出它们。拆分短语会给您带来一点延迟,但如果您想要更长的短语,您可以在线程上工作并让他们等待。 应该是这样的:

        final Handler h = new Handler();
        String[] words = text.split(" ");
        for (final CharSequence word : words) {
            Runnable t = new Thread() {
                @Override
                public void run() {
                    m_TTS.speak(word, TextToSpeech.QUEUE_ADD, null, "TTS_ID");
        
                }
            };
            h.postDelayed(t, 1000);
        }
        

        【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-10-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-14
        • 2016-07-09
        相关资源
        最近更新 更多