【问题标题】:android a2dp sink bluezandroid a2dp 接收器 bluez
【发布时间】:2014-03-13 04:41:31
【问题描述】:

我正在处理蓝牙任务。据我所知,bluedroid 不支持 a2dp sink 功能。但是 bluez 支持 sink 功能。所以我在 Android 4.4 中用 bluez 替换了 bluedroid,我看到它可以作为一个源。 (参见 aosp-bluez)但我不知道如何让它作为接收器工作。

Q1) 有什么方法可以通过一些工具(例如haltest、btmgmt 等)在 HAL 层中测试或使用 a2dp sink?或者请告诉我如何让 bluez 用作接收器。

Q2) 在我看来,bluez (ver 5.14) 本身支持 a2dp sink,但似乎 AOSP 不支持 a2dp sink。因此,要制作一个使用a2dp sink的app,需要制作java、jni apis。我说的对吗?

【问题讨论】:

    标签: android bluez


    【解决方案1】:

    是的 bluez 支持 a2dp sink 角色,这里也许你需要更改/更新 pulseaudio,因为它为 a2dp sink/source 添加了寄存器。您可以通过键入来验证 sdptool 浏览本地 那么您需要 sdp 记录以支持 a2dp 接收器角色,如果不存在则更新 pulseaudio

    【讨论】:

      【解决方案2】:

      在发布时,您是正确的,AOSP 不支持 A2DP Sink。这已不再是这种情况。 Bluedroid 现在完全支持 A2DP 接收器。但是,似乎在堆栈的默认编译时未启用它。一旦你启用它,为了让 AudioFlinger 将 A2DP 流输出到扬声器,还需要做额外的工作。我还没有做到这一点。我知道音频正在通过蓝牙传输,因为我可以从 Bluedroid 捕获的 btsnoop 文件中提取音频。

      【讨论】:

        【解决方案3】:

        正如大家回答的那样,AOSP 默认代码不支持 A2DP 接收器配置文件。不过三星Galaxy S7及以上系列手机确实支持sink角色。但是现在手机的接收器功能似乎受到限制。 Galaxy S7及以上系列手机目前只能通过快连APP连接Tizen智能电视。

        【讨论】:

          猜你喜欢
          • 2019-02-12
          • 2016-01-24
          • 2012-04-28
          • 2015-03-02
          • 2015-06-09
          • 2019-01-30
          • 1970-01-01
          • 2016-05-15
          • 2012-09-02
          相关资源
          最近更新 更多