我想用我的耳機與hfp並將TTS流式傳輸到耳機,而不使用a2dp配置文件。帶有HFP配置文件的Android TTS
1)I初始化音頻管理器:
audio = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
audio.setMode(AudioManager.MODE_IN_CALL);
2)I使用反射配對的設備:
Method m = device.getClass().getMethod("createBond", (Class[]) null);
Object invokeResult = m.invoke(device, (Object[]) null);
3)當我收到意圖BluetoothDevice.ACTION_BOND_STATE_CHANGED和新狀態是BluetoothDevice類.BOND_BONDED我使用IBluetoothHeadset android界面綁定到耳機。
mContext.bindService(new Intent(IBluetoothHeadset.class.getName()), mConnection, Context.BIND_AUTO_CREATE)
4)onServiceConnected
執行我調用:
boolean connectResult = mService.connect(headset);
5)如果connectResult
是真的,我的init音頻:
audio.setBluetoothScoOn(on);
audio.startBluetoothSco();
但是,當我打電話:
tts.speak(text, TextToSpeech.QUEUE_ADD, null);
the aud io不會重定向到耳機。
注意:在這種情況下audio.isBluetoothA2dpOn()返回false。
如果我以前使用Android系統配對設備,我只能成功重定向音頻。在這種情況下,audio.isBluetoothA2dpOn(
)返回true。
是否有任何方法使用TTS與HFP配置文件?
我已經嘗試過這種解決方案,但它並沒有爲我
TTS output always going to A2DP
謝謝合作!