如何将多个扬声器连接在一起并同时连接到手机?

时间:2014-06-16 13:34:47

标签: android ios windows-phone-8 bluetooth

是否可以将4个扬声器连接在一起,这4个扬声器是否需要连接到手机才能播放音乐?我不需要4个扬声器同时播放音乐。

我只想让4个扬声器中的1个播放音乐,但我需要控制哪个应该播放音乐(最接近手机的扬声器应该只播放)。

我希望4个扬声器能够相互通信,投票给1个扬声器播放音乐,这就是我需要将这些扬声器连接在一起的原因。手机无需选择合适的扬声器,扬声器必须自行选择。

更新1:

  1. 要在发言者之间进行交流,我会在他们之间创建piconet。然后扬声器会相互更新到手机的距离。壁橱音箱将播放音乐。

  2. 为了计算距离,我想知道我是否可以使用Proximity Profile。是否可以使用Proximity Profile来计算电话reporter和发言者monitors的距离?

  3. 假设有2分是可能的。我可以断开播放扬声器并将另一个扬声器连接到手机以切换播放音乐角色吗?

    步骤如下:
    扬声器1正在播放音乐----->手机正朝着扬声器2移动 扬声器1断开与电话的连接,扬声器2连接到电话 扬声器2正在播放音乐,扬声器1停止。

    更新2:
    我放弃了让扬声器如此聪明的想法。相反,我将在智能手机上运行一个应用程序来处理距离监控并切换到最近的扬声器。

    我会接受@Floris的回答来结束这个问题。 感谢

4 个答案:

答案 0 :(得分:1)

是的,基本上,这是可能的。但是,如果你想要的只是发言者应该决定哪一个播放音乐,你需要对它们进行编程。因此,您需要在每个扬声器中使用一个芯片,或者控制所有四个扬声器的控制器,但无论如何,您需要一些硬件来编程。在我看来,最好的方法是在应用程序中执行此操作,即使这不是您想要的。

答案 1 :(得分:1)

这是一个大项目...... 为什么呢?

1。)假设Proximity Profile真的有效......你需要知道手机当前连接的是哪个扬声器,同时检查4个扬声器的距离。

2。)我不同意你所说的关于发言者将决定它将连接哪个合适的发言者。因为您需要在手机中制作一个程序来决定... 如果确实如此,就像上面的帖子一样,你需要对硬件和芯片有广泛的了解。好吧,我更喜欢让手机决定。

3.。)你需要一个程序来检查你的手机每秒钟与其他4个扬声器的距离..然后你会配置它自动连接(如果需要密码或任何其他安全问题)一旦它发现有一个更接近的发言者。

这个想法是可能的......而且很棒......

答案 2 :(得分:1)

为了实现这一点,您的扬声器必须非常智能 - 实质上每个都是一个小型的Android设备。假设你想给他们那么聪明,那么步骤就是:

  • 每个扬声器与手机“配对”(假设它们与蓝牙连接)
  • 每个发言者与所有其他发言者“配对”(因此他们知道其他发言者存在)
  • 这些配对中的每一个都有自己的一套通信协议:
    1)对于电话到扬声器,最近的扬声器应传达其播放音乐的可用性 2)手机到手机,他们必须比较距离。每部手机都与其他手机通信。如果在给定的时间段内它似乎不是最接近的,它会向其他三个人传达“我不是在播放音乐”。如果它在上次更新之前一直播放音乐,它会与手机通话“我无法接触”并断开连接 3)另一方面,如果扬声器成为“山丘之王”,它应该将其传达给手机,这样手机就会开始向它发送信息。

这留下了“最接近”的问题 - 换句话说,说话者知道它与手机的距离有多好。 detailed specification explains how to get the path loss,特别是the transmit power level,它与距离不同,但是合理的代理(距离越远,路径损失越大) - 一般来说,你更关心信号强度比距离。

最后,你需要建立一种机制来防止两个“几乎相同距离”的扬声器开始在通道上互相争斗 - 通常你通过创建滞后来做到这一点(当前的扬声器获得'5点优势“超过任何其他人,所以它似乎是最接近的,除非它真的不是 - 在这一点上,一个新的发言者成为主人,它获得了优势,并且它将保持这样,直到它真的不再是最接近的)。

对于“5点优势”,您可以读取任何内容 - 也许链路损耗以dB表示,并且您报告的损耗小于它(例如,如果损耗为-43 dB,则可能报告-40 dB)

这是一个很大的项目 - 我很难想到一个用例(也许是一个人走过博物馆,在旁边的扬声器上进行叙述)。祝你好运。

答案 3 :(得分:-1)

不可能。您无法将扬声器连接到手机。甚至没有一个。只有一个耳机。