-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Constraints for Captured Display Surfaces should move to MediaTrackSettings #66
Comments
What properties of the selected display surface are you referring to? |
The constrainable pattern appears to force our hand here. It has no concept of read-only constrainable properties, which I think means that if we want to humor that pattern, we must define these as constrainable properties (and ignore/throw That said, good observation that we're not extending |
I am referring to the new constraints defined in section 5.3. "Since the source of media cannot be changed after a MediaStreamTrack has been returned and constraints do not affect the selection of display surfaces, these constraints cannot be changed by an application." With this restriction in place, I believe it would be more appropriate to define them as "Setting" which is read-only.
The new constraints defined in section 5.3 are not allowed within those constraints.
I agree. Should we also mention which methods should user expect to fill these properties? i.e., getSettings(), getCapabilities() should but getConstraints() should not. |
That's not a separate thing. "A setting refers to the immediate, current value of the source's constrainable properties". I think "read-only" in this context means |
E.g. like we do for "setting deviceId constraint can only cause the resulting MediaStreamTrack to become overconstrained. " |
Correct me if I got this wrong. What you are suggesting to still add these properties as a partial dictionary on MediaTrackConstraints, but always return |
Sorry, I should have said they will be ignored, because they're not required ( E.g.
Well, because they are "supported", but yes. The current definition of getSupportedConstraints does not explicitly guarantee that they do something when set, only that the browser implements those constrainable properties (not that they're effectively actually constrainable).
Would it be more confusing than |
I see three options here for
|
Thanks for the clarification. Considering #62 as well, I think defining these properties as partial dictionary on all 4 dictionaries as you suggested earlier makes more sense now.
|
That is apparently the case for Firefox, where Can the various stream and media capture API specifications clarify what constraints are and are not actually applicable and capable of being set relevant to the respective media stream and capture APIs? |
@jan-ivar Not entirely sure if attempting to set |
This issue has not seen any activity in a long time. It appears that, important though it is, it is not important enough to merit action. I am closing this. Feel free to reopen. |
The spec currently allows constraints to observe the properties of the selected display surface. These are only observable, such that they cannot be changed after returned.
The way it is working right now, they would be better defined under getSettings() and partial dictionary should be defined on MediaTrackSettings. The aim here seem to be to allow the application to query the current settings of the object's constrainable properties, which getSettings() does exactly. Putting these as read-only exceptional cases under getConstraints() seems to overlap with what getsettings() should do.
The text was updated successfully, but these errors were encountered: