【问题标题】:CoreBluetooth and audio streamCoreBluetooth 和音频流
【发布时间】:2012-08-29 19:28:22
【问题描述】:

我能否使用 CoreBluetooth 框架将音频流从一台 iOS 设备传输到另一台 iOS 设备(例如从 4s 到新 iPad)。也许 BLE 对媒体流来说太慢了?

【问题讨论】:

    标签: ios bluetooth-lowenergy core-bluetooth


    【解决方案1】:

    蓝牙低功耗 (BLE) 不适用于流式传输数据!

    如果您想流式传输,您必须使用蓝牙 2.X+EDR 和适当的配置文件。因此,如果您想流式传输音频,则需要耳机或 A2DP 配置文件。

    CoreBluetooth API 只允许访问 BLE 设备。

    【讨论】:

    • 那么如果我想使用经典蓝牙而不是低功耗,我可以使用什么sdk?
    • 在这种情况下必须是一个强词。 Wikipedia 指定吞吐量为 0.26 Mbit/s (en.wikipedia.org/wiki/Bluetooth_low_energy#Technical_details),那么为什么不使用音频呢?此外,Apple 并未指定您可以通过 BLE 发送的内容。
    • 遗憾的是,iOS 对您可以从程序中使用的蓝牙经典配置文件有极端限制,因此实际上您有三个选择:1) 有很多钱并选择 MFi 程序 2) 使用免提配置文件3) 尝试通过 BLE 进行流式传输。
    【解决方案2】:

    音频流不会有任何好处,因为 BLE 可以一次传输 20 个字节的数据包,在 iOS5 上每次传输之间有 37.5 毫秒的延迟。因此,这将是滞后的,并且毫无用处。缓冲数据总是有可能的,但归根结底,这不是流式传输音频的好方法。

    |packet| --- 37.5ms --- |packet| --- 37.5ms --- |packet...
    

    【讨论】:

    • 我能够在超过一分钟的时间内以大约 10 毫秒的延迟每秒发送 20 次 32 位值。这似乎与您的帖子不一致?此外,维基百科 (en.wikipedia.org/wiki/Bluetooth_low_energy#Technical_details) 指定了大约 6 毫秒的延迟,这似乎更符合我的经验。
    • 是的,但正如我所说,IOS5 不允许低于 37.5ms 的延迟,不关心 BLE 标准
    • 好的,我的实验是在 iOS 6 上进行的。那里似乎有所改进。
    • 是的,iOS6 的连接间隔更好
    猜你喜欢
    • 1970-01-01
    • 2011-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-06
    • 1970-01-01
    • 2021-07-11
    相关资源
    最近更新 更多