18

我对同一主题进行了研究,发现 android 设备是 a2dp 源,音频只能从 a2dp 源流式传输到 a2dp 接收器。A2dp sink 可以是蓝牙耳机或蓝牙音箱。

但我的问题是,名为“蓝牙音乐播放器的安卓应用程序是如何工作的?

它允许从一部手机流式传输到另一部手机。因此在这种情况下,监听移动设备必须充当接收器。这怎么可能?他们是否使用其他配置文件而不是 a2dp?

好的,这可能是他们使用的不同配置文件。因为应用程序也需要安装在客户端。但是如何将语音从蓝牙麦克风传输到安卓设备呢?

请帮忙。

4

1 回答 1

7

在不了解上述蓝牙音乐播放器的详细信息的情况下,它似乎使用简单的蓝牙数据连接,否则您无需在播放/发送设备上安装客户端。

要将音频从麦克风流式传输到另一台设备,您可以将其录制在发送设备上并将其发送到接收设备。为此,您将需要实现一个协议。
或者
您可以实施替代的 A2DP 接收器服务。这就是接收器的含义:具有蓝牙协议栈和 A2DP 接收器实现的设备。

编辑:
对于您在评论中详述的情况,发送设备应保持原样,无需安装任何应用程序。这隐含地意味着您的解决方案必须利用该 Android 设备的开箱即用蓝牙功能。
因此,您可以在此处使用的仅限于 Android 通常支持的那些配置文件,即 HSP、HFP 和 A2DP。由于您显然想要流式传输音乐,因此 A2DP 将是您的选择。
在应该接收音频流并进行播放的设备上,您必须实现一个提供 A2DP 接收器的服务,作为一个自我实现的 BluetoothService,在 RFCOMM 上打开一个 BluetoothServerSocket,如Android 文档中所述。

您将不得不花费大量精力来实现这一点,而且我不确定您是否需要为此获得许可证。

于 2013-11-26T16:24:36.637 回答