Android TexttoSpeech覆盖其他声音

时间:2014-11-25 06:08:10

标签: android audio text-to-speech

我正在使用Android TTS来发短信。讲话是在服务上完成的。我正在使用TTS..speak(toSpeak, TextToSpeech.QUEUE_FLUSH, null);我的speak()函数在间隔期间被调用多次。因为它是一种服务,所以在调用speak()时可能正在播放其他声音。

我想知道如何沉默'在我的文字发言时,那些其他的声音。

1 个答案:

答案 0 :(得分:1)

您需要搜索的术语是“音频躲闪”。它不是一个明显的,所以你可以原谅没有找到任何其他搜索条件的解决方案!

查看建议的方法来处理此in the tutorial here

我假设您只想降低任何其他媒体音量,以便可以听到语音=躲避。

AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK

或者,您可以请求其他应用程序静音任何媒体,直到您调用onUtteranceCompleted并释放音频焦点。但要注意,如果其他应用程序没有正确处理丢失和获得焦点,他们的媒体将无法重启,您的用户可能会感到烦恼......