 Okay, so our next speaker is Andreas. Andreas is from the IIT and he's going to talk to us about TTML subtitles and it's open to support. Thanks, Christoph. Yeah, thanks to you for coming here on a Sunday morning and also thanks a lot to Christoph and ABU for organizing this lot at Fasten. Before I dive into subtitles, some words about my organization IIT. It's called Institute for Unfung Technik, which translates to something like Institute for Broadcast Technology. Our shareholders are the public broadcasters of Austria, Switzerland and Germany. Part of our mission is to help the community develop and adapt new broadcast technology. And it is no surprise that we are participating in technical standardization. We are members of SIMT, DVB, HVB, DVV, EBU and W3C and other standard organizations and we are actively contributing. For TTML and subtitles, EBU and W3C are most important because the TTML, the Time Text Markup Language, is a W3 standard. It has quite some history, it's mature in a positive sense, it's really stable and a lot of people have put their work and requirements into this standard. And yes, the major milestone for TTML was 2009 when it was published as candidate recommendation. At that time, still as DFXP and some of you may know that acronym and unfortunately they changed it when it reached final recommendation to TTML and still some people do not make the link between DFXP and TTML, but if you see DFXP, this is TTML. So TTML reached final recommendation status in 2010 and three years later there was a second edition which mainly brought some clarifications, some corrections, but nothing of new features. So most important profiles are probably SIMT Time Text, EBU, TT and IMA-C1. While SIMT Time Text may disappear more and more over the next year in favor of IMA-C1, IMA-C1 is really possibly, especially for web delivery, the most important profile where we can see a conversion of other profiles into IMA-C1. So TTML is XML. I don't know if anybody of you have problems with XML, seems not the case, I hope so. But in 2003 there was a peak of XML popularity and it was a natural choice to use XML, but over the years web developers lost their love for XML if there was love in the first place. So there was a foundation of what WG where browser manufacturers split off W3C and developed HTML5 as kind of counter-proposal to the XML-based HTML, and at the same time they also developed web VTT although TTML was already finally standardized. So web VTT is still favored by the browser community and browser manufacturers. So every time you speak of TTML you have to speak of web VTT and vice versa also. So the two standards are there and will stay there although they actually solve the same problem. Web VTT is natively supported by browsers and iOS, but TTML is often the choice of content-driven organizations like broadcasters but also Hollywood studios. So TTML may not be natively supported by some browser or most browsers, but there are a lot of video players and other frameworks that now support TTML. We see a common trend that standard makers use open source to bring their standards in the market and the same is true for TTML. Standard bodies like EBU have sponsored or developed certain projects like the EBU-TTD integration in dash.js. EBU-TTD is a profile of TTML and also a subset of IMC-1. It has also the EBU-TTD live kit kicked off and our organization has put a subtitled conversion framework open source as well as some samples for TTML. Netflix was also pushing IMC-1 has sponsored the Time Text Toolkit which is developed by Skyenuff or in person Glenn Adams who is the editor of TTML. Movie Labs, an organization from the Hollywood studios like Disney, Sony and Universal, they sponsored IMC-JS and this is developed by Pierre Lemieux who is also the editor of IMC. So I speak about most of all of these open source projects and I want to go through separate stages of the chain where you can process TTML and I separate it into production, contribution, distribution and presentation. And if we start with production, the possible most popular open source subtitle editor, subtitle edit supports TTML. By the way, I put the main program language and the license of the open source projects as a bullet point. I won't mention them explicitly in my talk but I think it's clear from the slides themselves. So subtitle edit supports TTML. It's nearly standard conform. It has some problems with styles so coloring cannot be done in TTML with subtitle edit. But I think if some few issues are fixed then it's really standard conform and interestingly there Netflix Time Text Profile is the most standard conform one of TTML. For Netflix Time Text it's maybe worth mentioning that this company specific profile will be deprecated by Netflix in favor of IMC. So I think for the long run IMC will be the profile you have to track. I'm not sure if you know AMARA. AMARA is a community platform for fansubbing and they have an online subtitle editor and they put also their tool open source. It has a simple TTML export. The same is subtitle edit. There's a minor bug in it. It's not very serious but if you test against standard conform it may fail but I think it could be easily fixed. So this lot is about web delivery but TTML actually was also developed to support archive and exchange of subtitle files. One open source project that can be used in this part of the chain is the SCF, the Subtitle Conversion Framework, published by IIT. So we focus on the quite popular broadcast subtitle exchange from EBU-STL. And we support through XSLT scripts the conversion from STL to an archive format of TTML and then to the distribution format of TTML. So it's actually EBU-STL to EBU-TT to EBU-TTD which is also IMSC. So we mainly use XML technology there. We use XSLT. We would have liked to use XSLT2 but because most of the libraries do not support it, we still restrict ourselves to XSLT1. The Time Text Toolkit is a really interesting tool. It has different functions and modules you could use. It can validate different TTML profiles. It can generate PNGs and SVGs from TTML. And it already covers some TTML2 features like Ruby which you really would like to use if you want high quality Japanese subtitles. So Time Text Toolkit is very helpful if you want to integrate your own implementation as a kind of a complement software tool. And the same is for the EBU-TT Live Toolkit which is maintained by EBU and also really greatly supported and pushed by BBC. The EBU-TT Live Toolkit covers the scenario of contribution of streamed subtitles. It could be actually live subtitles but also subtitled plate from file and streamed. It covers the profile of EBU-TT Live which is now published as 0.9 and soon in spring it will be published as 1.0. And the current carriage mechanism that it supports is WebSockets. And with the EBU-TT Live Toolkit you actually have scripts to simulate producer or consumer node or system that forwards the subtitles or encodes the subtitles to EBU-TTD. So that's very interesting and you should check it out. So for distribution there have been MP4 box support for TTML for quite some while. They enable you to package TTML into MP4. This runs out of the box with EBU-TTD. But if you use the GPAC-specific NHML description language you could actually use any kind of TTML flavor. The good thing is about MP4 box that's by from GPAC. You possibly know this project. They are quite active in MPAC standardization. So you can really trust the standard conformance of that implementation. So the main or the biggest support for TTML is possibly on the presentation side. And I just pick here three different projects but they are more out there. So first from the standardization perspective we found out that the first step for implementation is to have a good reference. And therefore we published samples of TTML, the TTML source code, a video and reference images. So any implementer can use it and this has been used by a later project I will show. So VLC player I think does not need any introduction. With the latest likely builds it supports TTML subtitles possibly also in the official version. I'm not sure but maybe some of the VLC heads can... The latest likely builds from yesterday. Okay fine. So yeah I think it's great that it supports it. I think it needs some more support of features like colors and styling features but it's a really good start. One thing you have to keep in mind that you have to rename your files to TXT because for some reason the XML extension is not supported but maybe we can figure it out later. One of the most promising open source project from my perspective currently is IMSCJS which is a renderer of TTML to HTML5. It's of course written in JavaScript and it I think nearly covers all of IMSC1 and if something is missing that's because of missing supports in CSS. Because some of the requirements we have for subtitles are actually not met by some of the CSS features. So just to show you how easy it is to use that. Once you have your XML file loaded in an XML string you can use the from XML message from IMSC from the IMSC object and then you get back a TTML object and the TTML object has other functions that gives you all media times. There are times where subtitle presentation changes and by going through this array you can generate a snapshot, a representation of the TTML document for that specific time. This is called in TTML language intermediate to chronic document. I just call it snapshot here. And then if you have a download where you want to insert your subtitle HTML, just give it to the render HTML function of IMSC, give it the snapshot and the download and insert it under the download and render it there. So I think it's quite easy really to use it and it has really a good coverage and very standard conformance. Okay, so in summary we can see a broad support of TTML through open source projects and I think it's just some tweaking needed to get the full advantage of that. And what we have seen from testing different open source projects, there is a need that standard makers also support some open source projects they're not affiliated with with test material and bug reports and I think their adoption will even speed up more. Okay, so the slides are all on the FOSSTEM sites. If you have problems, there have been an issue with the file extension of the PDF slides, but this should be fixed today. So I put just the links up here just for recording. So the most of them of course are on GitHub. Okay, and that's it. Thank you. There are a few questions actually. Did there any? You were mentioning before box that it's standard conformed features. I was testing that a little bit while ago and at least for IMS C1 it was not creating standard conformed swings and it also didn't support picture based sometimes. Okay. At this point you probably have to be a bit careful and check what the output is. Yeah. There are a bit of stickers for that. Okay. The question was if MP4 box is really standard conformed because the colleague had problems in packaging IMS C1 or the text, the image profile of IMS C1. So he said that you may need a bit careful with this current status. Yes. As I said, if you want to use another profile like ebuttd, you have to go through this NHML description language. So it won't work out of the box. I checked yesterday with a colleague, Romain from TPAC and he said, okay, you can use IMS C but you have to use NHML. We didn't do it ourselves. We mostly focus on ebuttdd. And there's an ISO standard, 14496-30 that defines how TTML should be packaged and with ebuttd they do it quite right. But you are right. So we are looking forward to more support of other profiles. It makes it easier to use it with this profile. What's the profile? Sorry? What's the profile? What's the profile? Okay. That's a good question. Let's say it's a derivation of the base TTML. TTML is very big. So it's more like a toolkit. So you won't use all of it. But because everybody from every region in the world puts their requirements into this TTML, they won't use all of it. So they subset it and put little extension to it sometimes, which will be later integrated into TTML. So in the main profile, as I said, are ebuttd and imsc. There's also simttt still and still plays a role because it's also mentioned by U.S. legislation. And there have been also CFFTT, which is a common file form of time text. But this, I think, is also deprecated in favor of imsc. Okay. The question was if TTML has a feature to adapt to the screen size, so the length automatically adapt to it. Yes and no. You can think of it as a feature set based on HTML. I think, actually, they are really based on the same styling feature set. And of course you can set wrap as option for text. So you do not put any line breaks in. It will just wrap accordingly. And you can use percentage, which you should use for the font size. So the font size adapts dynamically and responsive to the screen size. But the thing is that subtitles actually put line breaks in there for a reason. And they are very fond of the line breaks. So there are some tools or features where you can expect TTML adapt automatically to the screen size. But actually, if you really want a high quality subtitle, you may have to pre-process them before. One last question. Do any of your delivery options work on iOS? Okay, the question was if any of the delivery options work on iOS, yes? If you build an app. Which is done. So the German broadcaster have a really good archive for their video on demand content which supports ebutt or just a simple profile of TTML. Works fine. They have players, they work on it. They have some problems if you go full screen. But that's because of the native support of other formats. So yeah, you can use TTML on iOS. But you have to build your own code around it. Thank you very much. Thank you.