基本上,我现在要做的是使用Android设备作为A2DP接收器,当配对建立时,android播放从发射器接收的声音.我担心如果我使用STP配置文件,可能会导致流式传输延迟.所以,我想使用A2DP,但是这可能使用Android设备作为A2DP的接收器吗?怎么做?
解决方法:
由于Android L BlueDriod堆栈支持A2DP接收器,但默认情况下禁用.
要启用它,请执行以下操作:
/* Enable bluetooth av sink. */
#define BTA_AV_SINK_INCLUDED TRUE
在/external/bluetooth/bluedroid/include/bt_target.h.
这使得蓝牙堆栈中的接收器支持成为可能.
你还必须做这个改变:
<!-- Enable sink support. -->
<bool name="profile_supported_a2dp_sink">true</bool>
在/packages/apps/Bluetooth/res/values/config.xml.这启用了特定的UI.
现在,您可以配对设备并开始流式传输.不幸的是,虽然你会收到数据包,但你听不到声音.原因是A2DP接收器没有音频路由.在此修补程序https://android-review.googlesource.com/#/c/98161/的提交消息中,您可以找到有关如何解决此问题的示例实现.
以下是这些更改的列表:
> https://android-review.googlesource.com/#/c/97832/
> https://android-review.googlesource.com/#/c/97853/
> https://android-review.googlesource.com/#/c/97833/
> https://android-review.googlesource.com/#/c/98130/
> https://android-review.googlesource.com/#/c/98131/