在说文本时淡入淡出音乐

ggo*_*eze 2 android text-to-speech background-music

我有一个使用TTS(文本到语音)API的Android应用程序.一切都可以正常使用,但现在我想淡入/淡出甚至停止音乐(如果用户正在播放的音乐与预置的音乐播放器),当应用程序讲文本.现在,我认为音乐和TTS消息都在同一个流(MUSIC)上播放,并且很难理解语音消息.

我试图在不同的流上播放文本,例如AudioManager.STREAM_NOTIFICATIONS.它确实会停止音乐,但在说出文字时不会回来,所以我没有达到目标.还没有找到任何东西,所以我希望有人可以在这里提供帮助.谢谢!

ggo*_*eze 5

我终于得到了一些有用的东西.虽然不完美.一个非常脏的技巧.以防它可以帮助某人:

这已在API 8上使用AudioManager的requestAudioFocus和abandomAudioFocus方法修复.

但对于以前的版本,你可以试试这个.通过不同的流通道播放TTS,比方说STREAM_NOTIFICATIONS.然后你只需要将音频焦点返回到STREAM_MUSIC.你怎么能实现这个目标?将静音字符串("")发送到TTS但这次通过STREAM_MUSIC.效果将是:音乐停止,您的TTS消息被说出,最后您的音乐在语音警报后返回.不好或不值得骄傲,但......如果有人知道不同的方式,我会很感激