问题标签 [a2dp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
48797 浏览

android - 如何通过蓝牙将音频从一台 Android 设备流式传输到另一台 Android 设备?

是否可以通过蓝牙流式传输音频?在我的研究中,我发现只能使用A2DP(Advanced Audio Distribution Profile). 每个安卓设备都支持A2DP吗?如果没有,是否可以使用蓝牙在两个安卓设备之间传输音频?请帮助我理解这一点。

我浏览了以下链接:

0 投票
1 回答
781 浏览

android - Android TTS with HFP profile

I want to use my headset with hfp and stream TTS to the headset without using the a2dp profile.

1) I init audio manager:

2) I pair the device using reflection:

3) when I receive the intent BluetoothDevice.ACTION_BOND_STATE_CHANGED and the new state is BluetoothDevice.BOND_BONDED I bind to the headset using the IBluetoothHeadset android interface.

4) in the onServiceConnected implementation I invoke:

5) if connectResult is true, I init audio:

But, when I call:

the audio is not redirected to the headset.

Note: in this case audio.isBluetoothA2dpOn() returns false.

I successfully redirect the audio ONLY if I previously paired the device using android system. In that case audio.isBluetoothA2dpOn() returns true.

Is there any way to use TTS with HFP profile?

I already tried this solution but it didn't work for me

TTS output always going to A2DP

Thanks!

0 投票
1 回答
40192 浏览

android - 安卓设备之间的蓝牙音频流

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

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

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

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

请帮忙。

0 投票
4 回答
28299 浏览

android - BlueZ vs Bluedroid bluetooth stack

BlueZ have a lot of documentations and all. And from the same, i understood BlueZ supports A2DP sink support. And at the same time an android device can be made act as an A2DP sink by modifying the audio.conf file inside the same.

I also came to know that from android 4.2 onwards, the BlueZ stack was replaced by Broadcom's Bluedroid stack. I searched a lot about Bluedroid stack. But i was not able to find much details about the same.

Hope someone can help me with the following doubts.

1). Whether Bluedroid have A2DP sink support?

2). Whether the audio.conf file will be available for devices having bluedroid stack?

3). I am going to write an A2DP sink support for an android device by directly calling API's of BlueZ stack. But my final question is whether the same can be used with Bluedroid stack also? Hope Bluedroid is just an expansion of BlueZ.

Please help.

0 投票
4 回答
49874 浏览

android - 如何修改 Android 的蓝牙堆栈以启用 A2dp Sink

我正在开发一个录音机应用程序,它使用蓝牙麦克风将音频录制到 Android 设备(Nexus 7 - 植根于 Android 4.4.2)。它目前在 HFP 上实施,一切正常。蓝牙麦克风采用 Bluegiga 的 WT32 蓝牙模块 + 麦克风输入,通过 HFP 的音频质量不是很好,但现在已经足够了。

但是,我现在正尝试将蓝牙配置文件更改为 A2dp,因为有两个麦克风输入(L/R)并且 WT32 支持 A2dp(源)。经过大量研究,我发现现有的 Android 不支持 A2dp(接收器),并且可以修改 Android 的蓝牙堆栈以启用 A2dp(接收器)。

我不明白的是如何访问和修改蓝牙堆栈。如果有答案的人能够分解实现这一目标的步骤,那就太好了。

我试过按照这个问题的答案: Receive audio via Bluetooth in Android,但我似乎找不到要修改的适当文件。实际上,我什至不知道我是否正在寻找正确的文件夹。我通过 Android-studio 的 DDMS-File Explorer 查看了设备文件。

ps,我对 Android 应用程序开发还很陌生,所以我可能误用了一些术语,为此我提前道歉。

0 投票
0 回答
711 浏览

android - 将当前音频 (Skype) 路由到 Android 上的 A2DP

我想将输出音频路由到蓝牙 A2DP。因此,当我说 Skype 时,我可以将音频输出到 BT 耳机并使用内部智能手机的麦克风。

我想从我的程序中运行它,就像服务一样,并在通话期间切换它。

我在做什么:1)连接到BT,并设置“媒体音频”,直到“电话音频”关闭。2) 开始 Skype 通话。

现在所有输出流到扬声器而不是 BT,输入来自内部麦克风。

我正在尝试使用将音频输出切换到 A2DP

AudioManager 和 MediaRouter 类,但我没有运气。

任何人都可以帮助我吗?

0 投票
2 回答
7827 浏览

android - 蓝牙 A2DP + AVRCP 1.3+ 模块

我很难理解如何在我的项目中实施 AVRCP。我已经搜索了很多并阅读了许多数据表,但我似乎仍然缺少一些东西......

这是我想做的事情:

简而言之,只要蓝牙模块支持 A2DP,我希望能够通过蓝牙连接我的 android 4.3 设备以通过 A2DP 流式传输音乐(这看起来很简单)。此外,我希望能够控制媒体播放器应用程序(Pandora 等)。现在,我知道 AVRCP 1.0 只支持基本的控制命令(暂停、播放、下一个、上一个、FF、RW),我在网上找到了许多支持通过简单的 UART AT 命令或通过 SPI 总线发送这些命令的蓝牙模块. 但是,我还希望能够从 android 设备获取元数据(这是 AVRCP 1.3+ 唯一的功能),例如曲目名称、专辑名称、艺术家姓名、曲目长度和经过的时间。

现在,据我了解,要获取元数据,我需要一个支持 AVRCP 1.3 或更高版本的蓝牙模块。我无法理解的是如何请求元数据!根据我的阅读,元数据,如曲目名称、艺术家、专辑和曲目长度,是为了响应曲目更改命令而发送的。谁能证实这一点?如果我需要请求经过的时间怎么办?

理想情况下,我正在寻找一个支持 A2DP(24 位,如果可用)和 AVRCP 1.3 或更高版本的蓝牙模块,带有 UART 或 SPI 或 I2C 接口,我可以发送它播放、暂停、下一个、上一个命令来控制音乐播放器和请求艺术家、专辑、曲目名称、经过时间、曲目长度元数据。

这是我发现的唯一一个在数据表中提到元数据的单元: http ://dlnmh9ip6v2uc.cloudfront.net/datasheets/Wireless/Bluetooth/Melody_5.0_Manual-RevD-RC10-Release.pdf (pg.16)

但我仍然不清楚这是如何工作的!

这里的任何帮助都会很棒!

0 投票
0 回答
161 浏览

android - Android 和 IOS 设备之间的流媒体内容

我想实现这个场景: - 一台 IOS 设备和一台 Android 设备;- 第一个简单地将其媒体库暴露给 Android (通过 BT 连接);- 第二个访问第一个的媒体库并播放其内容。

我一直在查看 IOS/Android 官方文档并在线搜索干净的解决方案,但到处都说 Android 操作系统本身不支持 a2dp(这是用于流媒体内容的标准 BT 协议),所以我不能指望一个干净的解决方案。

你可以帮帮我吗?或者我唯一的可能性是实现一个带有缓冲和所有其他东西的自制协议?

请注意!!我不是要你为我写申请,我只是想知道是否有人对此有更多了解。

0 投票
2 回答
1158 浏览

android - 如何在 Xamarin 中使用 BluetoothA2dp 类

我正在尝试使用 A2DP 配置文件控制与设备的蓝牙连接。在 Android 的原生 Java 开发中,开发人员使用 BluetoothA2dp 类来建立连接。

Xamarin 中有一个名为相同的类 - BluetoothA2dp。但我似乎无法理解如何初始化它的实例,因为它没有构造函数。

如何在该类端口的帮助下创建连接?

0 投票
1 回答
2193 浏览

ios - 您如何使用蓝牙 4.0 (BLE) 获得 A2DP 蓝牙配置文件?我需要 AptX 编解码器吗?

我一直在阅读 BLE 仅适用于少量配置文件(基于 GATT 和其他较小的使用特定配置文件),但我看到市场上有许多使用 A2DP 的蓝牙 4.0 耳机(示例如下)。但是,所有蓝牙 4.0 耳机都有一个共同点……使用 aptX 编解码器。什么是 aptX,它是使用蓝牙 4.0 让 A2DP 作为配置文件工作的方法吗?有没有人知道通过 BLE 将音频和远程控制命令传递给移动设备的另一种方式?

示例 1

示例 2