问题标签 [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 投票
1 回答
1132 浏览

ios - 如何在 iPhone 上使用 A2DP 连接到远程设备

我想连接到蓝牙设备并让我的应用通过 A2DP 向它发送音频。所以我的问题是:

  • 如何扫描蓝牙设备?
  • 怎么搭配呢?
  • 如何将音频发送到配对设备?

我熟悉Corebluetooth但它不兼容不低功耗的蓝牙,那么我应该使用什么框架?用户应该连接设备抛出应用程序的设置还是我可以处理?

我知道有很多问题,但我发现的所有信息都是针对 android 的。

谢谢!

0 投票
0 回答
261 浏览

java - 通过蓝牙连接的设备上的文件是否有 URL 路径?

我想通过蓝牙在多个设备上流式传输音乐。因此,A2DP 不是一个选项,SCO 也不是,因为音质不足。从此处显示的 URL 流式传输音乐很容易。是否可以将 android 媒体播放器的 URL 设置为通过蓝牙连接的不同设备上的文件?或者是否可以从主机设备下载 mp3 并同时播放?感谢您的任何建议。

0 投票
0 回答
4900 浏览

android - Android 5.0 蓝牙 A2DP 接收器

我正在寻找一个非常具体的答案。我希望那里有足够聪明的人可以为我指明正确的方向。

背景:我有一部 Android 手机(LG Power on 5.0 rooted)以及一部运行 6.0 的 Nexus 10。在我的房子里,我建立了一个非常好的 PA 系统,我很想向它传输音频。我完全有能力插入 3.5 毫米线来收听音频或通过 WiFi 流式传输音频。

但是,我是一个固执的人,并且一直幻想通过蓝牙将音频从一个设备流式传输到另一个设备的想法。毕竟,Android 就是 Linux。

在互联网上进行了相当广泛的搜索后,似乎有很多人愿意找到解决方案。答案包括:

'这不能做',

“你为什么要那样做?”

'这里有所有可能需要的东西。建立远离。哦,顺便说一句,你可能需要更多'

我觉得这些答案并不令人满意,我想向所有比我自己更高的智能提出请求,以找到一种简单的(不需要构建自定义 ROM、修改内核、制作我自己的应用程序等)方法来实现这个目标.

这是一个似乎非常接近答案的来源: Android device as a receiver for A2DP profile

如果需要更多信息,请询问!

提前感谢您在本网站上所做的所有辛勤工作和努力。我真的很感谢所有愿意抽出时间来帮助自己的人,当谈到 Android 的复杂性时,他们是无效的。

0 投票
2 回答
1102 浏览

raspbian - RasberryPi A2DP Sink - 暂停问题(PulseAudio,Bluez)

我正在尝试创建一个蓝牙 A2DP 接收器(接收器),然后将音频输出到 vorbis 无线电流(仅限 LAN)。基本上我想把它作为一个蓝牙插件到一个squeezebox(squeezelite)多房间音乐系统。A2DP-sink-radio-transmitter 是一个独立的 Raspberry Pi,可以轻松添加到任何系统中。我对 Linux 比较陌生。

我已经完成了一个工作设置,但是当我在蓝牙源(电话)上暂停音频时,一切都崩溃了。

设置:蓝牙电话 -> 由 Bluez/PulseAudio [PA] 接收 -> PulseAudio Bluez Source 通过 PA 'module-loopback' 到 ALSA 声卡接收器 -> Darkice 使用 pulseaudio 作为源(设备 = 脉冲)对 vorbis 流进行编码 - > icecast2 广播

这很好用,但是当我暂停电话时,流(由 VLC/Squeezebox 接收)停止(时间戳停止滴答)。恢复音频会产生巨大的延迟(我认为它与暂停持续时间的长度相同)。长时间暂停后,流可能无法重新启动。Darkice 清楚地看到音频输入已停止。

我想我需要告诉 PulseAudio 以某种方式用一些沉默来填补暂停。我尝试通过 ALSA 虚拟机(snd-dummy)进行路由,这只会产生持续的噪音。我无法工作。

Darkice 可以采用以下来源:OSS、ALSA 和 JACK。

请帮忙,我太接近了!

0 投票
3 回答
1854 浏览

bluetooth - 为 a2dp 解码 MPEG 2,4 AAC-LC LATM 比特流

我正在尝试解码从 Apple iPhone 收到的用于蓝牙 A2DP 配置文件的比特流。

根据Apple的结构应该是

比特流结构

我拥有的样本比特流是

36 00 47 00 | 80 60 00 01 00 06 3c ab 00 00 00 00 | 47 fc 00 00 b0 90 80 03 00 20 20 66 00 01 98 00 0d e1 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1c

前四个字节是 L2CAP,接下来的 12 个字节是 AVDTP。但我无法解码其余字节。请帮忙。

我已经看到定义 AudioMuxElement 的 ISO 14496-3,但我仍然无法将它与字节相关联。

0 投票
1 回答
1324 浏览

bluetooth - A2DP的音频输出和HFP的音频输入可以同时使用吗?

我想开发应用程序来从蓝牙耳机的麦克风输入语音并输出到蓝牙扬声器。

我认为使用 HFP 输入和 A2DP 输出。两个profile可以同时使用吗?

0 投票
2 回答
1742 浏览

ios - 如何检测 iOS 中是否连接了 HFP 或 A2DP?

我正在开发一个可以通过 HFP 设备播放音乐的项目。但是这里有一个问题,我想在播放音乐时检测是否连接了 HFP 或 A2DP。

现在我正在使用 AVFoundation 框架来执行此操作。这是代码:

效果很好,但又带来一个问题:在播放音乐时,使用这种方法检测HFP连接会导致音乐播放中断约两秒。

所以我尝试了另一种可以减少检测HFP连接效果的方法。我正在使用旗帜

指示是否连接了 HFP 或 A2DP。我使用以前的方法只检测一次连接(当应用程序启动时)并将结果保存到 isHFPConnectedFlag 中。更重要的是,我观察 AudioSessionRouteChange 来同步连接状态:

当路由更改原因是AVAudioSessionRouteChangeReasonNewDeviceAvailable或者AVAudioSessionRouteChangeReasonOldDeviceUnavailable我可以知道 HFP 连接或断开连接。不幸的是,当我在 iPhone 中连接一些 HFP 时,系统不会发布此通知,因此在这种情况下我无法检测到连接。

有谁知道实现这一点的原因或更好的方法(检测 HFP 连接而不中断音乐播放)?

0 投票
0 回答
533 浏览

android - BluetoothA2dp 获取音频会话 ID

我正在使用AudioManager播放歌曲。我想将它与Equalizer结合起来。

我的问题是我不想生成新的音频会话 ID,我想获取当前的音频会话 ID。我怎样才能实现它?

我看到了一些使用 MediaPlayer 的示例,但我使用的是BluetoothA2dp

0 投票
1 回答
3921 浏览

linux - Bluetoothctl 无需任何用户交互

现在我可以通过这种方式成功地将手机配对并连接到我的机器,而无需任何用户交互:

从我的手机中搜索 BT 设备,它会自动配对和连接。现在我有两个问题:

  1. 它仍然要求授权服务:

    授权服务

    【代理】授权服务0000110e-0000-1000-8000-00805f9b34fb(是/否):

但这不好,因为我已经指定了NoInputNoOutput

  1. 如何信任设备?输入就足够了,trust但出于同样的原因,我需要自动执行此操作。

一般来说,是否有任何可靠的 C++ 库来处理蓝牙连接和 A2DP 和 HFP 等常见配置文件?

0 投票
0 回答
759 浏览

ios - 从 iOS 应用程序中访问 A2DP 设备

我目前正在使用 Swift 开发 iOS 应用程序。我希望该应用列出所有配对的经典蓝牙(或至少是 A2DP)设备。之后我希望能够选择一个并连接到它。从应用程序内配对会很高兴。- 我目前正在使用ExternalAccessory.framework来实现这一点。

该类EAAccessoryManager有一个名为showBluetoothAccessoryPickerWithNameFilter. 但即使我连接到 A2DP 设备,它也会一直打开一个空表视图。还有一个属性叫做connectedAccessories. 0无论 A2DP 设备是否连接,该数组的长度始终不变。

我的研究表明,这些设备在使用 A2DP 时不必适合 MFi 程序。但我认为我仍然需要一个字符串作为UISupportedExternalAccessoryProtocolsXcode 项目的 Info.plist 文件中的密钥,以使 A2DP 设备对ExternalAccessory.framework.

使用 A2DP 时是否有类似默认协议字符串的内容?- 或者我的方法完全错误,我需要使用不同的库来实现我想要的?