It is unclear when applyConstraints is expected to succeed.
The spec seems to indicate that any width/height/frameRate that are in the capabilities range should be good.
But the capabilities is the max, which would indicate that upsampling might be required if the width constraint is greater than the last enqueued video frame.
Looking at what Chrome is doing, it seems that:
When there is no frame written, applyConstraints is always rejecting
applyConstraints may reject if width/height is above the last enqueued frame (even though capabilities might be bigger).
settings are tied to the last video frame size so it might change even if applyConstraints was called.
My understanding of what we want is a way to downsample resolution and frame rate.
Maybe we should make it clear this goal in the spec, if we agree on this.
It would be good to provide some kind of algorithms or/and provide an extensive test suite in this area.
Without this, it might be difficult to get interop.
It is unclear when applyConstraints is expected to succeed. The spec seems to indicate that any width/height/frameRate that are in the capabilities range should be good. But the capabilities is the max, which would indicate that upsampling might be required if the width constraint is greater than the last enqueued video frame.
Looking at what Chrome is doing, it seems that:
My understanding of what we want is a way to downsample resolution and frame rate. Maybe we should make it clear this goal in the spec, if we agree on this.
It would be good to provide some kind of algorithms or/and provide an extensive test suite in this area. Without this, it might be difficult to get interop.