android–TTS输出总是转到A2DP

android–TTS输出总是转到A2DP,第1张

概述我的Android教程声明我可以明确告诉TTS引擎使用哪个流:对于音乐播放:params.put(TextToSpeech.Engine.KEY_PARAM_STREAM, String.valueOf(AudioManager.STREAM_MUSIC)); 并拨打电话:params.put(TextToSpeech.Engine.KEY_PARAM_ST

我的Android教程声明我可以明确告诉TTS引擎使用哪个流:

对于音乐播放:

params.put(TextToSpeech.Engine.KEY_ParaM_STREAM,String.valueOf(AudioManager.STREAM_MUSIC));

并拨打电话:

params.put(TextToSpeech.Engine.KEY_ParaM_STREAM,String.valueOf(AudioManager.STREAM_VOICE_CALL));

我的理解是,到蓝牙耳机的音频路由工作使得STREAM_MUSIC转到A2DP(在AndroID蓝牙设置中称为“媒体音频”)并且STREAM_VOICE_CALL转到HSP(在AndroID蓝牙设置中也称为“电话音频”).

但无论我在我的小应用程序中使用STREAM_MUSIC还是STREAM_VOICE_CALL,音频总是由于某种原因而变为A2DP.

我做错了什么?有没有办法将TTS输出路由到耳机的HSP配置文件?

最佳答案在大多数设备上,我大部分时间都在使用它.以下是使用蓝牙SCO而不是A2DP在语音呼叫流上启动TTS的部分.

if (mTtsReady) {    myHash = new HashMap

现在我只是在完成后让流恢复原来的问题.阅读TTS一切正常.它会暂停任何音乐,播放TTS,然后恢复音乐.但是,当我稍后退出应用程序时,媒体流现在通过手机耳机播放,直到我重新启动.我在这里发布了这个问题:Audio stream stays on earpiece after using AudioManager

你可以在这里看到我的整个项目:http://code.google.com/p/a2dpvolume/ 总结

以上是内存溢出为你收集整理的android – TTS输出总是转到A2DP全部内容,希望文章能够帮你解决android – TTS输出总是转到A2DP所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1139838.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-31
下一篇2022-05-31

发表评论

登录后才能评论

评论列表(0条)