RE: A thorny device selection issue

What is the use of the groupID field if the devices aren't bound?  Is it to tell the app that they might both go away at the same time?  It seems to me that at the very least bound should be the default value for devices in the same group.  Then we could have a special notation for devices that are part of the same hardware but can be selected separately.

- Jim

-----Original Message-----
From: Harald Alvestrand [mailto:harald@alvestrand.no] 
Sent: Wednesday, December 11, 2013 11:17 AM
To: public-media-capture@w3.org
Subject: A thorny device selection issue

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 16:26:11 UTC