【问题标题】:TTS randomly skips first letters of sentenceTTS 随机跳过句子的第一个字母
【发布时间】:2015-09-15 07:41:39
【问题描述】:

我有一个严重依赖 TTS 的低视力应用程序。但是由于某种原因,当我使用 speak 方法时,TTS 会随机跳过句子的前几个字母,或者以极低的音量说出前几个字母,然后以正常的音量说出其余字母。

知道为什么会发生这种情况吗?

这是我当前的代码:

public class SpeechHelper implements TextToSpeech.OnInitListener {
    private Context context = null;
    private TextToSpeech tts;

    public SpeechHelper(Context context)
    {
        this.context = context;
        try {
            tts = new TextToSpeech(context, this);
        } catch(Exception e) {
            Log.e("Phone Features Exception","Couldn't initiate TTS", e);
        }
    }


    @Override
    public void onInit(int status) {
        if (status == TextToSpeech.SUCCESS) {
            tts.setLanguage(Locale.getDefault());
        }
    }

    public void speak(String s, int mode, String messageID) {

        Log.d("VOLUME", "getStreamVolume " + am.getStreamVolume(AudioManager.STREAM_MUSIC)); // Always 15
        Log.d("VOLUME", "isMusicActive " + (am.isMusicActive() ? "true" : "false")); // Always false
        Log.d("VOLUME", "isVolumeFixed " + (am.isVolumeFixed() ? "true" : "false")); // Always false
        Log.d("VOLUME", "isSpeakerphoneOn: " + (am.isSpeakerphoneOn() ? "true" : "false")); // Always false
        Log.d("VOLUME", "getMode: " + am.getMode()); // Always 0

        HashMap<String, String> params = new HashMap<String, String>();
        params.put(TextToSpeech.Engine.KEY_PARAM_UTTERANCE_ID, messageID);
        tts.speak(s, mode, params);
    }
}

我注意到问题总是在拨打电话后的 5 秒内或解锁手机到应用时发生。

【问题讨论】:

  • 您测试的是哪个引擎?
  • 我注意到这总是在拨打电话后发生。有什么线索吗?哪个引擎是什么意思?
  • @ozbek 我正在使用 com.google.android.tts

标签: android text-to-speech


【解决方案1】:

要么你做错了什么,要么 Android 做错了什么。如果非要我花钱,我会说是你。

从调用开始

tts.speak("the quick brown fox jumps over the lazy dog", tts.QUEUE_FLUSH, null);

看看您是否可以在测试应用中重现该问题(我不能)。如果可以,那么我会很好奇您正在运行什么手机/操作系统。您的问题可能在于截断的字符串,或者其他以编程方式弄乱音量的东西。

【讨论】:

  • 我一直在打印字符串,它们似乎没有任何问题。我注意到这个问题总是在拨打电话后出现,但我还没有解决它。
  • 您使用的是什么手机/操作系统?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-03-05
  • 2012-06-23
  • 2023-03-30
  • 2013-08-13
  • 1970-01-01
  • 2011-07-20
  • 2014-05-13
相关资源
最近更新 更多