Skip to content

EBU TT Part 3 to TT D conversion requirements

EyalLavi edited this page Jan 28, 2017 · 4 revisions

This page is pending review - treat with caution!

This page lists conversion requirements for an encoder of EBU-TT Part 3 documents into EBU-TT-D documents for distribution.

The conversion requirements are based on the conformance requirements referenced in:

# Reference Conversion requirement Release Notes
D1 R1 At any moment in time, the content of zero or one Part 3 documents shall be added to the timeline of the TT-D document. MVP No active document for a period means no subtitles for that period so it must still be taken into account when constructing the timeline for distribution.
D2 R2 For periods when no Part 3 document is active, or when a Part 3 document with no content is active, the TT-D will include no subtitles for presentation. MVP A TT-D document with no content may be issued, or the timing for subtitles can be modified.
D3 R4-R6 The encoder will process a single sequence of Part 3 documents and emit a single stream of TT-D documents. MVP One sequence in, one stream out.
D4 E3 Timings on tt:body and tt:div will be recalculated and applied to tt:p and tt:span MVP Timings cascade.
D5 E4 Overlapping regions that are active at the same time will be resized such that they do not overlap. ??? Assuming we prioritise presentation of subtitles. Will also require a strategy for handling text within a resized region.
D6 E5 xml:space attribute applied to tt:p or tt:span will be removed. MVP xml:space is only allowed on the tt:tt in 3380. The encoder will convert white space characters and/or move this attribute to the root element.
D7 E6 Timings in clock and smpte time base will be resolved and converted to media time base. MVP Will require temporal and formal conversions taking into account the values of ttp:frameRate, ttp:frameRateMultiplier, ttp:markerMode, ttp:dropMode, ttp:clockMode
D8 E8 Time count values will be resolved and converted to full clock values ??? e.g. from 3.5h to 03:30:00
D9 E14 The default value for cellResolution in Part 3 should follow v1.1, in which case no conversion is necessary (both 32 15). This is just a reminder that an assumption of 40 24 was made based on v1.0 N/A
D10 E27,E21, E22, E23 Remove the following elements: ebuttm:documentTargetActiveFormatDescriptor,ebuttm:documentEbuttVersion, ebuttm:documentIdentifier, ebuttm:documentOriginatingSystem, ebuttm:sequenceIdentifier,ebuttm:sequenceNumber, ebuttm:authoringDelay ???
D11 E35 If tts:padding is defined for both a tt:region and a tt:style applied to that region, the padding will appear inside the parent element it is defined for. 3350 makes an exception for tts:padding but 3380 doesn't. 3350: A style attribute that is defined for tt:region SHALL NOT appear in tt:style and vice versa. The only exception from this rule is the tts:padding attribute. tts:padding may appear in both tt:style and tt:region. 3380: The style attributes of the tt:style element as well as the style attributes of the tt:region element shall only appear inside the parent element they are defined for. This means that a style attribute that is defined for the tt:style element shall not appear in a tt:region element and vice versa
D12 E37 The default value of tts:fontSize will be converted from 1c (or 1c 2c in v1.0) to 100% MVP If the source part 1 document relies on the initial values, the version must be considered when converting. EBU-TT-D allows percent units only.
D13 E41 If tt:head does not contain a tt:layout element, it will be created with a tt:region. MVP Strategy for a default region is required (e.g. bottom centred?)
D14 E43 If tt:origin and tt:extent are specified in cell or pixels, the values will be converted to percent. MVP
D15 E44 Regions that extend beyond the root container will be resized ??? This is subtle: in 3370 the region is allowed to extend but it must be clipped. In 3380 such region is illegal.
D16 E47 If the Part 3 document does not contain tt:div, this elements will be added MVP For MVP, wrap the entire content of tt:body in a tt:div?
D17 E48 Nested tt:div elements will be removed MVP Not allowed in 3380
D18 E49 All tt:div elements containing zero tt:p elements will be removed. If this results in zero tt:div elements remaining, the whole tt:body will be removed. MVP 3380 requires both tt:p and tt:div. If a 3370 document contains no tt:p, the tt:div must also be removed.
D19 E52 Timings on tt:p and its children tt:span will be resolved and applied to either tt:p or tt:span MVP Apply resolved timings at the lower level, i.e., if tt:span is used apply the resolved timings to the tt:span, otherwise to the tt:p
D20 E53 Remove nested tt:span elements. MVP
D21 E54 Colour values of type named colour string, RGB colour triple and RGBA colour tuple will be converted to hex notated RGB colour triple or a hex notated RGBA colour tuple. ???
D22 E56 Values for tts:fontSize expressed in pixels or cells or using different horizontal and vertical values will be recalculated and expressed as a single percentage of a cell MVP
D23 E59 Values for tts:lineHeight expressed in cell or pixels will be recalculated and expressed as percentage or "normal" MVP
D24 E61 Values for tts:padding expressed in cell or pixels will be converted to percent. MVP
D25 E62 If a tt:div and one of its descendent tt:p reference a region, remove the reference from one of them. ???
D26 E70 the dur attribute will be converted to begin and end timings MVP dur not allowed in 3380
D27 E20 If used, ebuttm:conformsToStandard will have the value urn:ebu:tt:distribution:2014-01 ???
D28 E24 If used, the value of ebuttm:documentCopyright will be mapped to ttm:copyright within tt:head MVP