01:46:59 RRSAgent has joined #textcueapi 01:46:59 logging to https://www.w3.org/2019/09/18-textcueapi-irc 01:47:01 rrsagent, make logs public 01:47:04 wseltzer has left #textcueapi 02:07:06 nigel has joined #textcueapi 03:04:38 nigel has joined #textcueapi 04:32:07 nigel has joined #textcueapi 05:30:13 nigel has joined #textcueapi 05:35:53 gkatsev has joined #textcueapi 05:36:25 atai has joined #textcueapi 05:36:44 nigel_ has joined #textcueapi 05:36:58 tidoust has joined #textcueapi 05:37:54 scribe: tidoust 05:38:19 -> https://www.icloud.com/keynote/0GJUbJwWfA2i77M2JysKjj45w#Generic_Text_Cue_-_FOMS_2019 Slides 05:38:28 Present+ Nigel_Megitt 05:38:35 Tess: [introduces the problem space] 05:38:41 pal has joined #textcueapi 05:39:08 takio has joined #textcueapi 05:39:11 ... It you use the browser's built-in captioning system, you get things such as user stylesheets for free, but if you don't, you're on your own. 05:39:12 MasayaIkeo has joined #textcueapi 05:39:34 ... Also you don't get to participate in platform integration such as PiP. 05:40:08 ... Why? We have a large corpus of existing captions. Also, WebVTT does not handle all cases. 05:40:28 ... All this suggests that a smart thing to do would be to decouple delivery from display. 05:40:54 ... So that the user agent can at least participate in the rendering of captionings 05:41:43 ... Essentially, goal is to insert a cue model before the cue gets displayed so that, in the future, you can add support for a variety of formats. 05:42:12 ... In-band captions come in a variety of formats, if browser supports, this proposal would allow this to be handled. 05:42:40 ... What requirements for the data model? 05:43:04 ... It has to be reasonably expressive, and it should be really easy to use for the common caption formats out there, starting with WebVTT. 05:43:07 cyril has joined #textcueapi 05:43:18 ... Also the data model itself should be easy to manipulate in JS. 05:43:57 ... [showing an example in WebVTT and IMSC1, and how a data model could represent that] 05:44:13 ... Web app should be able to create these things by hand 05:44:48 ... Basic proposal is to extend the basic TextTrackCue interface and to restructure parts of WebVTT and TTML. 05:45:46 ericc: [showing a demo of a version of a modified Webkit] 05:46:25 ... TextTrackCue is an abstract interface in HTML. No constructor. I have modified that so that it has a constructor that takes a start/end time and an object that follows the data model that describes the cue 05:47:12 ... [Big Buck Bunny demo] 05:48:14 [Polyfill demo at https://sandflow.com/ttapi-demo/big-buck-bunny.html] 05:49:33 ericc: The data model is verbose when there are styles. But caption can be text only, with default styles. 05:50:33 ... [showing demo with more styles and regions] 05:50:46 ... It's obviously possible to apply very complex styles. 05:51:15 pal: The basic idea is to use the TTML model constrained by IMSC, because that seems to be a good place to start. 05:51:28 ... If gaps are found, we can backport them in TTML and IMSC. 05:51:47 ... It's exactly the same model. Both the content model and the style properties. 05:51:58 ... Most of the styles are direct mappings to their CSS counterparts. 05:52:32 ... Some people may ask how to define the HTML rendering. There's some open source code that can show how to do it. 05:53:23 ericc: What I've done in this version of Webkit is to take a JS library that understands this data model and outputs a document fragment 05:53:40 glenn: Could you represent the data model as a document fragment directly? 05:54:11 ... Instead of going to the process of translating from this data model to document fragment, could you use a serialized version of a document fragment? 05:54:23 ericc: Allowing that as an input? 05:54:42 ... Allowing to take that as input might make some people nervous. 05:54:49 glenn: Yes, with scripts disabled. 05:55:29 nigel: We discussed this last year and the years before that. These concerns were raised. 05:56:18 glenn: The reason I ask is that there are other CSS properties than those defined in this list and if I want to construct a TextTrackCue object that uses them, it would be good to have a mechanism that makes it possible. 05:56:36 ... E.g. TTML2. 05:57:14 pal: There is a pseudo-classes in the proposal that follows WebVTT and that addresses a lot of use cases. 05:57:41 ... The model is easily extensible. 05:57:51 glenn: Adding means writing more code and landing the changes. 05:58:13 ericc: If CSS can be used, I don't see why you wouldn't be able to use your own stylesheet directly. 05:58:53 gary: WebVTT only allows certain CSS. Do we want to open it up? 05:58:59 ericc: No, I don't think so. 05:59:48 glenn: IMSC is evolving. We're adding new properties to it. I just don't want to be restricted. It would be good to have a built-in extensibility mechanism. 06:00:00 pal: In my mind, this evolves as well. 06:00:25 glenn: Yes, but I'm trying to avoid changing the code in the browsers. The way you suggest it is to have browser vendors update their code. I'd like to avoid that. 06:00:35 ericc: We should talk to find a safe way to do it. 06:00:47 nigel: What about the metadata? 06:00:52 pal: No metadata for now. 06:01:18 nigel: Would it be useful to have an API that allows the author to access metadata? 06:01:50 ericc: Since this is a JS API, the cues need to be created from script. You can add any attribute you want to, when the event fires, you'll get it back. 06:02:06 ... There is a "content" attribute, I think. 06:02:18 ... If you want to add something else to the cue, you can certainly do that. 06:03:55 mounir: we talked about that at FOMS. I don't have strong opinion on the API. Feedback is same as for WebVTT: people got fed up because of slightly different implementations. I think the same would happen here. 06:04:11 tess: How do you do captions in PiP? 06:04:17 mounir: We don't support captions in PiP. 06:05:09 nigel: Question about positioning. 06:05:30 ... Page gets some video in there and cues. How do you relate the pixels of what you draw to the video? 06:06:07 pal: Each cue renders a rectangular region which typically overlaps the video. 06:06:24 nigel: How does that relate to PiP 06:07:07 shu has joined #textcueapi 06:07:17 mounir: People cannot do that by design if they use WebVTT. Assuming we can have web sites that want to make use of this solution, that would be much easier. 06:08:08 greg: At Netflix, we'd be interested from a rendering, accessibility and performance perspective in this solution. 06:08:53 s/and performance/, synchronization, and performance/ 06:09:00 markw: For accessibility, we do have site-wide customization, if the customization in the browser has default values, there may be a conflict between Netflix default values and UA default values. 06:09:11 ericc: Right, that may be an issue. 06:09:36 greg: In this model, would there be device settings? 06:09:58 pal: Regulatory requirements whereby users can select particular styles? 06:10:22 i/ericc: Right/nigel: Same issue for BBC 06:10:44 ... Generally providing hooks allows these styles to apply in the first place. 06:11:37 ericc: [showing Safari style UI]. Checkbox allows to let video override some of the settings. 06:11:44 ... We honor that. 06:11:51 s/Safari/Mac OS/ 06:12:08 pal: Having a common API gives us an opportunity to have a common approach. 06:12:27 greg: OK, it looks that we can, we just have to do things in JS. 06:14:19 james: I want to clarify that this is not specific to Mac OS. That's written in the FCC mandate that the user style should be able to override. 06:14:34 greg: Not one by one, as a whole. 06:15:20 pal: My point is that by having a common model, we can at least have a common ground for discussion. 06:15:29 andreas: I agree with Pierre. 06:16:07 ... In general, I think that's a really great proposal. Speaking from a German / Swiss perspective, we have troubles bringing captions from broadcasters to the Web. 06:16:15 ... Different formats, etc. 06:16:35 ... That leads to accessibility issues. 06:16:45 ... Really important that we try to work on this. 06:17:21 i/pal: My point is that/nigel: Please don't force FCC requirements on the whole world through standards - they're not accepted as good everywhere. 06:19:03 chcunningam: Can you find a way to work with HTML directly to avoid a JSON format? 06:19:17 pal: That's where I started but doesn't work in the end. 06:19:39 ericc: The browser needs to understand exactly what's what so that we can apply the user styles to the right portions of the captions. 06:19:58 cyril: Having pre-defined classes. 06:20:04 pal: That's how WebVTT works. 06:20:34 i/greg: OK/nigel: You could probably spec how the OS settings are applied by defining a place where OS style settings are inserted into the JSON structure before presentation. 06:20:47 chcunningam: By adding an API that also doesn't respect Netflix's default styles, we're not solving the issue, right? 06:21:12 ericc: It depends on the perspective. For us, it's extremely important to respect user's accessibility settings. 06:21:38 ... This proposal is intended to make it easier for people who feel that they need to render their captions themselves. 06:22:29 greg: Having a proposal that allows user to go to the site or to the device is good. 06:23:03 q+ 06:23:18 ericc: We can't use styles outside of the shadow dom because that would be a massive fingerprinting issue. 06:23:32 Zakim has joined #textcueapi 06:23:41 s/use styles/expose user's styles/ 06:23:46 q+ cyril 06:24:04 q+ to ask about exposing the document fragments to AT 06:24:46 chcunningam: If you had class names that say "this is the text" or "this is the speaker name", then perhaps you could handle some of it that way 06:25:05 ericc: You mean an alternative that uses a document fragment instead of this? 06:25:11 chcunningam: yes. 06:25:42 tess: I would just have to see it work with concrete examples. 06:25:45 ack cyril 06:25:46 q+ to say that webvtt already has a example with their color classes like .blue and .bg_blue 06:25:58 cyril: I heard support for this activity. Where do we work on it? 06:26:34 tess: I understand that there's a Timed Text WG that meets tomorrow. That's a start. We could also start with WICG and take it from there. 06:26:56 ... The shape of the current proposal is patches to WebVTT and TTML specs. 06:27:13 ... This might be a temporary document. 06:27:24 s/WebVTT and TTML/WebVTT and HTML 06:27:40 andreas: I would definitely support to propose this to WICG. We need more experts than we have in the Timed Text WG. 06:28:08 tess: I'm hearing we should start a WICG discource thread. 06:28:53 pal: Any new feature that may arise would need to be backported in TTML. 06:29:05 glenn: As this stands, the defined classes are close to IMSC 06:29:51 pal: If we need something that is neither in CSS nor TTML, then we need to take the discussion back to TTWG to understand why it needs to be added. 06:30:13 glenn: It could also add new entropy to the process. 06:30:33 mounir: The main point is the API design, not really the accessibility part of it. 06:30:46 pal: yes, just join the TTWG if you want to talk about accessibility. 06:31:04 q? 06:31:34 cyril: If the WICG says that a Document fragment can be used, then it opens up other possibilities such as graphics overlay. 06:31:47 tess: We're out of time, thanks! 06:31:54 RRSAgent, make logs public 06:32:02 Meeting: Next Generation TextTrackCue 06:32:05 MasayaIkeo has joined #textcueapi 06:32:22 Chair: Eric Carlson, Tess O'Connor, Pierre-Anthony Lemieux 06:32:29 RRSAgent, draft minutes 06:32:29 I have made the request to generate https://www.w3.org/2019/09/18-textcueapi-minutes.html tidoust 06:44:06 MasayaIkeo has joined #textcueapi 07:04:35 nigel has joined #textcueapi 07:05:11 pal has joined #textcueapi 07:18:47 tidoust has joined #textcueapi 07:21:58 nigel has joined #textcueapi 07:22:32 nigel_ has joined #textcueapi 07:31:48 pal_ has joined #textcueapi 07:31:52 tidoust_ has joined #textcueapi 07:31:59 nigel has joined #textcueapi 07:33:16 zakim, list attendees 07:33:16 As of this point the attendees have been (no one) 07:33:24 zakim, list participants 07:33:24 As of this point the attendees have been (no one) 07:35:35 pal_ has left #textcueapi 07:45:25 atai has joined #textcueapi 07:47:17 MasayaIkeo has joined #textcueapi 07:51:57 tidoust_ has joined #textcueapi 07:59:56 tidoust has joined #textcueapi 08:00:07 nigel_ has joined #textcueapi 08:00:52 atai1 has joined #textcueapi 08:31:24 tidoust has joined #textcueapi 08:35:01 nigel_ has joined #textcueapi 08:35:46 nigel has joined #textcueapi 08:37:41 MasayaIkeo has joined #textcueapi 08:38:14 MasayaIkeo has joined #textcueapi 09:31:45 nigel has joined #textcueapi 09:33:21 MasayaIk_ has joined #textcueapi 09:57:30 Zakim has left #textcueapi 10:06:29 MasayaIkeo has joined #textcueapi 11:55:32 tidoust has joined #textcueapi