【问题标题】:iOS playing audio to multiple bluetooth devices concurrently [closed]iOS同时向多个蓝牙设备播放音频[关闭]
【发布时间】:2013-05-17 13:54:36
【问题描述】:

我有一些bluetooth speakers (similar),我真的很想同时玩多个他们,但是我找不到办法。

我可以部署自己的应用程序,因此不一定必须通过公共 API 来完成,但 iPhone 硬件是否支持它?

【问题讨论】:

  • 不要认为这与低功耗蓝牙/智能蓝牙等有关,CoreBluetooth.framework...
  • 我感觉你做不到,但如果可以的话,保持流同步是谁的责任?
  • 嗨马丁,我正在寻找相同的功能,你能建议我做这个应用程序吗?据我所知,A2DP 对完成这项工作很有用。任何想法或建议都会很有帮助
  • @Tendulkar 我认为无线扬声器具有 HFP 配置文件,因此 A2DP 不可配置。我也有同样的问题。

标签: ios objective-c audio bluetooth core-bluetooth


【解决方案1】:

您可以使用同一网络上的 2 台 Airport Express 向两个扬声器进行流式传输。每个扬声器都连接到一个机场快线...

您可以尝试的另一个选项是名为 TuneMob 的 iOS 应用程序,它可以通过蓝牙在 iPhone 和 iPad 之间传输音乐,并且每个都充当扬声器。您也可以连接其他扬声器作为辅助 iPhone/iPad 的输出...

【讨论】:

    【解决方案2】:

    主蓝牙设备最多可以与一个微微网(使用蓝牙技术的自组织计算机网络)中的七台设备进行通信,但并非所有设备都达到此最大值。设备可以根据协议切换角色,从属设备可以成为主设备(例如,启动与电话的连接的耳机必须以主设备开始,作为连接的发起者;但随后可能更愿意成为从设备)。 蓝牙核心规范规定连接两个或多个微微网以形成分散网,其中某些设备同时在一个微微网中扮演主控角色,在另一个微微网中扮演从属角色。

    在任何给定时间,数据都可以在主设备和另一台设备之间传输(除了很少使用的广播模式)。主设备选择要寻址的从设备;通常,它以循环方式从一个设备快速切换到另一个设备。由于是主机选择要寻址的从机,而从机(理论上)应该在每个接收槽中进行侦听,因此作为主机比作为从机的负担更轻。成为七个奴隶的主人是可能的;成为多个主人的奴隶是很困难的。

    Bonjour,也称为零配置网络,可以使用行业标准 IP 协议自动发现本地网络上的设备和服务。 Bonjour 通过可从 Cocoa、Ruby、Python 和其他语言访问的复杂且易于使用的编程接口,让发现、发布和解析网络服务变得容易。

    • (void)discoverServices:(NSArray *)serviceUUIDs ,使用它来发现设备列表..

    连接到设备 并使用

    检查连接状态
    @property(readonly) BOOL isConnected
    

    然后使用 cbroadcast 与 , 为此请使用https://developer.apple.com/bonjour/

    参考: Apple Ref 和 wiki ,参考图片来自 apple doc

    【讨论】:

    • 这个答案虽然内容丰富,但不能回答问题。
    • @BjornRoche ,它说“在任何给定时间,数据都可以在主设备和另一台设备之间传输”
    【解决方案3】:

    您可以连接多个扬声器,但一次只能播放一个。 BT 没有足够的带宽来真正同时发送两个高质量的立体声流。另外,我认为您没有办法编写自己的应用来执行此类操作。

    【讨论】:

    • 我简要地阅读了有关 L2CAP 和广播的信息,但是我找不到具体的适用实现,而且我对蓝牙设备没有太多经验。
    • 此外,一些 BT 无线电接口具有用于 L2CAP 的硬件音频编解码器,并具有 I2S 音频连接,而不是使用 DMA 传输音频缓冲区。任何人都在猜测 Apple 是否使用了此功能。
    猜你喜欢
    • 2016-12-03
    • 2021-04-16
    • 2021-10-04
    • 2020-05-23
    • 2014-09-22
    • 1970-01-01
    • 2014-01-20
    • 2023-03-10
    相关资源
    最近更新 更多