IRC log of tt on 2014-09-16
Timestamps are in UTC.
- 07:03:28 [RRSAgent]
- RRSAgent has joined #tt
- 07:03:28 [RRSAgent]
- logging to http://www.w3.org/2014/09/16-tt-irc
- 07:03:30 [trackbot]
- RRSAgent, make logs public
- 07:03:30 [Zakim]
- Zakim has joined #tt
- 07:03:32 [trackbot]
- Zakim, this will be TTML
- 07:03:32 [Zakim]
- ok, trackbot; I see IA_TTWG()3:00AM scheduled to start 3 minutes ago
- 07:03:33 [trackbot]
- Meeting: Timed Text Working Group Teleconference
- 07:03:33 [trackbot]
- Date: 16 September 2014
- 07:04:11 [nigel]
- chair: nigel
- 07:04:52 [glenn]
- glenn has joined #tt
- 07:06:33 [nigel]
- Present: nigel, glenn, andreas, pal, tmichel, Frans_EBU
- 07:06:45 [Cyril]
- Cyril has joined #tt
- 07:06:51 [nigel]
- Present+ Cyril
- 07:07:59 [elindstrom]
- elindstrom has joined #tt
- 07:08:16 [nigel]
- Present+ elindstrom
- 07:12:01 [nigel]
- Present+ zcorpan
- 07:14:01 [Zakim]
- IA_TTWG()3:00AM has now started
- 07:14:09 [Zakim]
- + +44.192.341.aaaa
- 07:19:40 [nigel]
- zakim, aaaa is me
- 07:19:40 [Zakim]
- +nigel; got it
- 07:20:26 [Zakim]
- +[IPcaller]
- 07:20:52 [nigel]
- zakim, IPcaller is zcorpan
- 07:20:52 [Zakim]
- +zcorpan; got it
- 07:22:08 [nigel]
- https://www.w3.org/wiki/TimedText/geneva2014#Day_1_0900-1700
- 07:22:11 [nigel]
- Topic: Introductions
- 07:22:44 [courtney]
- courtney has joined #tt
- 07:23:40 [nigel]
- scribeNick: nigel
- 07:23:49 [nigel]
- Introductions - Nigel, BBC
- 07:24:04 [nigel]
- andreas: IRT
- 07:24:33 [nigel]
- Cyril: Telecom ParisTech university; GPAC
- 07:24:56 [nigel]
- elindstrom: Opera software
- 07:25:38 [nigel]
- zcorpan: Opera software
- 07:26:02 [nigel]
- tmichel: W3C, staff contact for the TTWG
- 07:26:12 [nigel]
- pal: Movielabs
- 07:26:18 [nigel]
- courtney: Apple
- 07:26:21 [nigel]
- Present+ courtney
- 07:27:26 [nigel]
- glenn: Representing various over the years, currently Cox, previously Samsung and Microsoft
- 07:27:40 [nigel]
- frans_EBU: Coordinator of EBU group on subtitling
- 07:33:28 [nigel]
- Topic: Agenda
- 07:33:38 [nigel]
- nigel: goes through agenda on wiki page, all happy with that.
- 07:33:48 [nigel]
- nigel: We need to think about how we capture our output, and who will edit the note.
- 07:33:55 [nigel]
- courtney: I'm happy to edit the note.
- 07:34:49 [nigel]
- courtney: I don't have a document yet, I've been working on the code first, and have some issues to tackle, and a spreadsheet for attributes.
- 07:38:35 [nigel]
- glenn: For browser implementations mapping direct from TTML to HTML would be more efficient
- 07:40:31 [nigel]
- glenn: If the purpose is for direct display then this mapping would be better, but if we want to interchange to WebVTT then that translation would still be useful.
- 07:41:06 [nigel]
- courtney: I'm interested in captions both inside and outside browser environments so I'm not focused on HTML solely.
- 07:41:33 [nigel]
- andreas: From the mapping we have done we will quite quickly see the overlap - maybe there's a cut and paste into HTML as glenn mentioned.
- 07:41:54 [nigel]
- pal: Re WebVTT outside browsers?
- 07:42:08 [nigel]
- courtney: Yes, e.g. in an ISO MP4 file that is rendered in a video player.
- 07:43:37 [nigel]
- pal: So do we need CSS in practice? To present WebVTT in subtitles and captions?
- 07:43:59 [nigel]
- courtney: You certainly can, but it depends on how fancy you want to be. You can do basic 608 without CSS.
- 07:44:16 [nigel]
- andreas: you need CSS to do colours, and that's certainly required in Europe.
- 07:44:51 [nigel]
- courtney: We define for example a simple mapping from CSS to a property list. I think the better approach is to stick with CSS and
- 07:45:09 [nigel]
- ... have a way to embed it in an MP4 file track, and also in a WebVTT file.
- 07:45:20 [nigel]
- pal: Will the mapping we do today include that?
- 07:45:24 [nigel]
- courtney: yes
- 07:45:32 [nigel]
- Cyril: +1
- 07:45:50 [nigel]
- courtney: I've been thinking that one TTML file will map to a WebVTT file + a CSS file
- 07:46:08 [nigel]
- glenn: That's what I've been thinking, and there's a reusable overlap into HTML/CSS
- 07:46:23 [nigel]
- nigel: I've created a wiki page at https://www.w3.org/wiki/TimedText/TTMLtoWebVTT
- 07:48:01 [zcorpan]
- can you paste the number in irc?
- 07:48:21 [Zakim]
- + +41.22.717.aabb
- 07:48:27 [Zakim]
- -nigel
- 07:48:40 [nigel]
- zakim, aabb is Geneva
- 07:48:40 [Zakim]
- +Geneva; got it
- 07:51:58 [nigel]
- Topic: Work done so far
- 07:52:17 [nigel]
- andreas: presents work so far
- 07:53:48 [nigel]
- andreas: This work has been supported by the HBB4ALL project, whose target is to roll out accessibility to IP connected devices, including subtitles, signing and audio (video) description,
- 07:53:53 [nigel]
- ... with a focus on hybrid broadcast.
- 07:54:44 [nigel]
- ... This is based on EBU-TT-BasicDe as a very restricted TTML feature set.
- 07:55:15 [nigel]
- ... In fact it's a subset of EBU-TT-D which is a subset of TTML plus a couple of small extensions.
- 07:55:36 [nigel]
- ... It has a video frame with a safe area, 10% in from each edge.
- 07:55:45 [nigel]
- ... Alignment is top or bottom only, vertically.
- 07:55:51 [nigel]
- ... Horizontally, centred, left or right.
- 07:56:03 [nigel]
- ... For Germany, it's left to right, top to bottom writing direction.
- 07:56:26 [nigel]
- ... There are 8 different text foreground colours, as from WSTeletext.
- 07:56:45 [nigel]
- ... All subtitles have the same background color, font-family, font-size and line height.
- 07:56:58 [nigel]
- ... Line breaking is done manually with the <br> element at authoring.
- 07:57:33 [nigel]
- glenn: How is the background padding extended on either side of the text?
- 07:57:42 [nigel]
- andreas: That's just in the example image, it's not actually present.
- 07:58:00 [nigel]
- ... How is this mapping achieved? Positioning, Styling, Timing.
- 07:58:10 [nigel]
- ... Positioning:
- 07:58:22 [nigel]
- ... [shows video frame with image of Verona]
- 07:58:50 [nigel]
- ... In TTML and EBU-TT there's a root container. In EBU-TT it's always the height and width of the video. WebVTT uses the viewport concept,
- 07:58:58 [nigel]
- ... which I understand to be the height and width of the video also.
- 07:59:39 [nigel]
- ... For the safe area, we define the tt:region, with top-left being 10% 10% in x y as specified by the origin.
- 07:59:45 [nigel]
- ... The CSS property is topleft
- 08:00:13 [nigel]
- ... The extent is 80% 80%, which in CSS is the width and height of the block level element eg the div
- 08:00:50 [nigel]
- ... To place a subtitle the region is defined once in the head and then referenced by the tt:p element. This is similar to a p in html.
- 08:01:11 [nigel]
- ... The paragraph gets the width of the region, and the height is calculated by the number of lines inside the p element.
- 08:01:31 [nigel]
- ... Vertical alignment is displayAlign: bottom or top.
- 08:01:37 [ample]
- ample has joined #tt
- 08:02:47 [nigel]
- nigel: Will there be CSS mappings for all of these in this presentation?
- 08:03:10 [nigel]
- andreas: This is setting out the features to map, we should consider them in scope for our mapping later.
- 08:04:10 [nigel]
- andreas: I didn't use the advanced concepts in WebVTT of cue alignment, so I didn't use them. I wanted something that would certainly work in current browsers.
- 08:04:40 [nigel]
- ... In WebVTT I've put the cues in for the text. For a width of 80% the cue box has size: 80%
- 08:04:54 [nigel]
- ... The height is defined by the number of lines, just like the p element.
- 08:05:16 [nigel]
- ... This is per cue, so the settings seem to need to be repeated every time. I don't know a way to define it once and have it carried through.
- 08:05:23 [nigel]
- courtney: If you use a region you can do that.
- 08:05:27 [nigel]
- andreas: I didn't use a region.
- 08:05:31 [nigel]
- courtney: Then you have to repeat it.
- 08:06:04 [nigel]
- andreas: So that's positioning. We can define the position of the box from the left of the video frame, with 10%, using position:10% align:left
- 08:06:43 [nigel]
- ... The align setting is important. It works very differently than in TTML e.g. if you set align:middle and position:10% then the reference point for the middle isn't the cue
- 08:06:51 [nigel]
- ... start but is the middle of the cue.
- 08:07:14 [nigel]
- ... So to centre the text then you have position:50% align:middle
- 08:07:48 [nigel]
- ... For vertical alignment it's a bit trickier. To come 10% up from the bottom you can set line:90% or a line number value.
- 08:08:22 [nigel]
- ... But this doesn't align the end of the cue box, but aligns the top of the cue box. So that doesn't work.
- 08:08:42 [nigel]
- .... What you actually need is position:100% - margin - height of cue-box.
- 08:09:01 [nigel]
- ... That works if you have a lot of control over the font height and can calculate the position this way.
- 08:09:10 [ample]
- ample has left #tt
- 08:09:20 [nigel]
- ... In most cases that's a bit risky. So then I changed to the other possibility, to use line alignment
- 08:09:43 [nigel]
- ... The first line in the cue generates the line grid, then you can position the cue box with positive line numbers from the top
- 08:10:00 [nigel]
- ... or negative line numbers starting from -1 from the bottom.
- 08:10:13 [nigel]
- ... [example shows text one line up from bottom]
- 08:10:40 [nigel]
- ... You have to have the snap to lines flag set - this happens automatically if you use line numbers.
- 08:11:12 [nigel]
- ... For one line you can have line:-2, or for a two line subtitle, line:-3. Needs a bit of calculation.
- 08:11:37 [nigel]
- ... A dirty trick possibly is always to set it to -1 and let the renderer push it up. Possibly this is not recommended but it may work.
- 08:11:43 [nigel]
- ... Styling:
- 08:12:16 [nigel]
- ... In EBU-TT-BasicDE there's a default style defined once in the head, and a div element that references the defaultStyle.
- 08:12:42 [nigel]
- ... In WebVTT you can define a general cue selector ::cue and use almost the same property names and values.
- 08:13:24 [nigel]
- ... For font-size some calculation is needed. 60% font size in TTML comes out at 5.33% of the height of the video, which is 100% in CSS.
- 08:13:42 [nigel]
- ... A separate CSS file is needed to contain the ::cue selector.
- 08:14:16 [nigel]
- ... For inline styles in TTML we set the colour attributes on a style referenced from a span.
- 08:14:56 [nigel]
- ... In CSS you can use the pseudo-selector ::cue(c.textWhite) { color: #ffffff; background-color:rgba(0,0,0,0.7); }
- 08:15:13 [nigel]
- ... Then in the VTT c.textWhite cue class
- 08:15:20 [nigel]
- ... Timing:
- 08:15:46 [nigel]
- ... In TTML put a begin and end on, with media timeBase, reference sync is zero. In EBU-TT-BasicDE the fractional seconds are limited to 3 digits.
- 08:15:53 [nigel]
- ... This is the same for WebVTT cues.
- 08:16:33 [DBizzle]
- DBizzle has joined #tt
- 08:18:01 [nigel]
- pal: What are the rules for CSS styles when combined with locally set rules? Which takes precedence between author and user choices?
- 08:18:15 [nigel]
- courtney: We would consider user choices to override author styles.
- 08:18:40 [nigel]
- pal: If you're displaying it on a web page, then web styles taking over seems like not the right thing to do.
- 08:19:01 [nigel]
- andreas: It's not clear to me how the CSS that applies to the web page interacts with the VTT cues. From testing there's no relationship.
- 08:19:16 [nigel]
- ... The video is a separate viewport with independent styling, from my testing anyway.
- 08:19:34 [DBizzle]
- DBizzle has left #tt
- 08:19:47 [nigel]
- Cyril: I think that's not expected. I remember that the cues are sourced in the HTML page so the styles should be applied.
- 08:20:17 [nigel]
- andreas: I tried it out in Opera.
- 08:20:38 [nigel]
- zcorpan: The styling was implemented in presto - I'll put together a quick demo and paste the link
- 08:21:02 [nigel]
- andreas: One important point is that we put the background color just behind the text not the box. From what I read there's no possibility
- 08:22:06 [nigel]
- ... in WebVTT to put the background only on block level elements, e.g. the whole region/p/div etc.
- 08:22:29 [nigel]
- ... It only puts the background behind each glyph. I think there's a WebVTT background box concept but it doesn't seem to apply to the block level.
- 08:23:03 [nigel]
- glenn: So TTML allows the background to be specified on the containing block and possibly differently on the span or the p within the larger block.
- 08:23:33 [nigel]
- ... So this example (showing two spans each with its own background color) wouldn't be possible?
- 08:23:44 [nigel]
- andreas: That's right. In Europe both possibilities are in use.
- 08:24:12 [nigel]
- ... We need to be aware of this restriction in the mapping.
- 08:25:50 [zcorpan]
- http://w3c-test.org/webvtt/rendering/cues-with-video/processing-model/basic.html has styling
- 08:27:56 [nigel]
- zcorpan: This shows how a stylesheet applies to WebVTT cues - the stylesheet is in the HTML page and the cues use those styles
- 08:28:24 [nigel]
- ... There's a white video behind it.
- 08:28:59 [nigel]
- pause for 4 minutes, back at 10:33 (CET)
- 08:32:45 [zcorpan]
- wrt to the positioning discussion, there are open bugs on the webvtt spec for both changing how positioning works and for adding something that allows for exact positioning. https://www.w3.org/Bugs/Public/buglist.cgi?quicksearch=webvtt%20positioning&list_id=43983
- 08:34:52 [zcorpan]
- https://www.w3.org/Bugs/Public/show_bug.cgi?id=25632
- 08:37:26 [nigel]
- nigel: we're reassembling...
- 08:41:47 [elindstrom]
- elindstrom has joined #tt
- 08:42:20 [nigel]
- courtney: Here's what I've discovered from writing mapping code.
- 08:42:44 [nigel]
- ... There's an issue that we don't have an official WebVTT spec yet - we're working off drafts that aren't versioned.
- 08:43:11 [nigel]
- ... When Andreas was talking he was using browser supported features. This is causing a bit of an issue. The mapping I've been doing is off the most
- 08:43:43 [nigel]
- ... current WebVTT spec version. http://dev.w3.org/html5/webvtt/
- 08:43:52 [nigel]
- ... Here are 3 categories of issue:
- 08:44:02 [nigel]
- ... 1. TTMl is more hierarchical than WebVTT
- 08:44:14 [nigel]
- ... 2. The two specs define different properties implicitly vs explicitly.
- 08:44:26 [nigel]
- 3. The basic problem of converting units (value type conversions)
- 08:44:34 [nigel]
- ... Hierarchical vs Flat:
- 08:44:54 [nigel]
- ... WebVTT has a flat structure with no nested elements. TTML provides a hierarchical structure.
- 08:45:52 [nigel]
- ... Metadata: in TTML you can nest metadata hierarchically [shows ttm:agent holmes and Dr Watson]. In WebVTT you get a list with no relationships between them.
- 08:46:03 [nigel]
- ... Proposal for WebVTT is hierarchical metadata keys
- 08:46:41 [nigel]
- nigel: Is that just metadata or presentation issues too?
- 08:47:00 [nigel]
- courtney: It may be less of an issue for presentation issues but there are cases where we run into a similar problem.
- 08:47:27 [nigel]
- ... Another example: Calculating relative timings hierarchically in TTML and linearly in WebVTT.
- 08:48:26 [nigel]
- Cyril: I think some profiles restrict that.
- 08:48:40 [nigel]
- andreas: Yes, EBU-TT-D doesn't allow nested timing.
- 08:48:50 [nigel]
- Cyril: That raises the question which profile are we looking at?
- 08:49:01 [nigel]
- Courtney: Yes, we can simplify the problem by specifying a profile.
- 08:49:19 [nigel]
- glenn: It's useful, though it may take longer, to start from the general case and identify where in the absence of a profile there are issues.
- 08:49:51 [nigel]
- ... For example re timing and even styles we could define a mapping based on the sequence of Intermediate Synchronic Documents, to remove the timing issues.
- 08:49:58 [nigel]
- ... Just documenting these issues is useful.
- 08:50:54 [nigel]
- nigel: We decided last week to use TTML1SE and WebVTT.
- 08:51:35 [nigel]
- andreas: for styling there's some hierarchical structure in WebVTT too, by application of class nodes that are nested.
- 08:52:05 [nigel]
- courtney: Yes you can have nested styles within a cue but if you want the same style for 10 cues you can't put them in a fragment and declare it at the fragment level.
- 08:52:12 [nigel]
- ... Implicit vs Explicit:
- 08:52:38 [nigel]
- ... Some functionality is explicitly described by attributes or parameters in one spec but implicitly derived in the other.
- 08:53:51 [nigel]
- ... For example, horizontal writing direction. In TTML there's a way to specify horizontal direction but in WebVTT there isn't (unless it's vertical) - it's inferred from the font.
- 08:54:32 [nigel]
- glenn: tts:direction is designed to work in relation to the Unicode bidi control characters
- 08:54:36 [nigel]
- q+ zcorpan
- 08:55:01 [nigel]
- glenn: absent of those you can still infer directionality based on the content of the element, though it's harder with mixed content.
- 08:55:25 [nigel]
- ... So the direction attribute in TTML doesn't really say 'write right to left' but does specify the default writing direction in the absence of bidi.
- 08:55:41 [nigel]
- courtney: WebVTT has bidi too, and rtl and ltr entities.
- 08:55:53 [nigel]
- andreas: In Unicode the information is already there.
- 08:56:23 [nigel]
- glenn: You have to look at the history of Unicode - people didn't want to use nestable control codes so they wanted CSS attributes to do the same thing.
- 08:57:02 [zcorpan]
- http://dev.w3.org/html5/webvtt/#h4_processing-model says how to determine direction
- 08:57:14 [nigel]
- ack zcorpan
- 08:57:32 [nigel]
- zcorpan: The horizontal direction is taken from the text in the cue, not from the font (in WebVTT)
- 08:57:51 [nigel]
- ... You can override it with unicode bidi characters if you want.
- 08:57:56 [pal]
- pal has joined #tt
- 08:58:17 [nigel]
- nigel: Seems like there's no issue to log in our issues list.
- 08:58:17 [zcorpan]
- "Apply the Unicode Bidirectional Algorithm's Paragraph Level steps to the concatenation of the values of each WebVTT Text Object in nodes, in a pre-order, depth-first traversal, excluding WebVTT Ruby Text Objects and their descendants, to determine the paragraph embedding level of the first Unicode paragraph of the cue. [BIDI]"
- 08:58:26 [nigel]
- glenn: TTML has the CSS features as well as the plain text.
- 08:59:39 [nigel]
- courtney: Example 2: line breaks - need to be explicit in TTML but can be just new lines in WebVTT.
- 08:59:54 [nigel]
- Cyril: That's due to the parser - XML requires this.
- 09:00:30 [nigel]
- andreas: Later on we can look at xml:space attributes. From the tests I've seen with xml:space="preserve" then line breaks should be preserved.
- 09:00:42 [zcorpan]
- XML doesn't require it really
- 09:01:33 [nigel]
- glenn: In XSL-FO there are 4 different properties. We define an explicit mapping of xml:space to sets of those values, in TTML. We didn't expose the full XSL-FO model.
- 09:02:28 [nigel]
- courtney: Value Type Conversions
- 09:02:31 [glenn]
- tnx 4 reminder
- 09:02:52 [nigel]
- courtney: Example 1 - times
- 09:03:13 [nigel]
- ... TTML has different time expressions, WebVTT always has hh:mm:ss.sss with fractional seconds.
- 09:03:39 [nigel]
- ... Fortunately the ttp: namespace defines all the required metadata to do the conversions.
- 09:03:48 [nigel]
- ... Though I'm not sure that's the case with lengths and position values
- 09:04:04 [nigel]
- ... Again TTML allows a broader set of units - pixels, em, cells, %ages
- 09:04:39 [nigel]
- ... I'm assuming lineHeight is sort of like em. For some TTML documents I think you need the authored video dimensions to do the mapping.
- 09:05:19 [nigel]
- pal: I think if you use %age or c you don't need the video dimensions. If you're going to use pixels then implementations should use tts:extent on the root as well.
- 09:05:59 [nigel]
- glenn: By specifying extent on the root you can derive a pixel dimension - this doesn't tell you the pixel relationship to the video though.
- 09:06:35 [nigel]
- andreas: An issue is that in general the root container pixel dimensions are not necessarily coincident with the video dimensions.
- 09:06:43 [nigel]
- ... The document has no way to specify this in TTML, in general.
- 09:07:41 [nigel]
- pal: CFF-TT and EBU-TT-D relate the root container to the video. IMSC introduces an aspect ratio. All the profiles specify how the mapping goes.
- 09:08:47 [nigel]
- andreas: For general TTML documents this is an issue.
- 09:09:29 [nigel]
- courtney: Attribute mappings
- 09:09:55 [nigel]
- ... Some are straightforward.
- 09:10:17 [nigel]
- ... Though WebVTT IDs can be purely numeric, and xml:id doesn't allow that. So some modification or convention may be needed, e.g. "cue"+number.
- 09:10:23 [nigel]
- ... We could define the best practice.
- 09:11:10 [nigel]
- ... Both use BCP47 language values
- 09:11:17 [nigel]
- ... Preserve space needs further discussion.
- 09:11:41 [nigel]
- ... Styling attributes: colors, fonts etc are fairly straightforward.
- 09:12:12 [nigel]
- pal: Is there a subset of CSS that's supported for WebVTT?
- 09:12:20 [zcorpan]
- http://dev.w3.org/html5/webvtt/#css-extensions is the subset
- 09:12:49 [nigel]
- andreas: In WebVTT there's a subset of properties that are permitted. E.g. padding is not allowed.
- 09:13:30 [nigel]
- courtney: One requirement set is what's needed for CEA608. It would be useful to have a standard set of CSS classes that can be used for any CEA608 translations into WebVTT.
- 09:14:02 [nigel]
- ... There are some properties with no WebVTT equivalent: display, overflow, padding, showBackground.
- 09:14:24 [nigel]
- ... For alignment, displayAlign maps to the latest version of the WebVTT spec.
- 09:14:31 [nigel]
- andreas: I tried it out, and it would work perfectly.
- 09:14:44 [nigel]
- courtney: But they're not widely supported yet. The mapping is nicer at least.
- 09:14:46 [zcorpan]
- "the properties corresponding to the 'background' shorthand" is allowed, if that is what showBackground does
- 09:15:57 [nigel]
- zcorpan: any other properties will be ignored than those listed in the spec.
- 09:16:12 [nigel]
- ... I'm not sure how the TTML features map to those but there is a defined subset in the spec.
- 09:16:53 [nigel]
- courtney: To expand on that, things like textDecoration in TTML you can have underline set on a cue, but for the rest of it you'd have to go to CSS to do?
- 09:17:20 [zcorpan]
- <u>
- 09:17:26 [glenn_]
- glenn_ has joined #tt
- 09:17:35 [nigel]
- zcorpan: For underline you can use CSS or the <u> element inside a cue.
- 09:17:47 [nigel]
- courtney: visibility and zIndex - I can't see how to do those in WebVTT.
- 09:18:08 [nigel]
- ... extent can be done with a cue box size or a region size.
- 09:18:42 [nigel]
- ... A lot of the timing in the ttp: namespace metadata doesn't map to the WebVTT because the timing that's allowed is a lot simpler.
- 09:18:53 [nigel]
- zcorpan: visibility and zIndex is not possible in WebVTT.
- 09:19:45 [nigel]
- nigel: can't you do visibility with opacity?
- 09:20:08 [nigel]
- zcorpan: yes you can do visibility.
- 09:20:24 [nigel]
- courtney: there are also the attributes "use", "value" and "type".
- 09:20:57 [nigel]
- glenn: Those are in the profile definition mechanism - they're not content or style based.
- 09:21:07 [nigel]
- Cyril: does this mean they don't have to be mapped?
- 09:21:20 [nigel]
- courtney: since there are no profiles in WebVTT I guess not.
- 09:21:45 [nigel]
- glenn: This is all part of the TTML way to specify what a processor needs to support, based on SMIL and SVG originally.
- 09:22:00 [nigel]
- ... I think it can probably be ignored but needs more thought.
- 09:22:21 [nigel]
- andreas: If we do not find a direct mapping between WebVTT and TTML that doesn't mean that we can rule it out for the mapping
- 09:22:35 [nigel]
- ... because there's some intent in the source document and we have to check if theres something that needs to be done.
- 09:23:03 [nigel]
- courtney: Ruby: there's no simple mapping from WebVTT to TTML for ruby.
- 09:23:23 [nigel]
- glenn: In TTML1 you have to do the work at authoring time and use regions to place the ruby in the right place.
- 09:23:35 [nigel]
- ... I've recently specified in TTML2 the ruby markup.
- 09:24:28 [nigel]
- Cyril: There may be several ways to define the same thing, so we should try to use a canonical representation as the mapping source.
- 09:24:51 [nigel]
- ... For example there are several ways of expressing timing - maybe a requirement before mapping is a single syntax. I'm not sure if this is possible.
- 09:25:00 [nigel]
- courtney: it may be an interesting way to break the problem up.
- 09:25:36 [nigel]
- Cyril: A problem I've seen before is that when attributes need to be resolved at runtime based on context, e.g. frame rate, video size etc there's not much that can be done.
- 09:25:58 [nigel]
- ... We maybe need to classify those attributes that can be mapped offline vs those that need full context to resolve.
- 09:26:28 [nigel]
- courtney: that's my presentation.
- 09:27:10 [nigel]
- Cyril: There's also the question of which TTML profile to use. But also there are different classes of WebVTT: valid or not? parsable or not?
- 09:27:28 [nigel]
- ... Invalid documents may be presented okay by browsers. We should say which class we're looking at.
- 09:27:51 [nigel]
- ... Then WebVTT can represent metadata, chapters, subtitles, captions etc. so we should indicate which ones we're mapping, if not all.
- 09:29:54 [courtney]
- courtney has joined #tt
- 09:32:04 [nigel]
- Topic: Logical step through
- 09:32:10 [nigel]
- nigel: Processing model
- 09:32:23 [nigel]
- Cyril: how does TTML handle overlapping times?
- 09:32:33 [nigel]
- glenn: there's arbitrary overlap permitted.
- 09:33:01 [nigel]
- ... The first step I'd advocate is to create the intermediate synchronic documents and map to WebVTT.
- 09:34:41 [nigel]
- Cyril: In WebVTT there's the concept of cues becoming active and then bumping up existing visible cues.
- 09:34:52 [nigel]
- some discussion of how this is handled in TTML
- 09:35:29 [nigel]
- andreas: Formally the concept of creating the ISDs makes a lot of sense - we need to make sure everyone understands what that means.
- 09:36:14 [nigel]
- glenn: I agree. For example one thing that may not be obvious is that style inheritance is only defined on ISDs so one has to perform the ISD creation prior to style inheritance.
- 09:36:26 [nigel]
- ... I've also added a function on the TTV tool to generate the set of ISDs.
- 09:38:13 [nigel]
- nigel: We have a choice here to map ISDs or specific bits of cue text.
- 09:38:27 [nigel]
- nigel: This impacts efficiency and metadata.
- 09:38:53 [nigel]
- pal: This depends on the use case - if we just have the goal of getting equivalent presentation then efficiency and metadata are secondary concerns.
- 09:39:49 [nigel]
- elindstrom: from a browser perspective we're interested in accurate presentation.
- 09:40:09 [nigel]
- courtney: I've been thinking about it the opposite way - from a TTML to WebVTT conversion preserving semantics.
- 09:40:40 [nigel]
- andreas: Would it be possible to take Courtney's attribute list and make it a structured document, take it as a header, explain the problem scenario,
- 09:40:53 [nigel]
- ... and indicate what the options and recommendations are from the WG?
- 09:41:15 [nigel]
- ... If you try to map abstractly the logical model then it's very hard. Something more concrete may be a better start.
- 09:42:40 [nigel]
- pal: This is a question of how complicated we want to make it - I haven't heard of anyone wanting to use WebVTT as a master/archive/mezzanine format.
- 09:43:01 [nigel]
- glenn: There's a use case for distribution though.
- 09:43:16 [nigel]
- pal: I can see the use case of converting the TTML experience into a WebVTT experience.
- 09:43:51 [nigel]
- glenn: Part of this may be timing oriented in the sense that user agents may potentially add TTML renderers directly, which would reduce the future needs.
- 09:44:02 [nigel]
- ... But there may still be WebVTT-only presentation devices.
- 09:44:25 [nigel]
- pal: The issue for me is about the non-presentation-based usage of WebVTT.
- 09:44:45 [nigel]
- elindstrom: I don't expect that to be a huge use case.
- 09:46:20 [nigel]
- nigel: Seems like we've been considering TTML -> WebVTT here. Does the same consideration apply the other way?
- 09:46:36 [nigel]
- courtney: WebVTT does roll-up - I'm not sure how we do that with TTML.
- 09:47:07 [nigel]
- glenn: we may need to consider using the set element in TTML1.
- 09:47:26 [nigel]
- pal: When you say roll-up you mean where there's an animation displayed?
- 09:47:30 [nigel]
- glenn: yes, gradually moving up.
- 09:47:57 [nigel]
- pal: To do that explicitly in TTML you need animation, but what is possible is to have a region that contains line A at t=0 and at t=1 line B is added, moving line A up.
- 09:48:02 [nigel]
- ... This doesn't require any animation.
- 09:48:22 [nigel]
- glenn: Yes correct but it doesn't do the whole 608 animation.
- 09:48:55 [nigel]
- pal: Then the question is do we need to explicitly define the roll-up animation.
- 09:49:03 [nigel]
- glenn: Yes, we put in a note that implementation might do that.
- 09:49:10 [nigel]
- courtney: What about paint-on?
- 09:49:15 [nigel]
- glenn: That's no problem.
- 09:49:29 [elindstrom]
- elindstrom has joined #tt
- 09:49:33 [nigel]
- glenn: Does WebVTT support smooth roll-up as opposed to discrete line based roll-up?
- 09:49:53 [nigel]
- courtney: I think it does yes, I'll have to confirm.
- 09:50:42 [nigel]
- nigel: As a general point here we can leave it open to the converter where it's left unstated in the source spec.
- 09:50:55 [nigel]
- courtney: There's a scroll setting on the region in WebVTT that specifies this.
- 09:51:36 [nigel]
- nigel: Is there anything else regarding processing model that may affect how we do the conversions?
- 09:52:24 [nigel]
- ... So far we have: ISDs, smooth vs discrete scrolling.
- 09:52:45 [nigel]
- ... I guess discontinuous markerMode in TTML may be non-mappable too.
- 09:53:16 [nigel]
- glenn: I've been thinking about this too - I think it would be modelled by playing back the related media that triggers the discontinuous smpte events and recording the
- 09:53:36 [nigel]
- ... elapsed time to make a conversion from discontinuous to continuous.
- 09:54:03 [nigel]
- ... There's also the clock based timing which is also interesting! In appendix N we mapped all the timing models to a potentially continuous timeline.
- 09:54:57 [nigel]
- nigel: I think we should exclude discontinuous marker mode and maybe clock mode too, as being non-mappable from TTML1 to WebVTT.
- 09:55:09 [nigel]
- glenn: I think there may be some TTML2 work that can support this.
- 09:55:54 [nigel]
- nigel: I propose to make our mapping explicitly related to TTML1 and if there's anything that helps in TTML2 we can update it later.
- 09:56:04 [nigel]
- glenn: Or we can simply reference the ISD creation process.
- 09:56:50 [zcorpan]
- "If region's text track region scroll setting is 'up' and region already has one child, set region's 'transition-property' to 'top' and 'transition-duration' to '0.433s'." - smooth rollup in webvtt with scroll:up. http://dev.w3.org/html5/webvtt/#h4_processing-model
- 09:58:12 [nigel]
- nigel: Maybe we can do both, and reference the ISD generation process and make a note that in TTML 1 the process isn't defined in a way that facilitates
- 09:58:32 [nigel]
- ... conversion to WebVTT for discontinuous and clock mode times.
- 09:58:51 [nigel]
- courtney: If we refer to ISD conversion rather than TTML1 what's the reference document?
- 09:59:05 [nigel]
- glenn: I'm working on this for TTML2.
- 09:59:14 [nigel]
- courtney: Is there a draft document to refer to?
- 09:59:50 [nigel]
- andreas: If you make the ISD concept central to the mapping it must be fully elaborated so that everyone can understand it.
- 10:00:08 [nigel]
- glenn: I agree but I think there's no way to avoid it other than to create an alternative flavour of the same thing.
- 10:00:19 [nigel]
- ... This is the only way to solve the timing hierarchy problem.
- 10:00:33 [nigel]
- ... It also gets around the style inheritance process.
- 10:01:01 [nigel]
- andreas: Formally I agree but it's hard to communicate the ISD - it wouldn't be a valid TTML document. So the converter wouldn't be from TTML.
- 10:01:17 [nigel]
- glenn: We do have examples of ISDs in the TTML1 spec, which is something I'm adding in TTML2.
- 10:02:53 [nigel]
- andreas: ISD creation is specified in TTML1 so I think we can use what's there. Is anything else needed?
- 10:03:26 [nigel]
- glenn: Yes, the only thing absent is the specification of a serialised form. We only used ISDs as a didactic construct for explaining the formatting model.
- 10:03:36 [nigel]
- ... In TTML2 I plan to make interchange of ISDs possible in a standard way.
- 10:03:57 [nigel]
- ... It would also be useful for this exercise. Now I have an implementation already those things combine to make this progressable.
- 10:04:17 [nigel]
- pal: For mapping can we simply assume that an ISD is a valid TTML document that happens to be static?
- 10:04:50 [nigel]
- glenn: almost - it's not quite the same because there's some transformation, e.g. the body element is copied and reparented to the region elements that are temporally active.
- 10:05:40 [nigel]
- courtney: My feeling is that this is just trading off one set of problems for another.
- 10:06:00 [nigel]
- pal: I was hoping that ISD could just be used to mean 'the state of a TTML document between successive events".
- 10:06:44 [nigel]
- Cyril: do we have a presentation on ISDs?
- 10:06:52 [nigel]
- glenn: No, though I could do it verbally.
- 10:07:09 [nigel]
- andreas: Maybe if it's in the TTV software we could have a look at some simple examples?
- 10:07:30 [nigel]
- andreas: So we don't get stuck here, can we start on attribute mappings that have to be done either way?
- 10:07:57 [nigel]
- courtney: I'd prefer to stick with TTML rather than ISDs and defer some of these problems.
- 10:08:39 [nigel]
- nigel: +1. Most of the problems are just about timing.
- 10:09:01 [nigel]
- glenn: Unfortunately that's not true - there's also the problem that associates content with regions and then performing region style inheritance.
- 10:09:36 [nigel]
- ... In the ISD document the content has been associated with individual regions and then region style inheritance, and if you don't go through the ISD process then the latter breaks.
- 10:11:07 [nigel]
- nigel: I think you can do the style computation without making the ISD.
- 10:11:21 [nigel]
- glenn: There's a risk of duplication of effort.
- 10:11:36 [nigel]
- courtney: I think you can map directly.
- 10:12:48 [nigel]
- nigel: I want to defer timing issues to ISDs and do everything else directly.
- 10:13:04 [nigel]
- glenn: To be clear I didn't mean previously that we need to serialise the ISDs
- 10:15:01 [nigel]
- Cyril: We talked earlier about categories - we need to think about metadata etc.
- 10:15:05 [nigel]
- pal: I've not heard those use cases.
- 10:15:19 [nigel]
- Cyril: Can we assume that metadata-only WebVTT files are out of scope of this?
- 10:16:30 [nigel]
- glenn: I guess the issue is searchability - if there are use cases that need searchability e.g. characters, roles, other agents, then we might need to consider that.
- 10:16:44 [nigel]
- ... If we're strictly talking about presentation than maybe we don't need to consider that.
- 10:16:54 [nigel]
- ... In WebVTT can you use metadata to define larger classes for presentation?
- 10:17:23 [nigel]
- courtney: The only thing I've encountered along those lines is voice, which may be one example. The approach I've taken is just to map what is possible to map.
- 10:17:35 [nigel]
- ... In the document we can describe what's well defined and note what can't be supported.
- 10:18:03 [nigel]
- andreas: I agree - we should publish something sooner and limit certain parts to a canonical representation if there are multiple ways to express the same thing.
- 10:18:26 [nigel]
- ... We can decide on a feature by feature basis what to limit, for example.
- 10:19:21 [nigel]
- Cyril: we didnt talk about which mapping direction we're talking about.
- 10:19:24 [nigel]
- nigel: it's both.
- 10:20:17 [nigel]
- andreas: Additionally there are, e.g. in Germany, cases where browsers aren't used to present content, and renderers only understand TTML.
- 10:20:57 [nigel]
- ... So we need to go both ways.
- 10:22:40 [nigel]
- nigel: Adjourns for lunch - return at 1330 CET.
- 10:23:00 [Zakim]
- -zcorpan
- 10:23:28 [nigel]
- rrsagent, make logs public
- 10:23:32 [Zakim]
- -Geneva
- 10:23:33 [Zakim]
- IA_TTWG()3:00AM has ended
- 10:23:33 [Zakim]
- Attendees were +44.192.341.aaaa, nigel, zcorpan, +41.22.717.aabb, Geneva
- 10:23:34 [nigel]
- rrsagent, generate minutes
- 10:23:39 [RRSAgent]
- I have made the request to generate http://www.w3.org/2014/09/16-tt-minutes.html nigel
- 10:47:40 [zcorpan]
- i will call in 14:00. then 15:00-15:30 i will be absent again
- 10:53:22 [elindstrom]
- elindstrom has joined #tt
- 11:00:50 [Zakim]
- Zakim has left #tt
- 11:33:35 [zcorpan]
- correction. i will call in now but be absent between 14:00-14:30 and 15:00-15:30
- 11:49:37 [pal]
- pal has joined #tt
- 11:52:20 [nigel]
- trackbot, this is ttml
- 11:52:20 [trackbot]
- Sorry, nigel, I don't understand 'trackbot, this is ttml'. Please refer to <http://www.w3.org/2005/06/tracker/irc> for help.
- 11:52:25 [nigel]
- trackbot, start meeting
- 11:52:27 [trackbot]
- RRSAgent, make logs public
- 11:52:27 [Zakim]
- Zakim has joined #tt
- 11:52:29 [trackbot]
- Zakim, this will be TTML
- 11:52:29 [Zakim]
- ok, trackbot; I see IA_TTWG()3:00AM scheduled to start 292 minutes ago
- 11:52:30 [trackbot]
- Meeting: Timed Text Working Group Teleconference
- 11:52:30 [trackbot]
- Date: 16 September 2014
- 11:52:41 [nigel]
- zakim, who is on the phone?
- 11:52:41 [Zakim]
- IA_TTWG()3:00AM has not yet started, nigel
- 11:52:44 [Zakim]
- On IRC I see pal, glenn_, RRSAgent, nigel, zcorpan, trackbot
- 11:52:59 [nigel]
- zakim, start meeting
- 11:52:59 [Zakim]
- I don't understand 'start meeting', nigel
- 11:53:04 [nigel]
- zakim, this is ttml
- 11:53:04 [Zakim]
- ok, nigel; that matches IA_TTWG()3:00AM
- 11:53:12 [nigel]
- zakim, who is on the phone?
- 11:53:12 [Zakim]
- On the phone I see Geneva
- 11:53:22 [Zakim]
- +[IPcaller]
- 11:53:31 [elindstrom]
- elindstrom has joined #tt
- 11:53:39 [nigel]
- zakim, IPcaller is zcorpan
- 11:53:39 [Zakim]
- +zcorpan; got it
- 11:54:42 [nigel]
- chair: nigel
- 11:54:45 [nigel]
- scribeNick: nigel
- 11:55:23 [nigel]
- Present: elindstrom, tmichel, Frans_EBU, pal, Cyril, courtney, andreas, glenn, nigel
- 11:56:01 [nigel]
- Topic: Agenda
- 11:56:29 [nigel]
- nigel: We may switch things around tomorrow due to changes to flights etc.
- 11:56:52 [Cyril]
- Cyril has joined #tt
- 11:59:36 [nigel]
- We will capture output at https://www.w3.org/wiki/TimedText/TTMLtoWebVTT where I enter 'wiki' in the minutes
- 11:59:53 [nigel]
- Topic: Document Structure
- 11:59:57 [Zakim]
- -zcorpan
- 12:00:13 [nigel]
- courtney: Can we go through TTML elements?
- 12:07:57 [nigel]
- Cyril: can we map the tt element to the top of a WebVTT document?
- 12:10:23 [nigel]
- glenn: explains TTML structure down to style attributes.
- 12:10:41 [nigel]
- Cyril: Suggests defining a style class in WebVTT corresponding to each style in TTML
- 12:10:46 [nigel]
- glenn: yes, we can do this.
- 12:11:25 [nigel]
- courtney: Yes. Right now the CSS document is separate, but in the future it could be embedded.
- 12:11:32 [nigel]
- pal: Will there be feedback into WebVTT from this?
- 12:11:59 [nigel]
- courtney: There are competing desires here - yes, in principle.
- 12:12:31 [nigel]
- Cyril: can we go through these?
- 12:14:28 [nigel]
- glenn: Let's keep going with structure.
- 12:14:48 [nigel]
- glenn: Takes group through region properties - including style attributes for origin and extent, and referential approach.
- 12:15:11 [nigel]
- ... Each region has an id. If there are no regions defined there's a default, covering 100%.
- 12:15:17 [nigel]
- Cyril: How different is this from WebVTT regions?
- 12:15:32 [nigel]
- courtney: WebVTT regions can not have styles, but the layout information translates pretty directly.
- 12:15:37 [tmichel]
- tmichel has joined #tt
- 12:15:57 [nigel]
- glenn: For example tts:opacity is a region-specific property. backgroundColor can apply to regions independently of the content in the region.
- 12:16:08 [nigel]
- ... There are a number of style properties that only apply to regions.
- 12:16:19 [nigel]
- andreas: Can a region be compared to a div element in HTML?
- 12:16:22 [nigel]
- glenn: yes.
- 12:16:36 [nigel]
- andreas: So this is the only element that can be positioned absolutely within the root container.
- 12:17:08 [nigel]
- glenn: moves to body
- 12:17:46 [nigel]
- Cyril: Will we have an output document structure with headers and bodies, with two subsections - for styling and layout?
- 12:17:48 [nigel]
- Courtney: yes.
- 12:17:53 [nigel]
- Glenn: That's not a bad way to do it.
- 12:18:18 [nigel]
- courtney: Part of this will describe the separate CSS and WebVTT document.
- 12:19:29 [nigel]
- glenn: takes us down through body, div, p and span.
- 12:20:24 [nigel]
- glenn: div can contain div; p can not contain p; p can not contain div; div can not contain text.
- 12:20:32 [nigel]
- Cyril: so p is equivalent to a cue?
- 12:20:40 [nigel]
- courtney: seems that way.
- 12:21:07 [nigel]
- glenn: Timing can be specified on body, p, div, p, span and br.
- 12:21:15 [nigel]
- Cyril: cues can have nested timing in spans.
- 12:21:50 [nigel]
- pal: is there a reason why each p can't map to a cue?
- 12:22:10 [nigel]
- glenn: my mental model of a cue is that it is not overlapping in time with other cues. I think this makes things easier.
- 12:22:18 [nigel]
- pal: But if we can map a p to a cue then the mapping is simpler.
- 12:22:26 [nigel]
- courtney: What else would it map to?
- 12:22:39 [nigel]
- glenn: Are you still assuming time has been flattened down and sliced?
- 12:22:41 [nigel]
- pal: Yes.
- 12:23:02 [nigel]
- glenn: So there are no overlaps. At that point content that is selected into regions is present and everything else has been filtered out.
- 12:24:05 [nigel]
- glenn: every piece of content is associated with a single region in TTML.
- 12:24:09 [nigel]
- Cyril: same in WebVTT.
- 12:24:25 [nigel]
- glenn: So the concept is to start from body, work down, and associate each piece of content with a region.
- 12:25:03 [nigel]
- ... So if there's a region we're not interested in we can filter out that content.
- 12:25:23 [nigel]
- ... So there may be multiple <p>s all mapping into a single cue.
- 12:25:42 [nigel]
- courtney: With WebVTT you'd define regions, and for each cue reference the region id.
- 12:25:58 [nigel]
- glenn: That's exactly how it works in TTML but with the ability to inherit region from an ancestor.
- 12:26:22 [nigel]
- Cyril: So you can in principle flatten the TTML structure and remove the <div>s.
- 12:26:38 [nigel]
- glenn: You can't remove the <div>s because they specify breaks and style.
- 12:26:43 [nigel]
- Cyril: But you could propagate down.
- 12:27:32 [nigel]
- nigel: You can paint the background of a div so if you remove it then some information is lost.
- 12:27:43 [nigel]
- andreas: is there a layout impact of div?
- 12:27:54 [Zakim]
- +[IPcaller]
- 12:28:32 [nigel]
- glenn: It implies a breaking boundary in the line progression direction and it may contain styling.
- 12:29:36 [nigel]
- group: discusses slicing apart divs into multiple <p>s each of which generates a cue.
- 12:30:09 [nigel]
- Cyril: so if I start by resolving all the style references on a p, flattening out all the styles, then...
- 12:30:36 [nigel]
- glenn: so you can now enumerate all the <p>s and <div>s and assign each to a cue.
- 12:30:45 [nigel]
- courtney: I think we should do that in the document.
- 12:31:14 [nigel]
- glenn: Okay but you may end up with a lot of cues all with the same timing. If there's no intrinsic limitation on that then we can go ahead.
- 12:31:25 [nigel]
- Cyril: Layout: so div affects layout?
- 12:31:42 [nigel]
- glenn: Yes, divs can't (spatially) overlap each other within the same region.
- 12:32:12 [nigel]
- andreas: but the only fixed dimension defined is for the region, so the height of each p and div depends on the content flowed into them.
- 12:32:27 [nigel]
- ... So there's no difference between the block level boxes that are generated by divs and ps.
- 12:33:35 [nigel]
- Cyril: We could create artificial regions for divs that have a background color
- 12:34:37 [nigel]
- nigel: we may have some non-mappable functionality here, if a region, a div, and a p all have different background colors.
- 12:35:08 [nigel]
- glenn: Also if the div contains a div and both divs contain a p, and all the background colors are different, then you end up with different background paint areas
- 12:35:58 [nigel]
- andreas: Can a div create a space that isn't occupied by a p? If a p covers only 50% of the height of the region then its parent div will just have the height of its contained <p>s
- 12:36:04 [nigel]
- ... and not expand to the height of the region.
- 12:36:20 [nigel]
- glenn: So it will have the same background color as the p
- 12:36:35 [nigel]
- courtney: you can't specify an extent on a div or a p?
- 12:36:39 [nigel]
- glenn: no that's right.
- 12:36:51 [nigel]
- andreas: the width is defined by the region and the height by the flowed in content.
- 12:37:07 [nigel]
- Cyril: so you can't have a div with a different background color from its child <p>s?
- 12:37:26 [nigel]
- glenn: That's right because we don't have a margin before or after.
- 12:37:59 [nigel]
- nigel: I think we've just resolved that <p>s map to cues (repeating Glenn's earlier joke)!
- 12:38:51 [nigel]
- glenn: In TTML2 we have padding on content elements not just on region, which might impact this, but thinking about it, it should be okay because it's not margin.
- 12:38:55 [nigel]
- courtney: What are content elements?
- 12:39:02 [nigel]
- glenn: body, div, p, span, br.
- 12:39:19 [nigel]
- Cyril: What if spans have timing that's shorter than their parent p?
- 12:40:29 [nigel]
- glenn: If there's an explicit end on the span that makes its active end prior to the active end of its parent then it would depend on the fill mode - it's either freeze or remove.
- 12:41:04 [nigel]
- ... I'd have to check what we said about this, from SMIL.
- 12:41:43 [nigel]
- andreas: in WebVTT you can have non-ended cues, that last until... when?
- 12:42:09 [nigel]
- glenn: In TTML if there's an explicit end on the parent container and the child ends prior to that then there would be two ISDs, one
- 12:42:21 [nigel]
- ... covering the first period and the other covering the second period, and the span wouldn't be present in the second period.
- 12:42:25 [nigel]
- nigel: +1
- 12:42:58 [nigel]
- Cyril: so you can have a span that contains text that activates and deactivates part way through the cue.
- 12:43:10 [nigel]
- glenn: Yes, that would be possible in TTML.
- 12:43:16 [nigel]
- Cyril: Can we do that in WebVTT?
- 12:43:48 [nigel]
- courtney: I don't think so - there's only styling changes part way through a cue.
- 12:44:02 [nigel]
- ... So spans with time on them - would we have to separate them into separate cues?
- 12:44:20 [nigel]
- Cyril: I don't think that would work because they'd appear on different lines.
- 12:44:29 [nigel]
- ... You'd have to go down to the ISD level.
- 12:45:30 [nigel]
- nigel: Can you have spans with timing?
- 12:45:39 [nigel]
- Cyril: only to switch the text on, not off.
- 12:45:48 [nigel]
- ... So not every p is a cue, it's a bit more complicated!
- 12:46:11 [nigel]
- glenn: If you split everything into ISDs that do not overlap then these problems can be resolved.
- 12:47:49 [nigel]
- glenn: We need to look more at the details and work out if there's a problem here.
- 12:48:33 [courtney]
- courtney has joined #tt
- 12:48:33 [nigel]
- glenn: The only thing we didn't cover is animation. There's a set element in TTML1 that can also delineate ISD boundaries.
- 12:48:44 [nigel]
- ... In TTML2 we're adding continuous animation using the animate element
- 12:48:58 [nigel]
- In TTML2 ISDs there may be some internal animation within the ISD.
- 12:49:54 [nigel]
- andreas: it's also worth noting that every element can have metadata attached.
- 12:50:31 [nigel]
- glenn: metadata, except for the ttm:agent attribute which can appear on any content element only, and the region, which reference agent definitions in the header,
- 12:50:37 [nigel]
- ... other metadata elements are all local not referential.
- 12:51:13 [nigel]
- andreas: TTML also allows child elements that are not in a TTML namespace so it can be extended. A TTML processor is required to prune these out and not reject
- 12:51:21 [nigel]
- ... the document. But it doesn't have to display.
- 12:51:35 [nigel]
- courtney: Does anyone know if we can have metadata in CSS within a style class?
- 12:51:53 [nigel]
- andreas: you can have comments.
- 12:51:59 [nigel]
- glenn: they're ignored in the CSS object model.
- 12:52:16 [nigel]
- zcorpan: you can have custom properties that can be used for any purpose including metadata.
- 12:52:35 [zcorpan]
- http://dev.w3.org/csswg/css-variables/
- 12:53:01 [nigel]
- nigel: Can we go through the WebVTT structure and see how that maps?
- 12:53:47 [nigel]
- courtney: WebVTT files have a header section that starts with WebVTT
- 12:53:50 [nigel]
- http://dev.w3.org/html5/webvtt/
- 12:54:03 [nigel]
- s/with WebVTT/with WEBVTT
- 12:54:15 [nigel]
- courtney: Then there can be metadata, such as language, copyright etc.
- 12:54:29 [nigel]
- Cyril: so when you parse the file, big objects are separated by double line separators.
- 12:54:59 [nigel]
- ... Every piece of text separated by two lines is either a cue or is a comment not for display.
- 12:55:07 [nigel]
- andreas: but comments are not defined?
- 12:55:15 [zcorpan]
- http://dev.w3.org/html5/webvtt/#webvtt-comments comments are defined here
- 12:55:28 [nigel]
- Cyril: no. For example in MP4 carriage you could remove it, or put it in a previous or next segment - it won't be displayed.
- 12:55:39 [nigel]
- courtney: In the header section you can also include region definitions.
- 12:57:24 [nigel]
- nigel: so you can't have untimed cues?
- 12:57:30 [nigel]
- Cyril: yes. Can you in TTML?
- 12:58:06 [nigel]
- nigel: yes you can - they have the duration of the whole document (assuming there's no inherited time from a parent time container etc)
- 12:58:25 [nigel]
- Cyril: this is in flux in the WebVTT standard, using keywords like 'Next' for 'until the next cue'.
- 12:59:03 [nigel]
- glenn: during the conceptual ISD mapping process every piece of content gets timed. Ultimately the active period of the related media object will determine that time,
- 12:59:09 [nigel]
- ... in the absence of any other information.
- 12:59:40 [Zakim]
- -[IPcaller]
- 12:59:43 [nigel]
- andreas: We also have to think about multiple <br> in TTML documents, which are allowed, but shouldn't generate multiple line breaks because they wouldn't
- 12:59:49 [nigel]
- ... be displayed in WebVTT.
- 13:00:37 [nigel]
- Cyril: so you could define line numbering or put non-breaking spaces on otherwise empty lines. I'm not sure how the backgrounds would be painted for spaces.
- 13:00:46 [nigel]
- Cyril: records issue on wiki
- 13:04:31 [nigel]
- andreas: You can use empty spans on each line.
- 13:05:12 [nigel]
- courtney: Identifiers are used - each cue can have an identifier, which would show up before the begin and end time lines.
- 13:05:18 [nigel]
- ... Also regions have ids that can be referenced in cues.
- 13:05:40 [nigel]
- Cyril: Those cue ids come from SRT - in SRT each cue has to be a monotonically increasing number with no gaps.
- 13:05:56 [nigel]
- ... it's very common to have WebVTT files with numeric identifiers.
- 13:06:08 [nigel]
- andreas: and the ids can have spaces in between, which isn't permitted in xml:id
- 13:06:21 [nigel]
- courtney: so we should have a convention for mapping to TTML Ids.
- 13:07:41 [nigel]
- nigel: Can VTT cue ids be duplicated?
- 13:07:43 [nigel]
- courtney: no.
- 13:08:17 [nigel]
- nigel: the reason for mentioning it is that if we do TTML ISD -> Cue then the same TTML id may resolve to multiple cues.
- 13:08:29 [nigel]
- courtney: there's something to think about here with slicing VTT cues into time slices.
- 13:09:00 [elindstrom]
- elindstrom has joined #tt
- 13:09:33 [nigel]
- Cyrill: As long as all the spans in a p aligns with the end times of the p then you can keep it as a single cue.
- 13:09:43 [nigel]
- nigel: that's a special case - think of live word by word subtitles.
- 13:09:58 [nigel]
- Cyril: cues have to be laid out in start time order.
- 13:10:17 [nigel]
- ... Within a cue you can have internal timing values, that I think also have to be in increasing time order (I'm not sure about that).
- 13:10:29 [nigel]
- Cyril: can you have TTML spans that display in reverse time order compared to the document order?
- 13:10:43 [nigel]
- glenn: Yes, there are no constraints.
- 13:10:58 [nigel]
- Cyril: what about in profiles?
- 13:11:09 [nigel]
- pal: I haven't seen any profile that constrains that out.
- 13:11:47 [nigel]
- glenn: if the TTML time container is a par (parallel) time container than a child can start after one of its preceding siblings.
- 13:12:17 [nigel]
- glenn: the order in the content will define the order of presentation order (spatially).
- 13:13:16 [nigel]
- pal: IMSC 1 allows a document to be labelled progressively decodable which forbids timing on descendants of <p>s.
- 13:14:01 [nigel]
- courtney: So that needs to be in the document, i.e. temporal ordering within the document.
- 13:14:33 [nigel]
- andreas: EBU-TT-D doesn't constrain this but recommends time ordering. Most legacy formats are sequentially ordered in time as well.
- 13:15:00 [nigel]
- Cyril: even if the <p>s were out of order in time that wouldn't be a problem, but out of order <span>s would be a problem.
- 13:15:12 [nigel]
- pal: But going to ISD level would avoid that.
- 13:15:27 [nigel]
- Cyril: adds this issue to the wiki
- 13:16:49 [nigel]
- nigel: Do we have to worry about rtl direction when sorting spans into order in WebVTT?
- 13:17:48 [nigel]
- glenn: I would expect that when a span is active all text content of active spans are merged and then directionality is applied on the result.
- 13:19:36 [nigel]
- courtney: let's leave the identifier mapping convention until later.
- 13:20:27 [nigel]
- nigel: Voice spans are straightforward aren't they?
- 13:21:00 [nigel]
- courtney: I think voice maps to agent pretty well.
- 13:21:04 [nigel]
- nigel: +1
- 13:22:05 [nigel]
- nigel: What about styling based on voice cue selectors?
- 13:22:13 [nigel]
- courtney: You could define a TTML style for each agent.
- 13:22:48 [nigel]
- courtney: Along those lines you can put styling directly on a span - in WebVTT I think you'd have to define CSS classes for those.
- 13:23:22 [nigel]
- Cyril: you may not have to scan the whole document but could create a random hash for every time one is encountered.
- 13:23:39 [nigel]
- Cyril: I'm also interested in streaming, transcoding live streams.
- 13:24:04 [nigel]
- glenn: If it's not been converted into an ISD sequence then you can't avoid parsing the whole document (unless it's progressively decodable).
- 13:24:20 [nigel]
- ... You never know if the last markup element will be timed prior to the rest.
- 13:24:36 [nigel]
- Cyril: WebVTT documents are always progressively decodable.
- 13:25:59 [nigel]
- Cyril: go to example just before section 2 - this has multiple lines in the header. In this case Regions, but it could be copyright, anything else.
- 13:26:35 [nigel]
- Cyril: So some parts of the header map to regions and others to metadata.
- 13:26:53 [nigel]
- Cyril: continuing on document structure.
- 13:27:05 [nigel]
- ... Each cue has a timestamp for start and end, followed by optional settings.
- 13:27:33 [nigel]
- Courtney: There are additional settings available.
- 13:27:48 [nigel]
- Cyril: they are a combination of styling and layout.
- 13:28:07 [nigel]
- nigel: What about at the end of the document?
- 13:28:14 [nigel]
- Courtney: there's nothing to mark the ends of documents.
- 13:29:01 [nigel]
- Cyril: that's a feature - you can concatenate two WebVTT files, and if the timestamps obey the time rules then it's valid.
- 13:29:05 [nigel]
- ... The second header would be ignored.
- 13:29:11 [nigel]
- pal: what about styles?
- 13:31:21 [nigel]
- andreas: We also need to think about error handling - processing of invalid documents.
- 13:31:51 [nigel]
- nigel: Can we simply constrain our mapping to input documents that are valid?
- 13:32:23 [nigel]
- Cyril: maybe not - we could consider the WebVTT to TTML mapping to do what a presentation processor would do when given an invalid document
- 13:32:28 [nigel]
- ... The behaviour is well defined.
- 13:33:14 [nigel]
- nigel: Let's take a break until 1545...
- 13:35:09 [nigel]
- rrsagent, make logs public
- 13:35:14 [nigel]
- rrsagent, generate minutes
- 13:35:14 [RRSAgent]
- I have made the request to generate http://www.w3.org/2014/09/16-tt-minutes.html nigel
- 13:41:17 [zcorpan]
- re "nigel: Can VTT cue ids be duplicated?" - yes, there is no requirement about uniqueness for cue identifiers. however region identifiers need to be unique and don't allow spaces
- 13:42:20 [zcorpan]
- hmm. sorry, looks like cue id requires uniqueness also. i think that changed from a few years ago
- 13:43:11 [zcorpan]
- looks like the spec allows a cue id to be duplicated as region id
- 13:43:53 [courtney]
- courtney has joined #tt
- 13:47:14 [elindstrom]
- elindstrom has joined #tt
- 13:48:14 [nigel]
- Restarting...
- 13:49:53 [nigel]
- Topic: Layout
- 13:52:41 [nigel]
- andreas: We should start with the positioning of a <p> element relative to a region.
- 13:53:04 [nigel]
- courtney: The positioning is the piece that will map into WebVTT. There are several region attributes in TTML that can not go in WebVTT.
- 13:53:52 [nigel]
- zakim, who is on the phone?
- 13:53:52 [Zakim]
- On the phone I see Geneva
- 13:57:13 [nigel]
- group: discussion of xml:lang on <region> and how it may get inherited by content elements in TTML.
- 13:58:49 [nigel]
- zakim, what conference is this?
- 13:58:49 [Zakim]
- this is IA_TTWG()3:00AM conference code 8865
- 13:59:26 [nigel]
- group: discussion of style attributes on region - which must be included?
- 13:59:47 [nigel]
- courtney: Maybe we should go through each attribute.
- 14:00:32 [Loretta]
- Loretta has joined #tt
- 14:00:45 [Zakim]
- +??P11
- 14:00:58 [Zakim]
- -??P11
- 14:01:32 [Zakim]
- +[IPcaller]
- 14:01:50 [tmichel]
- I just joined Zakim using SIP. It works for me using code ttml#
- 14:02:44 [zcorpan]
- i still get "this passcode is not valid"
- 14:03:05 [Loretta]
- zakim, IPcaller is Loretta
- 14:03:05 [Zakim]
- +Loretta; got it
- 14:03:15 [nigel]
- Present+ Loretta
- 14:03:31 [Zakim]
- +[IPcaller]
- 14:04:41 [zcorpan]
- Zakim, IPcaller is zcorpan
- 14:04:41 [Zakim]
- +zcorpan; got it
- 14:04:44 [nigel]
- glenn: I have a list of style attributes that apply to region.
- 14:05:01 [nigel]
- ... there are 12 in TTML1, and of those, 9 apply only to region.
- 14:05:30 [nigel]
- ... Styles that apply both to region and other content elements are backgroundColor, display and visibility.
- 14:05:55 [nigel]
- ... the ones that apply only to region in TTML1 are displayAlign, extent, opacity, origin, overflow, padding, showBackground, writingMode and zIndex.
- 14:06:12 [nigel]
- ... Note that at least one of these will be opened up to content elements in TTML2, which is padding.
- 14:06:39 [nigel]
- ... We may also open up opacity to content elements, which would allow the definition of opacity for an element and its content as a collection.
- 14:07:00 [nigel]
- andreas: Should we rule out the attributes that will change in TTML2?
- 14:07:10 [nigel]
- glenn: In fact opacity and padding are extended to all content elements in TTML2.
- 14:08:14 [nigel]
- ... In both cases they aren't being removed from region, so they are still applicable to region in ttml2.
- 14:08:35 [nigel]
- courtney: So let's start with those. I believe that only 3 map to a region in WebVTT: displayAlign, extent and origin.
- 14:08:54 [nigel]
- andreas: And they can be mapped to properties of the region?
- 14:09:37 [nigel]
- nigel: can't you do visibility by setting a style with opacity zero?
- 14:09:45 [nigel]
- courtney: you can do that but only on a cue, not on a region.
- 14:10:05 [nigel]
- nigel: So another way to say the same thing is that there's no region selector for styling?
- 14:10:07 [nigel]
- courtney: Yes.
- 14:11:09 [nigel]
- nigel: does the lack of zIndex imply that in WebVTT overlapping regions are prohibited?
- 14:11:25 [nigel]
- courtney: I don't think they're prohibited.
- 14:11:46 [nigel]
- glenn: In TTML2 on this subject we have a request for expressing z ordering for content to be able to handle 3D.
- 14:11:54 [nigel]
- pal: That sounds similar but it's a different concept.
- 14:12:14 [nigel]
- Loretta: I'm trying to see if the magic layout algorithm applies to region as well.
- 14:12:44 [nigel]
- ... In general there's no notion of zIndex in WebVTT.
- 14:13:37 [nigel]
- nigel: Is there an alternative way to achieve backgroundColor on regions in WebVTT?
- 14:13:47 [nigel]
- courtney: I don't think so, you can only do it for cues.
- 14:15:22 [nigel]
- Cyril: adds non-mappable showBackground on region and zIndex to the wiki.
- 14:15:44 [nigel]
- courtney: overflow is always hidden for regions too.
- 14:16:08 [nigel]
- glenn: Can wrapping be prevented so that overflow may be relevant?
- 14:16:29 [nigel]
- ... Or what happens if you put too much content into a region i.e. too many lines?
- 14:18:20 [nigel]
- glenn: It sounds like extent, origin and displayAlign are currently expressible. The other 9 attributes seem to be absent.
- 14:18:38 [nigel]
- ... display seems to be only worthwhile in conjunction with animate.
- 14:18:54 [nigel]
- nigel: It seems that the pseudo classes past and future have some relationship to animate.
- 14:20:05 [nigel]
- andreas: Wants to note that when we finish on the TTML attributes we should go the other way round.
- 14:20:18 [nigel]
- courtney: Let's do the non-style attributes on a region first...
- 14:20:42 [nigel]
- ... You can put timing on a region in TTML - there's no equivalent in WebVTT. attributes begin, end, dur, timeContainer
- 14:21:07 [nigel]
- glenn: timeContainer is on regions for the processing of animate elements that are children of region.
- 14:22:05 [Loretta]
- Does the cue-region pseudo-element let us apply CSS styles to regions?
- 14:22:05 [nigel]
- nigel: What's the action on that - to add it to the non-mappable list?
- 14:24:24 [nigel]
- Cyril: why have timing on regions?
- 14:24:54 [nigel]
- glenn: The main reason is to provide timing for background painting when no content is active, and also to specify the timing for animate elements that are children of that region.
- 14:26:51 [nigel]
- Cyril: I'm not sure it's not mappable - you can have empty cues applied to a region, with the equivalent times of the TTML region.
- 14:27:11 [nigel]
- ... Then that would activate the region in the same way - what happens then is a later question, e.g. background painting.
- 14:27:33 [nigel]
- glenn: Actually the timing of a region in TTML can be used to temporally clip the flow of content into that region, so it's a bit more than that.
- 14:28:48 [nigel]
- glenn: The question really is: do implementations use animate?
- 14:29:08 [nigel]
- pal: I'm going to check the examples I have.
- 14:29:27 [nigel]
- ... another thing is how do you achieve dynamic positioning for text? One way is to create one region per subtitle.
- 14:29:35 [nigel]
- ... In that case you may be tempted to put the timing on the region.
- 14:29:54 [nigel]
- Loretta: What are you trying to do here?
- 14:30:17 [nigel]
- pal: In TTML1 there's no per-cue positioning, e.g. of each <p>. One way to achieve that effect is to define one region per subtitle and position each region
- 14:30:19 [nigel]
- ... individually.
- 14:30:53 [nigel]
- andreas: From the layout perspective, there's a chance that timings are put on region elements.
- 14:31:56 [nigel]
- courtney: Shall we talk about the things that do map?
- 14:32:14 [nigel]
- ... On a WebVTT region the available settings are: width, lines, region-anchor, viewport-anchor and scroll.
- 14:32:31 [nigel]
- ... I believe that extent in TTML maps to width and lines.
- 14:32:56 [nigel]
- ... We have the dimension issues for value units, e.g. if it's in %age then it's okay but in pixels you need the size to do the unit conversion.
- 14:33:17 [nigel]
- ... I think that displayAlign and origin in TTML, in combination, map to a combination of regionAnchor and viewportAnchor in WebVTT. The two specs have
- 14:33:31 [glenn]
- glenn has joined #tt
- 14:33:42 [nigel]
- ... different ways to achieve the same thing. In WebVTT you define a point within the video frame that maps to a point within the region and they don't necessarily
- 14:33:57 [nigel]
- ... have to be the same thing. Origin + displayAlign allows you to achieve the same effect.
- 14:35:02 [nigel]
- nigel: I thought there was some freedom in WebVTT about the precise positioning, whereas in TTML there's no freedom of movement - is that right?
- 14:35:40 [nigel]
- Loretta: I'm still wading through the WebVTT algorithm. Certainly for cues things get moved around to be as close as possible to the stated location.
- 14:35:48 [nigel]
- nigel: Yes, I'm not sure if that applies to regions as well as cues.
- 14:35:58 [nigel]
- Loretta: Yes, I think it may do - I'm still checking.
- 14:36:06 [nigel]
- courtney: I think we should take that offline and research it.
- 14:36:25 [nigel]
- andreas: I see a problem with the lines value - this defines the height of the region. A line is defined by the height of the first line of the cue, so a region does not
- 14:37:07 [nigel]
- ... always have the same height, as it depends on the first line's size. This is a hard topic to research in general, how this will resolve.
- 14:37:43 [nigel]
- nigel: What's a concrete example of that problem?
- 14:38:12 [nigel]
- andreas: In general the mapping from TTML to WebVTT may not be possible because for each cue selected into the same region the line height could be different,
- 14:38:19 [nigel]
- ... which will result in the region changing height.
- 14:38:40 [nigel]
- Loretta: presumably WebVTT would expand the region to accommodate the 5 lines and TTML would clip?
- 14:38:58 [nigel]
- glenn: That would depend on lineHeight, fontSize and overflow attributes in TTML.
- 14:39:11 [nigel]
- ... Right now we don't have an object-fitting algorithm such as in CSS.
- 14:39:22 [nigel]
- Loretta: Is there a way of setting font-relative dimensions?
- 14:39:38 [nigel]
- glenn: yes, they can be defined in ems or cells. Ems would be font-relative.
- 14:40:24 [nigel]
- andreas: Why is region height important for WebVTT when no background can be drawn?
- 14:40:34 [nigel]
- Loretta: the height is important because that determines when scrolling will start.
- 14:41:56 [nigel]
- nigel: This seems very similar to the overflow attribute in TTML - if some lines fall out of a region, which ones should an implementation hide?
- 14:42:38 [nigel]
- glenn: That's an implementation issue.
- 14:42:55 [nigel]
- andreas: Can you explain the difference between the region anchor point and the viewport anchor point?
- 14:43:30 [nigel]
- courtney: the region anchor setting defines a point that is fixed in location relative to the region, in case the region has to grow.
- 14:44:03 [nigel]
- ... the viewport anchor setting defines where in the video the region must overlap.
- 14:44:45 [nigel]
- ... It needs to be understood in relation with the display-align setting.
- 14:45:34 [nigel]
- Loretta: right, we need two points. It's like sticking a pin through the region and in the viewport, and any changes to region size keep that point invariant.
- 14:45:55 [nigel]
- courtney: the region viewport anchor setting has two points defined, the point within the video and the point within the region.
- 14:46:07 [nigel]
- ... Then there's an additional point that is held constant when the region is resized.
- 14:46:53 [nigel]
- q+
- 14:47:05 [nigel]
- ack
- 14:47:12 [nigel]
- ack nigel
- 14:47:58 [Loretta]
- q+
- 14:48:23 [nigel]
- nigel: I think we need to understand the region mapping algorithm from WebVTT - to origin and extent, and if that's a single value or if there are multiple values,
- 14:48:32 [nigel]
- ... which in TTML we can do using set elements on the region.
- 14:49:50 [nigel]
- nigel: I think we need a strawman algorithm for this mapping so that we can look at it.
- 14:50:06 [nigel]
- andreas: I propose a gist on github for example.
- 14:50:30 [nigel]
- courtney: I'll take it as an action item to come up with a strawman proposal.
- 14:51:28 [nigel]
- glenn: A moment ago I thought I heard something about origin being in the centre in TTML - was that the question?
- 14:51:37 [nigel]
- Courtney: yes, would you do that with displayAlign?
- 14:52:13 [nigel]
- glenn: origin is always top left. You can use displayAlign to define where lines are drawn from - in which direction. Right now there's no anchor mechanism in TTML.
- 14:52:25 [nigel]
- ... Sean did come up with a change proposal, which I will have to try to dig out.
- 14:52:31 [nigel]
- courtney: It's always top left?
- 14:52:34 [nigel]
- glenn: yes.
- 14:53:29 [nigel]
- nigel: In scope terms, do we need to consider the placement of text within regions, and also the placement of text not in regions?
- 14:54:09 [glenn]
- https://www.w3.org/wiki/TTML/changeProposal015#region_anchor_points
- 14:54:11 [nigel]
- glenn: on the prior point, change proposal 15 has a section on this.
- 14:54:53 [nigel]
- ... This is proposed for TTML2, but not implemented yet.
- 14:55:40 [nigel]
- courtney: In WebVTT cues can have positioning - in TTML1 they don't. So in the mapping to TTML we need to translate to a region.
- 14:56:16 [nigel]
- glenn: In TTML2 we are defining inline region definitions, so div and p in TTML2 can take a child region element, including extent and origin.
- 14:56:27 [nigel]
- andreas: This is sometimes misused in operation!
- 14:56:58 [nigel]
- andreas: In mapping from WebVTT with no region and snap to lines is active, from the WebVTT spec it looks like margins need to be added top and bottom. Is that correct?
- 14:57:26 [nigel]
- andreas: If the first line is not to be at the bottom and the last line must not be at the bottom, that is.
- 14:57:33 [nigel]
- ... We need clarifications of this for accurate mapping.
- 14:58:22 [nigel]
- Andreas: will add to the Issues list on the wiki
- 14:59:52 [nigel]
- Topic: Summary of the day
- 15:03:43 [nigel]
- nigel: We've looked at existing work from Andreas and Courtney, thought about the processing models and document structures,
- 15:04:15 [nigel]
- ... identified that style attributes should mostly transfer straightforwardly, thought about metadata a bit, and spent a while on layout.
- 15:04:38 [nigel]
- ... Tomorrow we have some time set aside for testing, and I suggest we combine the test case generation with the mapping algorithms.
- 15:06:34 [nigel]
- nigel: Thank you everyone, see you tomorrow.
- 15:06:37 [nigel]
- adjourns meeting.
- 15:06:47 [Zakim]
- -zcorpan
- 15:06:51 [nigel]
- rrsagent, generate minutes
- 15:06:51 [RRSAgent]
- I have made the request to generate http://www.w3.org/2014/09/16-tt-minutes.html nigel
- 15:06:52 [Zakim]
- -Loretta
- 15:07:04 [Zakim]
- -Geneva
- 15:07:05 [Zakim]
- IA_TTWG()3:00AM has ended
- 15:07:05 [Zakim]
- Attendees were Geneva, zcorpan, Loretta
- 15:07:11 [nigel]
- rrsagent, generate minutes
- 15:07:11 [RRSAgent]
- I have made the request to generate http://www.w3.org/2014/09/16-tt-minutes.html nigel
- 16:12:18 [Cyril]
- Cyril has joined #tt
- 16:16:01 [glenn]
- glenn has joined #tt
- 16:27:21 [pal]
- pal has joined #tt
- 17:02:52 [Zakim]
- Zakim has left #tt