Re: A thorny device selection issue

Oh, and on a related note: how does the browser know that the two 
devices are linked? If we understood how the underlying OS exposes this 
information it might help us understand how the browser should as well.

Gili

On 11/12/2013 6:35 PM, cowwoc wrote:
> Is bluetooth a real-life example? Meaning, are you sure that when you 
> enable the bluetooth microphone you also enable the headset? It seems 
> odd to be that this would be the case; otherwise, how do they "mute" 
> the microphone (hardware stays on but software dumps the samples)?
>
> Thanks,
> Gili
>
> On 11/12/2013 11:17 AM, Harald Alvestrand wrote:
>> Hi,
>>
>> we have encountered a Real Fun Issue in our management of input / 
>> output devices.
>>
>> There are certain devices on certain platforms where there is an 
>> inextricable linkage between an input and an output device - when one 
>> selects the input device, the output device is selected too - and 
>> what's more, the entire platform switches to use that device as its 
>> input and output devices.
>>
>> This will, of course, confuse the hell out of apps that think that 
>> they can manipulate the devices independently.
>>
>> So the question becomes: Should we expose this state of affairs to 
>> Javascript?
>>
>> If no: No problem for us. Maybe for the users.
>>
>> If yes: How?
>>
>> One possibility is to extend getMediaDevices yet again - we already 
>> have a groupId; we could add to it a "bound" field (a boolean, 
>> default false), to indicate that this group is tightly bound together:
>>
>> {
>>    deviceId: xxx
>>    kind: audioinput
>>    label: BluetoothHeadsetMicrophone
>>    groupId: 37
>>    bound: true
>> }
>> {
>>    deviceId: yyyy
>>    kind: audiooutput
>>    label: BluetoothHeadsetSpeaker
>>    groupid: 37
>>    bound: true
>> }
>>
>> Applications that know to look for it will then "know" that these 
>> will be bound together.
>>
>> Doesn't seem particularly elegant. It might get the job done.
>>
>> Thoughts?
>>
>>
>

Received on Wednesday, 11 December 2013 23:37:16 UTC