Articles of a2dp

如何修改Android的蓝牙堆栈以启用A2dp接收器

我正在制作一个录音机应用程序,它使用蓝牙麦克风将音频录制到Android设备上(Nexus 7 – 扎根Android 4.4.2)。 它目前在HFP上实施,一切正常。 蓝牙麦克风是用Bluegiga的WT32蓝牙模块+麦克风输入实现的,通过HFP的音质不是很好,但现在已足够了。 但是,我现在正尝试将蓝牙配置文件更改为A2dp,因为有两个麦克风输入(L / R)和WT32支持A2dp(源)。 经过大量研究后,我发现Android不支持A2dp(接收器),并且可以修改Android的蓝牙堆栈以启用A2dp(接收器)。 我不明白的是如何访问和修改蓝牙堆栈。 如果有答案的人能够分解实现这一目标的步骤,那将是很好的。 我已经尝试过这个问题的答案: 在Android中通过蓝牙接收音频 ,但我似乎无法find要修改的相应文件。 实际上,我甚至不知道我是否正在查找正确的文件夹。 我通过Android-studio的DDMS-File Explorer查看了设备文件。 ps,我对Android应用程序开发还是比较新的,所以我可能误用了一些术语,并为此提前道歉。

Android设备之间的蓝牙音频流

我对同一主题进行了研究,发现android设备是a2dp源,音频只能从a2dp源流到a2dp接收器。 A2dp接收器可以是蓝牙耳机或蓝牙扬声器。 但我的问题是那个名为 “ 蓝牙音乐播放器 ” 的Android应用程序是如何 工作的 ? 它允许从一个移动设备流式传输到另一个 因此,在这种情况下,收听移动设备必须充当接收器。 这怎么可能? 他们使用的是其他配置文件而不是a2dp吗? 好吧,这可能是他们正在使用的不同的配置文件。 因为应用程序也需要安装在客户端。 但是如何将语音从蓝牙麦克风传输到Android设备呢? 请帮忙。

BlueZ vs Bluedroid蓝牙堆栈

BlueZ有很多文档和所有文档。 同样,据我所知,BlueZ支持A2DP接收器支持。 同时,通过修改同一个内部的audio.conf文件,可以使android设备充当A2DP接收器。 我也知道从android 4.2开始,BlueZ堆栈被Broadcom的Bluedroid堆栈取代。 我搜索了很多关于Bluedroid堆栈的信息。 但我无法find相同的细节。 希望有人可以帮我解决以下疑惑。 1)。 Bluedroid是否支持A2DP接收器? 2)。 audio.conf文件是否可用于具有bluedroid堆栈的设备? 3)。 我将通过直接调用BlueZ堆栈的API来为Android设备编写A2DP接收器支持。 但我最后的问题是Bluedroid堆栈是否也可以使用相同的? 希望Bluedroid只是BlueZ的扩展。 请帮忙。

如何在Android中启用A2DP接收器function?

我正在开发一个使用Gingerbread 2.3.4作为操作系统的定制嵌入式设备。 现在,该设备应该能够播放来自其他支持A2DP的设备(如iPhone或其他Android设备)的音频流。 我知道Gingerbread包含Bluez stack 4.69,它具有A2DP接收器function。 但是,我怀疑Android是否公开了这些API。 您对我如何实现此function有任何想法吗? 由于我没有开发通用的Android应用程序,任何种类的非标准方法都将受到赞赏。 我认为即使在Android中也可以通过DBus接口直接访问Bluez堆栈。

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

是否可以通过蓝牙传输音频? 在我的研究过程中,我发现只能使用A2DP(Advanced Audio Distribution Profile) 。 并且每个Android设备都支持A2DP吗? 如果没有,是否可以使用蓝牙在两个Android设备之间流式传输音频? 请帮我理解这个。 我查看了以下链接: 在Android中通过蓝牙接收音频 , 谷歌确认下一版Android 4.2的蓝牙音频流修复 如何通过蓝牙从其他设备流式传输音频?

以编程方式连接到配对的蓝牙扬声器并播放audio

在我们的应用程序中,我想连接到以前配对的A2DP蓝牙扬声器,并使用Android v4.2或更高版本直接播放audio。 我可以使用以下代码成功创build一个A2DPconfiguration文件对象来启动该过程: /* Manifest permissions */ <uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> // Get the default adapter BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); // Establish connection to the proxy. mBluetoothAdapter.getProfileProxy(this, mProfileListener, BluetoothProfile.A2DP) 以及下面的监听器响应连接: private BluetoothProfile.ServiceListener mProfileListener = new BluetoothProfile.ServiceListener() { public void onServiceConnected(int profile, BluetoothProfile proxy) { if (profile == BluetoothProfile.A2DP) { mBluetoothSpeaker = (BluetoothA2dp) proxy; // no […]

Android设备作为A2DPconfiguration文件的接收者

基本上,我现在想要做的是使用Android设备作为A2DP接收器,当配对build立时,android会播放从发送器接收到的声音。 我担心,如果我使用STPconfiguration文件,可能会导致stream式传输延迟。 所以,我想使用A2DP,但这是可能的使用Android设备作为A2DP的接收器? 以及如何做到这一点?

我如何启用Lollipop中引入的新的蓝牙A2DP接收器function?

我正在尝试修改Nexus 5的AOSP安卓图像,以包含对蓝牙A2DP接收器的支持。 我发现Google很好,可以包含Nexus 5的隐藏构build目标。 https://android.googlesource.com/device/lge/hammerhead/+/android-5.0.1_r1/car_hammerhead.mk 这包括修改的Bluedroidconfiguration文件,允许设备通过蓝牙广告A2DP Sink服务。 它还将设备类别更改为Bluetooth Automative Carkit,并修改Bluetooth.apk的configuration以支持A2DP接收器和AVRCP控制服务。 这使我得到了大约75%的路程。 我通过抓取一个KitKat手机并与Nexus 5上的修改版本进行配对来testing这一点。它正确地宣传了A2DP Sink服务,并允许我的KitKat手机连接到A2DP Sink服务。 从KitKat手机看来,它甚至允许我将音乐stream式传输到Nexus 5.但Nexus 5从来没有听到过音乐。我甚至在Nexus 5上捕捉到了HCIstream量,并发现这些音乐实际上正在stream向电话。 问题是蓝牙设备接收到audiostream,但是audio从不路由到扬声器。 有没有人有任何想法如何将A2DPstream路由到Nexus 5的扬声器?

如何在Android中启用A2DP接收器function?

我正在开发一个使用Gingerbread 2.3.4作为操作系统的定制embedded式设备。 现在,该设备应该能够从其他支持A2DP的设备(例如iPhone或其他Android设备)播放audiostream。 我知道姜饼包括Bluez堆栈4.69这是A2DP接收器function的能力。 不过,我怀疑Android公开这些API。 你有什么想法,我怎么能实现这个function? 由于我没有开发一个通用的Android应用程序,任何种类的非标准方法将不胜感激。 我认为即使在Android中, Bluez堆栈也可以通过DBus接口直接访问。

BlueZ与Bluedroid蓝牙协议栈

BlueZ有很多文件和所有。 同样,我明白BlueZ支持A2DP接收器支持。 同时,通过修改audio.conf文件,可以将android设备作为A2DP接收器。 我也知道,从Android 4.2开始,BlueZ堆栈被Broadcom的Bluedroid堆栈取代。 我search了很多关于Bluedroid的堆栈。 但我无法find相同的细节。 希望有人能帮助我以下疑惑。 1)。 Bluedroid是否支持A2DP接收器? 2)。 audio.conf文件是否可用于具有bluedroid栈的设备? 3)。 我将通过直接调用BlueZ堆栈的API来为Android设备编写A2DP接收器支持。 但是我的最后一个问题是,是否可以使用Bluedroid栈也一样? 希望Bluedroid只是BlueZ的扩展。 请帮忙。