Meeting minutes
This meeting, plus Chair news
Nigel: Gary sent his regrets for today - he's actually no longer at Mux, and is having to step
… away from W3C work for the time being, so the de facto status is we have one Chair at this moment.
… Agenda for today:
… IMSC-HRM
… DAPT, including a demo from Cyril
… also still on the agenda I retained the fontVariant discussion topic, and TPAC planning, in case we want to cover those
… Is there any other business?
no other business
IMSC-HRM
Nigel: Looking at the responses to the CfC to transition to CR,
… I see 2 approvals, 0 objections, so I declare we have consensus.
… The Pull request at w3c/
… (different reviewers than those who responded to the CfC)
RESOLUTION: Transition IMSC-HRM to Candidate Recommendation
Nigel: We now need Atsushi's help to make that happen, I think.
… Is there anything else to say on this, aside from thank you to everyone for your input on this?
Pierre: Thank you Nigel, on my todo list is creating the tests and a draft call for content that we should send around.
Nigel: Sounds good
Pierre: I can have that done for the next meeting.
… Do you have any specific input?
Nigel: I don't, right now, I'll review though!
Pierre: Of course! But anything else a priori?
Nigel: I'd just be calling for content and/or implementations.
Pierre: Of course, yes.
… We should probably do a more generic call and then a specific focused call to media companies who may not have implementations.
Nigel: We need to demonstrate implementation so we should be clear that their responses can be held private,
… and that we are interested to know the tools used to create the content.
Pierre: They're only interested in the content they generate. We shouldn't over complicate this.
Nigel: If it turns out they have common authoring tools we would want to know that.
Pierre: I would not make that compulsory because it would put them off.
… If we make it hard for non-technical people to respond then they will not respond.
… If we need to go to vendors and figure out what was used, we aren't going to bother.
… It will be hard enough to get content, without the actual workflow as well.
Andreas: If it is not really needed for exit criteria then I would say it is voluntary information.
… If there are 2-3 authoring tools that should be sufficient for complying with the exit criteria.
Nigel: That's why I'm making this point: I think it is necessary for the exit criteria
… We should allow people to provide content for our inspection.
… The alternative is to ask providers to give us the results of running the HRM on their content, they
… don't have to show us the content at all.
Andreas: Re the authoring tools, if you ask for content you could just say that we are happy to receive
… information about the authoring tool if it is available. I don't think you would go a second time to ask them again.
… If providers have a single chain, common in Germany, and they have the information, then they can provide it.
Nigel: checking our exit criteria, I agree, since we only need >=1 content implementation + >1 validating implementation,
… or >=2 validating implementations, we don't actually need multiple content implementations, minimally.
… It would be nice to have.
… I think we're in agreement now, we just need to know there's at least 1 authoring tool out there.
Pierre: Yes.
Nigel: Any more?
Pierre: No, thanks for the discussion.
Nigel: This is why we're here!
DAPT
Nigel: I presented DAPT work to the MEIG on Tuesday
Nigel: It was useful I think.
… I also will be presenting it to the EBU Access Services Experts plenary on Friday next week.
Slides for next week's presentation
Nigel: I'm regarding this as part of the Wide Review invitation work.
… But I still have on my to do list requesting HR and WR from liaisons and others.
… We still have CR must-have issues open.
Cyril: I was reading the minutes from the MEIG meeting. Kaz asked about the ordering of words in Japanese
… translations - he asked how to deal with word order difference. Did you answer that?
Nigel: Yes, I did.
Cyril: His point is about the structure of the language. I can show you an example.
Netflix TTAL <⟶ DAPT round tripping
Cyril: [shares screen]
… As you know Netflix has been working on the TTAL language and is standardising it,
… and the idea is to demonstrate that lossless roundtripping with DAPT can be done.
… The code I wrote is not yet open source, I'm thinking about open sourcing it.
… It would help e.g. a tool vendor that supports TTAL already to use as a front-end to convert XML to JSON
… with low effort.
… Similarly if they produce JSON they could use JSON → XML conversion to deliver the standard XML to
… streaming services like Netflix.
… I can show you some inputs I have been using.
… [shows a TTAL JSON extract from a movie]
… Lots of proprietary information
… You can see frame based start and end timing, annotations etc.
… in XML [shows an equivalent DAPT XML document]
… metadata, styling, layout and events
… begin, paragraphs that contain text, with daptm
attributes, here showing the original language.
… This is work in progress.
… There's some Netflix proprietary information in nttm
namespace, Netflix's own.
… I'm looking to see if anything needs to be mapped to daptm
that is not yet mapped.
… One of them is the original language - we carry that even if there's no event in that language.
… [shows another example of DAPT for a different movie]
… This is Japanese, translation, but it doesn't say the original language anywhere.
… That may be an extension to consider. I will file an issue.
… I had no particular issue converting TTAL JSON to DAPT and back.
… Small details maybe.
… For example, looking at metadata, I used the ebuttm:sourceMediaIdentifier
element we reference in the spec.
… I wonder if this is the right way to do it.
… For example we have lots of Netflix-specific internal metadata like movieId
, packageId
, runtime
, those three
… are relevant to the source media identifier.
… Can we extend the ebuttm
metadata? Are there any restrictions in EBU about this?
Andreas: I think we had this discussion in the EBU and we need to check on the EBU-TT Metadata spec,
… but as far as I remember it is completely free to extend with non-EBU namespace attributes.
Cyril: Is there a validator for EBU-TT documents?
Nigel: There are XSDs.
Cyril: Are there prohibitions on extensions?
Andreas: Nigel and I would need to check, but for validation we say that foreign namespace entities are
… pruned prior to validation.
Cyril: The other one is I used ebuttm:documentOriginalProgrammeTitle
, and for others I used the
… ebuttm:documentOriginalEpisodeTitle
but I wondered if there is metadata for season number and episode number?
Andreas: I can't remember
Nigel: I don't think so but I'd have to check
… I would not be surprised if the TV-Anytime spec defines entities for that data though.
Cyril: OK, back to the examples.
… We have agent with corresponding actor
… Styling is basic
… For every event we have...
… A question: We have several ways to provide annotations in DAPT.
… One is a desc
element with a daptm:type
attribute, another is a daptm:eventType
so it could be an
… element or an attribute.
… I would like to be tighter on recommendations for how people use these annotation mechanisms.
… Also, we have spans that control the timing of words inside events - that's the concept of adapting
… the display for speech recording.
Nigel: This came up in the MEIG and I realised that we appear to say nothing about putting times on
… spans in the spec, and I think we probably should.
… At least I could not see it on a quick hunt.
Cyril: OK, I think this was the issue raised by Simon from YellaUmbrella.
… Maybe it's only in an example. Yes, here in Example 10.
Nigel: I'd like to be more explicit about that.
Cyril: Yes, maybe.
Nigel: I will raise that.
Cyril: Here's a "dialog list" where the original language text is present.
… Here in another example we have both original and translation text in the document.
… We have inline styles that match in both languages, a word in italic in Korean and also the equivalent in English.
Nigel: For ideographic languages that may not use italics for emphasis, do you need to identify
… that some kind of emphasis is present on text in all the languages in the event?
Cyril: I don't know, possibly.
… Another interesting feature is text spoken by 2 characters.
… Two values are present in the ttm:agent
on the div, but the text is present once.
… Here for a Japanese example I'm using itts:forcedDisplay
from IMSC.
… Maybe worth mentioning in the spec.
… The idea is that when you produce a dub you know what is not going to be translated and what should
… remain as forced narrative.
… A by-product of creating the dub is to identify the non-translated text.
… Then what's really nice is when you use Pierre's imsc.js example renderer,
… which has different colours and positions for different speakers, but you can tick the "forced narrative"
… box and see only the forced narrative ones.
… Any event in the DAPT script that is not meant to be voice recorded, but dubbed, will end up as forced narrative.
… For example in the original show you have text on the screen in the original language.
… The dubbing actor will not speak that, but the transcriber has identified it.
… Anything that will not be dubbed will have to be in the forced narratives.
… Is that clear?
Nigel: I need to think about it, I think so. Interesting!
Cyril: The last thing I want to demonstrate is audio description.
… In this example, without speak and rate, just text, there's a "narrator" character.
… We identify in Netflix proprietary metadata the voice, the engine, the vendor and the gender.
… And the language.
Nigel: Do you ever have an agent with a different language from the text?
Cyril: Maybe a French agent would pronounce English with a French accent. I will check.
… Here's an example with SSML, where there's prosody that can be mapped onto tta:rate
but there's also
… phoneme information on how to pronounce the word cobra, and I don't know how to map that to DAPT yet.
… If I use the phoneme
element, how does it work? In TTML what happens?
Nigel: The foreign namespace element would be pruned for validation.
Cyril: If we want to keep this then we would need to replace the SSML content with attributes or something, right?
Nigel: Not necessarily.
… We could define a behaviour for SSML content if we wanted processing of SSML namespace elements to
… do something.
… Or as in the ticket (#121) we could adopt an attribute-style approach.
… We have choice and I don't know which is right.
Cyril: The first choice means modifying the semantics of TTML in the context of DAPT.
… In imsc.js I think, the word cobra would probably not be rendered.
… I would like to be backwards compatible with TTML renderers for that. I don't know, to be discussed.
Andreas: The foreign namespace elements are pruned for validation but not for processing.
… For validation, foreign namespace vocabulary is ignored.
… For processing, everything would be in. Of course a presentation processor would not know what
… to do with unknown vocabulary. Either the processor knows SSML and how to render it,
… or you want TTML presentation and in that case it makes more sense to translate it to TTML vocabulary.
Cyril: Let's continue the conversation in #121.
… I ran it on several pieces of content, with no particular issues.
… One that I did open is #146 for signalling frame rate where we don't mention ttp:frameRateMultiplier
.
… I agree it can be a note not normative language.
… The other one is #147 - the spec currently says that there can be multiple metadata
elements.
… Being able to identify which metadata
element is the one you need for DAPT is useful, because otherwise
… you have to parse everything and later ignore the ones you don't want.
… I think we could have a daptm:metadataType
that signals that the metadata contains only DAPT stuff.
… The rest should be ignored.
Nigel: That's interesting, I need to think about that.
Cyril: That's it, I will keep iterating on this representation trying to see what needs to be put in the
… document in terms of vocabulary from a Netflix point of view, what we need a standard mapping for.
… I will try to make this code open source.
Nigel: That's brilliant, thank you.
Cyril: We probably already have a first implementation for the exit criteria.
Nigel: And we also have a presentation implementation which needs bringing up to date -
… that's the BBC's Adhere.
Cyril: It would be great if I could give it content and it would render it!
Nigel: It was made originally for TTML2 and ADPT, so it ought to work, but I haven't tested it with DAPT
… content yet.
… Interested to know if it does work!
Nigel: Thank you for that Cyril, I noted a couple of actions to raise issues, in the minutes.
TPAC 2023 planning
Nigel: From where we are, it looks clear to me that DAPT will be on the agenda.
… I'm not sure in what form - maybe we will be up to having a plug-fest?
… Being in Europe, there may be interested folk around.
Pierre: The other topic that might benefit from an in-person meeting, maybe not best in Europe,
… is trying to converge IMSC and ARIB-TT. Maybe that's a question for Atsushi.
… Might be a little easier in an Asia-based TPAC.
… A topic we ought to keep on our radar.
Nigel: I agree.
… One of my observations at the MEIG was the number of Japanese attendees - and Kaz also
… wanted to talk about the SSML stuff in DAPT. There seems to be a bubbling interest.
Pierre: Yes.
Meeting close
Nigel: Thanks everyone, we're at time. [adjourns meeting]