This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 22593 - Capabilities are buggy
Summary: Capabilities are buggy
Status: RESOLVED WORKSFORME
Alias: None
Product: WebRTC Working Group
Classification: Unclassified
Component: Media Capture and Streams (show other bugs)
Version: unspecified
Hardware: PC Linux
: P2 normal
Target Milestone: ---
Assignee: public-media-capture@w3.org
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-07-08 15:42 UTC by Dominique Hazael-Massieux
Modified: 2014-04-03 14:25 UTC (History)
3 users (show)

See Also:


Attachments

Description Dominique Hazael-Massieux 2013-07-08 15:42:42 UTC
I'm struggling to make sense of the "Source capabilities" section in Media Capture and Streams.

First, trivially, the typedef for CapabilityList should presumably be sequence<DOMString> rather then "sequence" (which doesn't make sense).

In practice, though, it's not clear why that a sequence of DOMString is used generically through this typedef rather than more specific types where useful (e.g. SourceTypeEnum for sourceType).

I don't understand either how a given source could have a sequence of sourceId or a sequence of facingMode rather than a single value; I'm not sure whether a sequence of sourceType make sense either — that probably depends whether a camera that can record sound should appear both as a camera and as a microphone (the spec isn't clear on that).
Comment 1 Stefan Hakansson LK 2014-02-20 13:27:53 UTC
Dom,

are your concerns addressed in the updated draft?
Comment 2 Dominique Hazael-Massieux 2014-02-20 16:23:16 UTC
Most of my concerns are addressed, but the following questions remain open from my initial bug report:

* facingMode is described as a PropertyValueSet (i.e. takes a list of values); I'm not clear how a camera can be facing different directions at once; this may make sense, but if it does, it should be more clearly explained the description of the facingMode constraint

* conversely, sourceType is described as a single value ("none", "camera" or "microphone"); but it feels like some devices might have both a camera and mike, so I don't why the type of sourceType is not PropertyValueSet; again, this might make sense, but additional explanation in the definition would be needed

(I haven't dived into the more general updated model of constraints/capabilities/settings yet; it still makes me feel dizzy though…)
Comment 3 Harald Alvestrand 2014-04-03 07:57:34 UTC
A source has only a single source type.

A device with both camera and microphone will be described as two sources with the same groupId - that's why we added groupId.
Comment 4 Dominique Hazael-Massieux 2014-04-03 09:14:32 UTC
Makes sense; so that leaves the question of the meaningfulness of having an array of values for facingMode in capabilities.

In particular, the example in 11.3 has:
   facingMode": ["user", "environment"]
which doesn't make sense to me; it may be that there is some (obsolete?) ambiguity about whether capabilities are at the UA level (which the text in 11.3 seems to imply) or at the source level.
Comment 5 Harald Alvestrand 2014-04-03 14:25:02 UTC
This bug has been resolved through discussion.

Remaining issue - of whether facingMode can ever be multivalued in Capabilities - is filed as a separate bug:

https://www.w3.org/Bugs/Public/show_bug.cgi?id=25247