20:57:51 RRSAgent has joined #mediawg 20:57:55 logging to https://www.w3.org/2023/10/10-mediawg-irc 20:57:58 Zakim has joined #mediawg 20:58:09 Meeting: Media WG meeting 20:58:20 Agenda: https://github.com/w3c/media-wg/blob/main/meetings/2023-10-10-Media_Working_Group_Teleconference-agenda.md 20:58:26 scribe+ cpn 21:01:19 tidoust has joined #mediawg 21:01:27 eugene has joined #mediawg 21:02:03 RRSAgent, draft minutes 21:02:04 I have made the request to generate https://www.w3.org/2023/10/10-mediawg-minutes.html tidoust 21:02:06 present+ Xiaohan_Wang, Eugene_Zemtsov, Harald_Alvestrand, Francois_Daoust, Chris_Needham 21:02:10 Chair: Chris_Needham 21:02:21 present+ Jer_Noble 21:02:39 rrsagent, make logs public 21:04:00 Xiaohan has joined #mediawg 21:04:03 present+ Eugene_Zemtsov 21:04:50 present+ Tommy_Steimel, Dana_Estra 21:05:10 present+ Xiaohan_Wang 21:06:29 scribe+ tidoust 21:06:49 jernoble has joined #mediawg 21:07:32 marcosc has joined #mediawg 21:07:59 eugene: WebCodecs issues are low priority. One of them should just be resolved. Happy to rearrange the agenda to put them last. 21:08:20 cpn: Managed MediaSource? 21:08:54 marcosc: Not to be discussed in great detail today. Jean-Yves has started to work on a PR. Hopefully, by the next time we meet, we'll have a PR ready for discussion. 21:09:06 i/eugene:/Topic: Agenda bashing 21:09:19 cpn: OK, let's review that in detail when there's a PR then 21:09:56 Topic: Media Session 21:10:11 cpn: We identified a couple of issues when we prepared the agenda with Marcos. 21:10:53 subtopic: The freezing in the artwork getter is broken #237 21:11:00 -> https://github.com/w3c/mediasession/issues/237 #237 21:11:23 cpn: Ability to mutate the metadata 21:11:39 marcosc_ has joined #mediawg 21:12:54 marcosc: Problem is that the PR is not addressing the core of the issue. IDL usage issue. As Jan-Ivar points out, we should at least try to make sense of what's been implemented. 21:13:38 ... I would be surprised if implementations would do something weird beyond what IDL usually allows. 21:14:06 jernoble: Webkit's implementation should only modify the metadata internally when it's first set. Modifying the object afterwards would have no effect. 21:14:34 marcosc: That makes sense. That may also confuse developers who may think that they have something mutable at hand. 21:15:03 ... We need to evaluate whether the PR is backwards compatible with what's been implemented. 21:15:25 ... According to Jan-Ivar, Firefox is the only one using a FrozenArray. 21:15:44 cpn: Youenn asks to update the PR according to this feedback in the previous comment. 21:15:54 ... and make a new issue for the follow-up stuff. 21:16:55 marcosc: Not clear whether Chun-Min is still going to do something about it because it's been several years since the last comment. 21:17:11 cpn: With Mozilla, I think. Jan-Ivar should be the right point of contact. 21:18:02 Tommy: I haven't checked Chrome's implementation. I would like to get a better state. We need to figure out what other browsers are doing. 21:18:26 marcosc: If you can update the thing thousands of time, that's going to be a problem. 21:18:38 ... That thing shouldn't be updatable after it's been set. 21:18:55 Tommy: Setting the metadata to a new object would be the right thing to do, then? 21:19:45 marcosc: Need to evaluate. The core is figuring out what implementations do for the time being. It's a very edgy thing. I don't imaging anybody updating the artwork this way. 21:20:34 cpn: Desired end state: assigning a new object to the metadata. After that, it's all readonly when you read it back through Media Session. 21:20:41 marcosc: I guess. 21:20:56 ... Let's look at implementations first, and get back to it. 21:21:07 Tommy: I can evaluate what Chrome is currently doing for sure. 21:21:09 hta has joined #mediawg 21:21:34 marcosc: I think Youenn tested Chrome about a month ago. 21:22:05 ... Larger question for Chrome is whether changing something in that array has some side effect. I very much doubt that's the case, but I could be surprised! 21:22:24 cpn: OK, clear next steps on that. 21:22:52 Topic: EME - Allow getStatusForPolicy() to reject the promise with NotSupportedError 21:22:55 https://github.com/w3c/encrypted-media/issues/513 21:23:03 -> https://github.com/w3c/encrypted-media/issues/513 #513 21:23:56 Xiaohan: We want a clear signal about the case where platforms can enforce HDCP status but there's no way to know beforehands. 21:24:47 ... A lot of DRM systems can do the enforcing already, but do not necessarily expose that to the outside world. 21:25:08 ... Previously, there were workaround, testing a key to obtain a license. 21:25:37 marcosc: What is able to disable this particular feature? 21:25:48 ... What results in NotSupported error? 21:26:08 Xiaohan: When the platform doesn't know whether it can support this HDCP level or not, it would report this error. 21:26:33 marcosc: Wondering whether it exposes anything from a privacy perspective or not. 21:26:50 Xiaohan: It's typically a limitation of the OS or the device. 21:27:28 ... Examples: Old Chromecast devices. Linux as well. 21:27:54 ... From a privacy perspective, this API itself has privacy concerns. What's added there does not, I think. 21:28:10 jernoble: Does that kind of confuse the meaning of outputRestricted? 21:28:34 ... Mixing of meanings between e.g., iOS and Linux. 21:29:06 Xiaohan: If we have a key with this queried HDCP level, then outputRestricted might be issued. Which is different from cannot play at all. 21:29:19 jernoble: I see. 21:29:43 ... What seems to be missing here, there isn't a value in mediakeysession that can tell you "I cannot tell you right now". 21:29:50 ... Impossible to say. 21:30:20 Xiaohan: It goes back to the initial spec. The best way for consistency is to reflect things with a key status. 21:30:39 ... I agree with you that we cannot represent this with a key status. 21:31:10 jernoble: On those platforms where you can't query ahead of time, do you get good results when you start playback? 21:31:32 Xiaohan: Yes, that's the expectation. If you know in advance that it's not going to work, you should report outputRestricted. 21:32:02 jernoble: The thing I worry about is changing an API to reject when it previously did not. May break things. 21:32:40 Xiaohan: Good news is that Chrome's implementation already rejects because it does not fully respect the original proposal. 21:33:19 marcosc: From an architecture perspective, whenever you return a Promise, you should expect that the Promise may reject. 21:34:24 jernoble: Webkit at least should not have this issue because we don't have to run across that wide variety of hardware. 21:34:54 marcosc: One thing to think about: people may assume something from missing information that is not really implied. 21:35:50 jernoble: I don't think that we implement this API yet. But it's been requested. 21:36:15 ... I am fine with the proposal after talking it through. 21:36:36 ... I am ok with newly rejecting when you can't satisfy the demand of the API. 21:36:44 cpn: That's good. 21:37:03 cpn: On a side note, we should aim at publishing EME as First Public Working Draft. 21:37:23 Xiaohan: Planning to exchange with Greg this week. 21:38:59 cpn: If there's anything that I can help with on that, let me know. 21:39:16 Topic: WebCodecs 21:39:30 subtopic: Alpha support #200 21:39:40 -> https://github.com/w3c/webcodecs/issues/200 #200 21:40:19 eugene: Reports from people trying to decode streams with alpha. Depends on codecs, such as H.265 where alpha is carried as a separate thing. 21:41:09 ... From spec point of view, it's possible to encode a frame with alpha. However, for decoding, for cases where alpha channel needs to be carried out separately, it's impossible to support because no place to put this alpha data. 21:41:59 ... I'm curious about implementation status and plans in browsers, and if we should think about including alpha channel in decoders as well. It's kind of strange to have an asymetry between encoding and decoding. 21:42:14 ... No PR for now. 21:43:06 jernoble: If I remember right, on VP8 and HEVC and AV1, the alpha support is on a separate layer. Similar problem to Dolby Vision. A couple of other proposals where it's a progressive video proposal. 21:43:22 ... I do wonder whether there's a more general problem than alpha channel. 21:43:38 ... How to pass additional data layers to the decoder. 21:43:48 ... So yes, it is a problem. 21:44:08 eugene: Similar problem with SVC, come to think about it. Maybe I need to look into that. 21:44:23 ... Small resolution frame, and on top of that, data to make a higher resolution frame. 21:44:35 ... HEVC has alpha channel in the same channel, I think. 21:45:06 jernoble: I'm not certain about that. Last I checked a few years ago, that was not the case but ISOBMFF stuff may have changed things. 21:45:26 eugene: OK. Anyway, that's a very good point to look at the broader perspective. 21:45:46 cpn: We already have the alpha side data. Is that WebM specific? 21:46:00 eugene: Yes. More codec specific though, container may vary. 21:46:37 jernoble: I don't know whether you can mix and match codecs within the same container. e.g., HEVC stream with AVC alpha channel. 21:47:16 ... The canvas folks are looking into HDR colors and people are going to be willing to use some advanced codecs for that with WebCodecs. 21:47:37 subtopic: Can we drop the secure context (https) requirement? #383 21:47:49 -> https://github.com/w3c/webcodecs/issues/383 #383 21:48:11 eugene: Situation has not changed. Chromium is disinclined to expose new APIS to non secure contexts. 21:48:45 jernoble: not the right person to ask, Youenn would be a better person there. 21:48:59 cpn: I'm wondering whether that's a general thing, or something specific about WebCodecs. 21:49:37 ... The person raising this has a pretty valid use case, using security camera, likely on their local network. 21:50:14 eugene: Self-signed certificates and, in Chromium, there is an exception list for websites to be treated as secure contexts even though they're not secure. 21:50:29 ... I could link to this. 21:50:45 cpn: I think that's worth doing. Helpful for the person developing some open source project. 21:51:59 eugene: Back to alpha support, next step is to look whether that can be combined with the other scenarios that Jer mentioned. 21:54:14 cpn: It was good to see people at TPAC. Let me know if you have feedback on how to progress things. Next meeting should be November 14. 21:54:15 RRSAgent, draft minutes 21:54:16 I have made the request to generate https://www.w3.org/2023/10/10-mediawg-minutes.html tidoust