21:01:05 RRSAgent has joined #mediawg 21:01:05 logging to https://www.w3.org/2020/07/14-mediawg-irc 21:01:08 RRSAgent, make logs Public 21:01:08 please title this meeting ("meeting: ..."), nigel 21:01:38 Meeting: Joint meeting between CSS WG and Media WG 21:01:48 Agenda: https://github.com/w3c/media-wg/issues/18 21:01:52 ving has joined #mediawg 21:01:57 Present+ Nigel_Megitt 21:02:43 Present+ Chris_Needham, Alan_Stearns, Daniel_Holbert, Florian_Rivoal, Gary_Katsevman, Greg_Freedman, Kevin_Babbitt, Jer_Noble, Matt_Wolenetz, Mounir_Lamouri, Peng_Liu, Simon_Fraser, Simon_Thompson, Vi_Nguyen, Theresa_O'Connor, Jimmy_Huang, Rossen_Atanassov 21:02:50 wolenetz has joined #mediawg 21:03:12 Rossen_ has joined #mediawg 21:03:57 present+ Becca_Hughes 21:03:57 kbabbitt has joined #mediawg 21:04:28 jernoble has joined #mediawg 21:05:27 GregFreedman has joined #mediawg 21:05:35 jimmyhuang has joined #mediawg 21:05:43 pengliu has joined #mediawg 21:06:44 scribe: jernoble 21:06:44 Topic: Introductions 21:07:55 Florian Rivoal, Invited Expert 21:08:14 Daniel Holbert, Mozilla 21:08:16 Alan Stearns, Adobe 21:08:17 smfr has joined #mediawg 21:08:21 Matt Wolenetz, MSE spec co-editor, Google 21:08:22 Jer Noble, Apple 21:08:24 Greg Freedman, Netflix 21:08:29 Simon Fraser, Apple 21:08:32 Rossen Atanassov, Microsoft 21:08:35 Jimmy Huang, Intel 21:08:37 Mounir Lamouri, Google 21:08:38 Kevin Babbitt, Microsoft 21:08:41 Nigel Megitt, BBC, Chair TTWG 21:08:46 Simon Thompson, BBC 21:08:46 Theresa O'Connor, Apple 21:08:47 Vi Nguyen, Microsoft, MediaCapabilities 21:08:48 Peng Liu, Apple 21:08:59 Chris Needham, BBC, Media & Entertainment IG co-chair 21:09:05 Gary Katsevman, Brightcove, Chair TTWG 21:09:56 @Google 21:09:04 Topic: Video Media Queries 21:09:04 florian: introduction of topic: some devices have separate planes for video and graphics contents 21:09:29 florian: these planes have separate properties including width, height, and resolution. and the existing queries target only the graphics plane 21:09:47 chcunningham has joined #mediawg 21:09:52 florian: video sites care mostly about the graphics plane, and would like api to chose an appropriate variant 21:10:16 florian: originally the CSS WG accepted this proposal, but found issues and wondered if these were the correct way of solving this problem 21:11:38 present+ Barbara_Hochgesang 21:11:48 florian: MQs need to come with a unit; CSS pixels? CSS Pixels can mean an angular measurement that changes size based on the distance from the screen. Physical pixels? anchor a CSS measurement to a physical measurement. 21:11:53 beccahughes_ has joined #mediawg 21:12:30 florian: for the video plane, you may want actual literal pixels, which would include a third definition. 21:12:36 q+ 21:13:12 florian: One possibility would be to make these properties unitless. 21:14:09 florian: this issue has an analogue for images, and the general path has been not to do this through media queries. 21:14:43 florian: images must also be sensitive to changes in resolution as windows move between windows, but also to available bandwidth 21:15:14 florian: for images, the UA will chose the appropriate image variant based on not only resolution, but other factors. 21:16:07 florian: this may not be the same solution available for video, but there could be a .js API in which the page provides the available resolutions and properties, then the UA choses the correct variant 21:16:12 q? 21:16:19 florian: were there other arguments pro or con for media queries? 21:16:25 ack chcunningham 21:17:30 chcunningham: question: does it not solve the problem by mapping the pixel ratio to a fixed value? 21:17:48 florian: we could make an allowance, but it's not currently allowed. 21:18:25 florian: what does that then mean when people query for the video plane in "em" units? 21:19:00 florian: There's not a number that is based on font sizes that is correct. 21:19:33 chcunningham: if you use the existing mechanism that ratio, you could discover the ratio. 21:19:57 florian: MQs don't allow you to query for the size of the screen, it only allows you to query for whether the screen is within a provided value 21:20:21 florian: maybe this is the wrong tool, since you can't query the value directly. 21:20:54 chcunningham: I don't think that's a dealbreaker, since sites will have a list of formats or variants with specific resolutions, so that works with the way MQs work 21:21:29 chcunningham: w.r.t. the Picture API; this would be a profound change from how media APIs are used on the web. 21:21:55 chcunningham: in MSE and WebCodecs, the page has low level access to variant selection 21:22:13 chcunningham: clients prefer to make these decisions themselves 21:22:37 q? 21:22:45 q+ 21:22:48 q+ 21:23:08 dholbert: there are also "inch' and "centimeter" units 21:23:25 dholbert: that would be something diffecult to be define; argument for unitless value 21:24:04 q? 21:24:07 florian: if we wanted to do this, we don't want to break all of CSS units, so it would still be a fixed ratio between this value and a CSS inch 21:24:19 ack cpn 21:24:52 cpn: There was a proposal to expose these values on the screen object; is there a value to re-visiting that decision? 21:25:37 florian: the query example is only one possibility; we could also just expose those numbers explicitly. 21:25:54 q+ 21:26:05 cpn: a proposal which inverts the current model that gives all the variant selection to the client would be a big change 21:26:26 ack wolenetz 21:26:41 wolenetz: is there already a way for JS apps to determine the resolution where the video will be composited? 21:27:08 florian: I think the MQ was proposed as a way to expose that value. 21:28:01 wolenetz: the current way media works on the web is to expose to clients underlying capabilities and allow the site to chose variants. 21:28:05 q? 21:28:09 q+ 21:28:17 ack Simon_T_BBC 21:28:35 Simon_T_BBC: set top boxes should be thought about. 21:29:24 Simon_T_BBC: HDMI capabilities must also be taken into account; some may only be capable of a certain frame rate 21:29:45 Simon_T_BBC: There are some non-screen parameters that are important for deciding which variant to chose. 21:30:24 florian: you may want to make a different tradeoff than just available resolution 21:30:28 q+ 21:30:37 q+ 21:30:41 q+ 21:30:47 ack jernoble 21:31:45 scribe: ving 21:31:49 jernoble: as the person who proposed MediaQueries as a possible solution. MQ already provides event mechanism for when that ratio changes when moving windows to different screens. If we did expose something to Screens API, we have to figure out events 21:32:17 q? 21:32:21 scribe: jernoble 21:32:22 q+ 21:32:26 ack GregFreedman 21:32:29 q+ 21:33:04 ack chcunningham 21:34:09 chcunningham: I understand CSS WG is concerned that this is not the correct solution. But we ran this by the WG before it was proposed. Are we back to the drawing board, or is this a minor issue? 21:35:37 florian: I don't think the CSS WG has concluded that this was impossible; merely uneasy. On further reflection, the way it is spec'd cannot work. It doesn't work for print media. We would need to fix the unit issue to make this possible. 21:36:02 florian: we could fix this, but the questions this raises makes this solution feel "odd". 21:36:35 florian: there's also a desire in the CSS WG that for devices that do not have a separate video plane, these properties should be the same for the graphics plane. 21:37:19 florian: screen properties were deprecated, because leaking non-important information, and those properties have privacy implications 21:37:45 florian: CSS pixels can and will be used incorrectly 21:37:58 florian: we think this should return to the drawing board. 21:38:11 q? 21:38:19 florian: the current approach is possible, but not ideal. 21:38:46 ack ving 21:38:53 q- 21:39:22 ving: the Media WG did discuss exposing this to the Screen object; could we get a summary of why Screen is not the ideal proposal? 21:40:16 ving: also, there was a concern about interfaces and cables, but that should be handled through MediaCapabilities API. We're trying to solve the problem of exposing the exact resolution of the video plane on the actual display. 21:41:09 chcunningham: where are you seeing these concerns jernoble listed? 21:41:15 ving: in the notes. 21:42:34 chcunningham: I don't oppose putting this on screen; florian what do you think of having device pixels on the Screen? 21:42:47 florian: my personal feeling is that's ok; we'd need events if that changes 21:43:00 q+, maybe my microphone is working 21:43:01 florian: is this a concern for those devices that have a separate video plane? 21:43:40 q- 21:43:48 mounir: I don't think an event is really an issue. The Screen object doesn't have an event. This is an existing problem in that the Screen's properties can change without an event. 21:44:18 chcunningham: if we expose device pixels on the screen object, we're hitting the same reasons why the existing properties are deprecated 21:44:55 florian: if we expose the video device pixel, you'd just get a number that is in device pixels. You wouldn't have a way to ask for the video plane in "em" unit.s 21:45:04 florian: yes, we'd still have the privacy concern. 21:46:07 GregFreedman: if you put device pixels on the Screen object, you'd still have the problem of the difference between the video and graphics plane. Would you have device pixels for both planes? 21:46:44 GregFreedman: I kind of liked where we landed with the MQ. what we want to do is say: can you support this resolution on the video plane; and that seems like this works with MQ well. 21:46:55 GregFreedman: is the problem that CSS doesn't like the unitless query? 21:47:37 florian: yes, CSS as a language could support it, but if we're on a device that does not have a separate plane, we probably want width: to do the same thing as video-width: 21:47:48 q+ to ask for a reminder of the use cases that remain if we use MediaCapabilities to choose which video to get 21:48:02 florian: additionally, that definition also affects print media 21:48:12 florian: so what should you do on print media? 21:48:29 ack nigel 21:48:29 nigel, you wanted to ask for a reminder of the use cases that remain if we use MediaCapabilities to choose which video to get 21:49:19 nigel: the use case is originally to detect what variant to display. If MediaCapabilities is the best way to query for that, what's left in CSS ? 21:49:56 q+ to say that decoder capabilities exceeding display capabilities shouldn't limit what is decodable 21:50:04 GregFreedman: the device may be capable of doing 4k UHD, but if the display is only 1080p SD, there's no reason to pick that variant. so we split it into two APIs: one to query decode, one to query display. 21:50:20 ving: MediaCapabilies also is not screen aware. 21:50:38 q+ 21:50:51 nigel: could MQs handle that scenario, where there's multiple displays? 21:51:11 hober: we already handle that with the 50%+1 to determine which monitor's properties to return. 21:51:21 chcunningham: that's the implementation in chrome. 21:51:55 cpn: can the UA play this particualar content is answered by the combination of screen and decode capabilities. 21:52:29 cpn: asking these two questions separately doesn't give a complete picture of whether a variant can be successfully played 21:52:47 GregFreedman: MC asks "can we decode this" and MQ asks "should we decode this". 21:53:40 nigel: is the set of things we need to know just the video plane resolution, and the frame rate? 21:54:04 nigel: are there other properties that we need to include? 21:54:11 florian: those do not yet exist? 21:54:27 ack wolenetz 21:54:27 wolenetz, you wanted to say that decoder capabilities exceeding display capabilities shouldn't limit what is decodable 21:54:32 nigel: just wondering about design and what info needs to be included. 21:54:46 q+ 21:54:49 q- 21:55:22 wolenetz: MC already gives you the answer of whether you can decode a given piece of media. Do we try to move some of the properties in MC into MQ? 21:56:10 mounir: oginially there was information in the Screen object. 21:56:39 wolenetz: since MC is already being asked about candidates, maybe MC is the best place to ask more questions 21:57:17 wolenetz: since I'm already using MC, doing that again against a different API is difficult. 21:57:46 chcunningham: I have the exact opposite opinion, respectfully. the Screen API and the MQ API already exists. 21:58:09 q+ 21:58:14 chcunningham: we never considered putting MC queries into the Screen API 21:58:49 mounir: websites already will react to window size changes, e.g., when going into fullscreen. 21:59:02 q+ to suggest that the JS API could take the frame rate as input more easily than MQs 21:59:22 ack jernoble 21:59:30 scribe: mounir 21:59:53 jernoble: we want to answer the question whether the video should be upscaled or downscaled 22:00:01 jernoble: so maybe we should design an API for that? 22:00:15 scribe: jernoble 22:00:15 smfr: I would be reluctant to add new APIs to the Screen api due to fingerprinting concerns. 22:00:24 ack smfr 22:01:14 ack florian 22:01:14 florian, you wanted to suggest that the JS API could take the frame rate as input more easily than MQs 22:01:20 florian: if the frame rate matters, it would be more amenable to a Screen API, since you can pass in parameters to that API, but that style of query isn't possible with MQ. 22:02:46 chcunningham: no option seems to be the clear winner; IMO the least of several evils was the CSS MQ options. 22:03:31 CSS media queries don't remove the fingerprinting vector 22:03:43 chcunningham: I wonder if there is a way to fix this problem 22:03:56 florian: I'd like to ask Simon to clarify this answer about fingerprinting 22:04:59 smfr: it depends on whether it allows you to enumerate all screens. and depends on whether the API allows you to detect whether users have changed their screen resolution or are using non-standard third party screens 22:05:10 smfr: it's still doable with MQ, but you have to binary search, so it's not as easy. 22:05:36 mounir: what's the next step here? shall we move this to GitHub issues? 22:05:54 chcunningham: we haven't discussed any options beyond "fix MQ" or "move to Screen". 22:06:06 lost my webex connection - would there be a way of making a video-playback-specific API that would expose less fingerprinting surface but still be able to answer coarse questions on what can be displayed? How fine-grained do we really need to be for playback? 22:06:40 chcunningham: maybe now that we've had this meeting the CSS WG will come up with an alternate solution that better solves all the use cases 22:07:17 mounir: lets follow up on GitHub; lets try to discuss between MediaWG and CSS WG people there 22:07:43 florian: it's unfortunate that there were fewer voices in the CSS WG than I anticipated; there are conflicting desires in the CSS WG. 22:07:53 florian: I'm unable to represent all those various POV. 22:08:22 florian: but yes, we can explore; either alternative ways of speccing the MQ or alternative API entirely. 22:08:45 chcunningham: thank you florian! and thank you for representing the CSS WG. 22:09:07 jimmyhuang has left #mediawg 22:09:27 rrsagent, draft minutes v2 22:09:27 I have made the request to generate https://www.w3.org/2020/07/14-mediawg-minutes.html cpn 22:09:41 rrsagent, make log public 22:10:25 Chair: Mounir, Jer 22:10:27 rrsagent, draft minutes v2 22:10:27 I have made the request to generate https://www.w3.org/2020/07/14-mediawg-minutes.html cpn