- From: Jan-Ivar Bruaroey <jib@mozilla.com>
- Date: Mon, 14 Sep 2015 22:20:20 -0400
- To: Harald Alvestrand <harald@alvestrand.no>, Martin Thomson <martin.thomson@gmail.com>, "public-webrtc@w3.org" <public-webrtc@w3.org>
- Message-ID: <55F78064.1050802@mozilla.com>
On 9/14/15 9:17 PM, Harald Alvestrand wrote: > On 09/14/2015 02:38 PM, Martin Thomson wrote: >> What happens when MediaStreamTrack changes resolution to something >> outside of the negotiated envelope of the session? There is no >> language in the spec. Presumably if the resolution can be reduced, >> reduce it. Increasing resolution might be the only option we have in >> the case that the session has a resolution floor. > Section 5: > > Let's look at a slightly different situation starting from the same > point. In this case, instead of the first track attempting to apply a > conflicting constraint, the user physically locks the camera into a > mode where the fill light is on. At this point the source can no > longer satisfy the second track's mandatory constraint that the fill > light be off. The second track is transitioned into the muted state > and receives an|overconstrained| > <http://w3c.github.io/mediacapture-main/getusermedia.html#event-mediastreamtrack-overconstrained>event. > > More info in section 11.1.1. Constraints are properties of the application, not the browser, and no constraints were violated here. > > What happens when aspect ratio changes? Letterbox & pillars? > > That's a better question. I remember discussing this subject in Boston, with one option being that one could have a constraint (or constraint-like setting) that chose one of the defined values for the object-fit CSS attribute: fill, contain, cover, none or scale-down. > > https://css-tricks.com/almanac/properties/o/object-fit/ > > But nobody's suggested text in the intervening 2 years, so I guess it's not that important. > (My suggestion would be to default to "contain", which causes letterbox and pillars.) In browser-to-browser cases, this should not be an issue. In Firefox we already see this with replaceTrack: https://jsfiddle.net/oyabqd0j/ (shows changing dimensions, aspect and frame-rate without problems). No need for letterbox or pillars. I'm no expert on SDP and "negotiated envelopes" but that sounds like edge-cases talking to legacy or special hardware, which may explain why no-one cares. I think we should crop if this ever happens. FWIW, getUserMedia in Chrome crops. E.g. try 640x360 on OSX. .: Jan-Ivar :.
Received on Tuesday, 15 September 2015 02:20:50 UTC