2009-11-11 22:54:06

by Mark Stanovich

[permalink] [raw]
Subject: Simultaneous outgoing audio streams

Sorry if there are multiple messages, it seems that my other email was blocked?

Does anyone know if it is possible to send audio to multiple headsets from one adapter?

I have looked around the source, docs, and the web but have been unable to find an answer.

Currently I can send audio to one headset but once I try to send audio to another headset I get the following messages from bluetoothd:

bluetoothd[17481]: Accepted new client connection on unix socket (fd=22)
bluetoothd[17481]: Audio API: BT_REQUEST <- BT_GET_CAPABILITIES
bluetoothd[17481]: Audio API: BT_RESPONSE -> BT_GET_CAPABILITIES
bluetoothd[17481]: Audio API: BT_REQUEST <- BT_OPEN
bluetoothd[17481]: open sco - object=ANY source=ANY destination=00:00:00:00:00:00 lock=write
bluetoothd[17481]: Audio API: BT_RESPONSE -> BT_OPEN
bluetoothd[17481]: Audio API: BT_REQUEST <- BT_SET_CONFIGURATION
bluetoothd[17481]: State changed /org/bluez/17481/hci0/dev_00_00_00_00_00_00: HEADSET_STATE_DISCONNECTED -> HEADSET_STATE_CONNECTING
bluetoothd[17481]: adapter_get_device(00:16:8F:24:6E:A6)
bluetoothd[17481]: Unable to get service record: Host is down (112)
bluetoothd[17481]: config failed
bluetoothd[17481]: sending error Input/output error(5)
bluetoothd[17481]: Audio API: BT_ERROR -> BT_SET_CONFIGURATION
bluetoothd[17481]: State changed /org/bluez/17481/hci0/dev_00_00_00_00_00_00: HEADSET_STATE_CONNECTING -> HEADSET_STATE_DISCONNECTED
bluetoothd[17481]: Unix client disconnected (fd=22)
bluetoothd[17481]: client_free(0xb8dfa648)

The mac addresses have been changed to all zeros.

Maybe this is a limitation of the hardware or the device driver?

I have set the MaxConnected to greater than 1, actually 15. Are there any other settings I should be aware of.

Thanks





2009-11-12 14:42:56

by Mark Stanovich

[permalink] [raw]
Subject: Re: Simultaneous outgoing audio streams

Luiz Augusto von Dentz wrote:


> Sorry I just interpret this all wrong, as the application has been
> sending 00:00:00:00:00:00, but yeah you seem to be doing it right
> although Im not sure you can have more than one SCO connection active,
> but that doesn't explain the host is down error, so perhaps there is
> something else blocking you.

I attempted briefly to go through the code and see what exactly is causing the error. It appears that bluetoothd starts a search for the headset and is unable to find it (or prevented from finding it). I am unclear why it cannot find the headset when another audio stream is in progress. It could be that there is some sort of locking mechanism in place. The code is relatively new to me. Maybe as you mentioned it is requesting another SCO connection and prevented from creating one with another device? I will try to dig deeper and see where it is actually getting blocked.

- Mark





2009-11-12 13:29:30

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: Simultaneous outgoing audio streams

Hi,

On Thu, Nov 12, 2009 at 10:20 AM, Mark Stanovich <[email protected]> wrote:
>> For hsp/hfp you need to set MaxConnected, but for a2dp it
>
> I have changed the MaxConnected under [Headset] to 15, is this the same as hsp/hfp, or should I create a new section?
>
>> is required to change the number of sources/sinks to do the same, both
>> can be configured via audio.conf. Now about the address, it really
>> seems that you are using 00:00:00:00:00:00 to connect which explain
>
> I just changed these to all zeros for privacy, and actually I missed one :) ?Realistically, I guess it doesn't matter for other to see the mac, I just saw other people blocking their's out, so I thought maybe there was some privacy/security concern.
>
>> why you are getting the host is down error, you can either choose a
>> valid address or a valid dbus object.

Sorry I just interpret this all wrong, as the application has been
sending 00:00:00:00:00:00, but yeah you seem to be doing it right
although Im not sure you can have more than one SCO connection active,
but that doesn't explain the host is down error, so perhaps there is
something else blocking you.

--
Luiz Augusto von Dentz
Engenheiro de Computa??o

2009-11-12 13:20:25

by Mark Stanovich

[permalink] [raw]
Subject: Re: Simultaneous outgoing audio streams

> > Does anyone know if it is possible to send audio to multiple headsets from one adapter?
> >
> > I have looked around the source, docs, and the web but have been unable to find an answer.
> >
> > Currently I can send audio to one headset but once I
> try to send audio to another headset I get the following
> messages from bluetoothd:
> >
> > bluetoothd[17481]: Accepted new client connection on
> unix socket (fd=22)
> > bluetoothd[17481]: Audio API: BT_REQUEST <-
> BT_GET_CAPABILITIES
> > bluetoothd[17481]: Audio API: BT_RESPONSE ->
> BT_GET_CAPABILITIES
> > bluetoothd[17481]: Audio API: BT_REQUEST <-
> BT_OPEN
> > bluetoothd[17481]: open sco - object=ANY source=ANY
> destination=00:00:00:00:00:00 lock=write
> > bluetoothd[17481]: Audio API: BT_RESPONSE ->
> BT_OPEN
> > bluetoothd[17481]: Audio API: BT_REQUEST <-
> BT_SET_CONFIGURATION
> > bluetoothd[17481]: State changed
> /org/bluez/17481/hci0/dev_00_00_00_00_00_00:
> HEADSET_STATE_DISCONNECTED -> HEADSET_STATE_CONNECTING
> > bluetoothd[17481]:
> adapter_get_device(00:16:8F:24:6E:A6)
> > bluetoothd[17481]: Unable to get service record: Host
> is down (112)
> > bluetoothd[17481]: config failed
> > bluetoothd[17481]: sending error Input/output
> error(5)
> > bluetoothd[17481]: Audio API: BT_ERROR ->
> BT_SET_CONFIGURATION
> > bluetoothd[17481]: State changed
> /org/bluez/17481/hci0/dev_00_00_00_00_00_00:
> HEADSET_STATE_CONNECTING -> HEADSET_STATE_DISCONNECTED
> > bluetoothd[17481]: Unix client disconnected (fd=22)
> > bluetoothd[17481]: client_free(0xb8dfa648)
> >
> > The mac addresses have been changed to all zeros.
> >
> > Maybe this is a limitation of the hardware or the
> device driver?
> >
> > I have set the MaxConnected to greater than 1,
> actually 15. ?Are there any other settings I should be
> aware of.
>
> For hsp/hfp you need to set MaxConnected, but for a2dp it

I have changed the MaxConnected under [Headset] to 15, is this the same as hsp/hfp, or should I create a new section?

> is required to change the number of sources/sinks to do the same, both
> can be configured via audio.conf. Now about the address, it really
> seems that you are using 00:00:00:00:00:00 to connect which explain

I just changed these to all zeros for privacy, and actually I missed one :) Realistically, I guess it doesn't matter for other to see the mac, I just saw other people blocking their's out, so I thought maybe there was some privacy/security concern.

> why you are getting the host is down error, you can either choose a
> valid address or a valid dbus object.

Thanks,
Mark





2009-11-12 13:08:33

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: Simultaneous outgoing audio streams

Hi,

On Wed, Nov 11, 2009 at 7:54 PM, Mark Stanovich <[email protected]> wrote:
> Sorry if there are multiple messages, it seems that my other email was blocked?
>
> Does anyone know if it is possible to send audio to multiple headsets from one adapter?
>
> I have looked around the source, docs, and the web but have been unable to find an answer.
>
> Currently I can send audio to one headset but once I try to send audio to another headset I get the following messages from bluetoothd:
>
> bluetoothd[17481]: Accepted new client connection on unix socket (fd=22)
> bluetoothd[17481]: Audio API: BT_REQUEST <- BT_GET_CAPABILITIES
> bluetoothd[17481]: Audio API: BT_RESPONSE -> BT_GET_CAPABILITIES
> bluetoothd[17481]: Audio API: BT_REQUEST <- BT_OPEN
> bluetoothd[17481]: open sco - object=ANY source=ANY destination=00:00:00:00:00:00 lock=write
> bluetoothd[17481]: Audio API: BT_RESPONSE -> BT_OPEN
> bluetoothd[17481]: Audio API: BT_REQUEST <- BT_SET_CONFIGURATION
> bluetoothd[17481]: State changed /org/bluez/17481/hci0/dev_00_00_00_00_00_00: HEADSET_STATE_DISCONNECTED -> HEADSET_STATE_CONNECTING
> bluetoothd[17481]: adapter_get_device(00:16:8F:24:6E:A6)
> bluetoothd[17481]: Unable to get service record: Host is down (112)
> bluetoothd[17481]: config failed
> bluetoothd[17481]: sending error Input/output error(5)
> bluetoothd[17481]: Audio API: BT_ERROR -> BT_SET_CONFIGURATION
> bluetoothd[17481]: State changed /org/bluez/17481/hci0/dev_00_00_00_00_00_00: HEADSET_STATE_CONNECTING -> HEADSET_STATE_DISCONNECTED
> bluetoothd[17481]: Unix client disconnected (fd=22)
> bluetoothd[17481]: client_free(0xb8dfa648)
>
> The mac addresses have been changed to all zeros.
>
> Maybe this is a limitation of the hardware or the device driver?
>
> I have set the MaxConnected to greater than 1, actually 15. ?Are there any other settings I should be aware of.

For hsp/hfp you need to set MaxConnected, but for a2dp it is required
to change the number of sources/sinks to do the same, both can be
configured via audio.conf. Now about the address, it really seems that
you are using 00:00:00:00:00:00 to connect which explain why you are
getting the host is down error, you can either choose a valid address
or a valid dbus object.


--
Luiz Augusto von Dentz
Engenheiro de Computa??o