Copyright © 2026 World Wide Web Consortium . W3C ® liability , trademark and document use rules apply.
This specification defines a text-only profile of [ ttml2 ] intended for subtitle and caption delivery applications worldwide.
It improves over the Text Profile specified at at [ ttml-imsc1.2 ], with the improvements summarized at L. Summary of substantive changes .
This section describes the status of this document at the time of its publication. A list of current W3C publications and the latest revision of this technical report can be found in the W3C standards and drafts index .
This document was published by the Timed Text Working Group as an Editor's Draft.
Publication as an Editor's Draft does not imply endorsement by W3C and its Members.
This is a draft document and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to cite this document as other than a work in progress.
This document was produced by a group operating under the W3C Patent Policy . W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent that the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy .
This document is governed by the 18 August 2025 W3C Process Document .
This specification defines a text-only profile of [ ttml2 ], which is intended for subtitle and caption delivery worldwide, including dialog language translation, content description, captions for deaf and hard of hearing, etc.
The specification is designed such that:
This section is non-normative.
This specification defines a document exchange format and associated validation and presentation requirements for subtitle and caption delivery worldwide, including dialog language translation, content description, captions for deaf and hard of hearing, etc.
The format is a profile of [ ttml2 ], called the Text Profile , consisting of a subset of the features of [ ttml2 ] alongside additional features specified in [ EBU-TT-D ], e.g., F.8 #multiRowAlign , and defines new features, e.g., F.5 #fillLineGap . The Text Profile is text-only: the timed text that comprise the subtitles and captions is expressed exclusively using code points defined in The Unicode Standard .
As detailed in 6.3 Profile Resolution Semantics and I. Compatibility with other TTML-based specifications , this specification is designed to be compatible with other text-only profiles of TTML, including [ ttml-imsc1 ], [ ttml-imsc1.0.1 ], [ ttml-imsc1.1 ], [ ttml-imsc1.2 ], [ SMPTE2052-1 ], [ EBU-TT-D ], [ ttml10-sdp-us ] and [ CFF ].
Earlier versions of this specification specify an image-only profile, called the Image Profile, which is no longer specified herein. I.6 Previous versions of IMSC discusses the relationship between this and earlier versions of the specification.
To improve rendering fidelity, A. Reference Fonts defines reference fonts and requires Processors to support one or more fonts with similar font metrics as these reference fonts. Similarly, in order to increase the confidence that text will be presented correctly by Processors targeting specific languages, B. Common Character Sets defines common character sets that authors are encouraged to use.
An Hypothetical Render Model is specified separately at [ imsc-hrm ]. The Hypothetical Render Model allows subtitle and caption authors and providers to verify that the Text Profile documents they supply do not exceed defined complexity levels, so that playback systems can render the content synchronized with the author-specified display times.
This specification was initially based on [ SUBM ].
The following example demonstrates a syntactically valid Text Profile and [ EBU-TT-D ] document instance and how it would be rendered. It is not intended to be used as a template for a subtitle file.
The
example
is
arranged
such
that
there
is
no
white
space
added
to
the
text
within
the
p
element;
such
white
space
can
cause
unexpected
formatting,
if
present.
<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml"
xmlns:ttm="http://www.w3.org/ns/ttml#metadata"
xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
xmlns:tts="http://www.w3.org/ns/ttml#styling"
xmlns:ebutts="urn:ebu:tt:style"
xmlns:ebuttm="urn:ebu:tt:metadata"
xmlns:itts="http://www.w3.org/ns/ttml/profile/imsc1#styling"
ttp:timeBase="media"
ttp:cellResolution="32 15"
xml:lang="en" >
<head>
<metadata>
<ebuttm:documentMetadata>
<!-- EBU-TT-D defines its own conformance signalling mechanism,
since, being based on TTML1, the ttp:contentProfiles parameter
is not available; it was introduced in TTML2. -->
<ebuttm:conformsToStandard>urn:ebu:tt:distribution:2018-04</ebuttm:conformsToStandard>
<ebuttm:conformsToStandard>http://www.w3.org/ns/ttml/profile/imsc1/text</ebuttm:conformsToStandard>
<ebuttm:conformsToStandard>http://www.w3.org/ns/ttml/profile/imsc1.2/text</ebuttm:conformsToStandard>
<ebuttm:conformsToStandard>http://www.w3.org/ns/ttml/profile/imsc1.3/text</ebuttm:conformsToStandard>
</ebuttm:documentMetadata>
</metadata>
<!--
The styling element defines the styles that will be applied to <p> and <span> tags.
EBU-TT-D uses referenced styles only - inline styles are not supported.
-->
<styling>
<style xml:id="paragraphStyle"
tts:fontFamily="ReithSans, Arial, Roboto, proportionalSansSerif, default"
tts:fontSize="100%"
tts:lineHeight="120%"
tts:textAlign="center"
tts:wrapOption="noWrap"
ebutts:multiRowAlign="center"
ebutts:linePadding="0.5c"
itts:fillLineGap="true"/>
<style xml:id="spanStyle"
tts:color="#FFFFFF"
tts:backgroundColor="#000000"/>
<style xml:id="yellowStyle"
tts:color="#FFFF00"
tts:backgroundColor="#000000"/>
</styling>
<!--
The layout element defines the regions where subtitle text is displayed.
Here, a top and a bottom region are defined, with a clearance of 2 lines of
text from the top and bottom.
With a cell resolution of 32 by 15, a font height of 100% (of cell height) equals
6.66% (100/15). A line height of 120% of the font size equals 8% of the height of the
active video (1.2 x 6.66). Each region accommodates 3 lines of text: 3 x 8% = 24%.
The width of the regions is set at 70% to take into account 3:4 display and 1c
of line padding (2 x 0.5c).
-->
<layout>
<region xml:id="topRegion"
tts:origin="15% 16%"
tts:extent="70% 24%"
tts:displayAlign="before"
tts:writingMode="lrtb"
tts:overflow="visible"/>
<region xml:id="bottomRegion"
tts:origin="15% 60%"
tts:extent="70% 24%"
tts:displayAlign="after"
tts:writingMode="lrtb"
tts:overflow="visible"/>
</layout>
</head>
<body>
<!--
The intended use of DIVs is to hold semantic information, for example sections
within a programme. DIVs are not intended to be used for presentation, although
style applied to them would cascade to descendent elements.
-->
<div>
<!--
A paragraph holds a single subtitle of one or more lines, with a
time range and region allocation.
-->
<p xml:id="subtitle1" region="bottomRegion" style="paragraphStyle"
begin="00:00:10.000" end="00:00:20.000"><!--
A span is used to apply style to the text, by reference.
--><span style="spanStyle">Beware the Jubjub bird, and shun</span><br/><span style="spanStyle">The frumious Bandersnatch!</span></p>
<p xml:id="subtitle2" region="topRegion" style="paragraphStyle"
begin="00:00:30.000" end="00:00:31.000"
><span style="spanStyle">This subtitle is in the top region.</span><br
/><span style="spanStyle">it contains one word in </span><span style="yellowStyle">yellow </span><span style="spanStyle">colour.</span></p>
</div>
</body>
</tt>
The
illustrative
renders
below
show
how
the
document
above
is
interpreted
(only
the
subtitle
text
and
the
black
background
will
be
displayed).
Note
that
the
underlying
grid
is
virtual
and
that
elements
don't
necessarily
align
to
it;
it
is
a
graphical
representation
of
the
ttp:cellResolution
parameter.
This example is based on [ BBC-SUB ].
This specification uses the same conventions as [ ttml2 ] for the specification of parameter attributes, styling attributes and metadata elements. In particular:
This specification uses Feature and Extension designations as defined in Appendices E.1 and F.1 at [ ttml2 ]:
If the name of an element referenced in this specification is not namespace qualified, then the TT namespace applies (see 8.8 Namespaces .)
Character Information Item . See Section 2.2 at [ ttml2 ].
Document Instance . See Section 2.2 at [ ttml2 ].
Default Processor Profile . As defined in [ ttml2 ].
Default Region . See Section 9.3.1 at [ ttml2 ].
Extension . See Section 2.2 at [ ttml2 ].
External Data Resource . See Section 2.2 at [ ttml2 ].
Feature . See Section 2.2 at [ ttml2 ].
Intermediate Synchronic Document . See Section 9.3.2 at [ ttml2 ].
Document Interchange Context . See Section 2.2 at [ ttml2 ].
Document Processing Context . As defined in [ ttml2 ].
Effective Processor Profile . As defined in [ ttml2 ].
Font Resource . As defined in [ ttml2 ].
Linear White-Space . See Section 2.3 at [ ttml2 ].
Override Content Profile . As defined in [ ttml2 ].
Processor . Either a Presentation processor or a Transformation processor .
Presentation processor . See Section 2.2 at [ ttml2 ].
Specified Value . As defined in [ ttml2 ].
Transformation processor . See Section 2.2 at [ ttml2 ].
Processor Profile . As defined in [ ttml2 ].
Related Media Object . See Section 2.2 at [ ttml2 ].
Related Video Object . A Related Media Object that consists of a sequence of image frames, each a rectangular array of pixels.
Root Container Region . See Section 2.2 at [ ttml2 ].
Text Profile transformation processor . A transformation processor that conforms to the Text Profile .
Text Profile presentation processor . A presentation processor that conforms to the Text Profile .
As well as sections marked as non-normative, all authoring guidelines, diagrams, examples, and notes in this specification are non-normative. Everything else in this specification is normative.
The key words MAY , SHALL , SHALL NOT , SHOULD , and SHOULD NOT in this document are to be interpreted as described in BCP 14 [ RFC2119 ] [ RFC8174 ] when, and only when, they appear in all capitals, as shown here.
A Document Instance that conforms to the Text Profile :
A Document Instance , by definition, satisfies the requirements of Section 3.1 at [ ttml2 ], and hence a Document Instance that conforms to a profile defined herein is also a conforming TTML1 Document Instance.
A presentation processor that conforms to the Text Profile :
A transformation processor that conforms to the Text Profile :
A Feature or Extension currently designated permitted-deprecated is intended to be designated as optional or prohibited in future versions of this specification.
A Feature or Extension designated as partially supported is neither completely prohibited nor completely permitted . Instead, the disposition of each of its subset Feature or Extension is specified individually.
[ ttml2 ] makes a distinction between a presentation processor , whose purpose is to present a Document Instance , and transformation processor , whose purpose is to process a Document Instance without presenting it. A renderer embedded in the media pipeline of a mobile device is an example of a presentation processor , whereas a validator is an example of a transformation processor .
A processor that conforms to the Text Profile is not required to conform to any other profile. For convenience, and for consistency with previous versions of this specification, the terms Text Profile transformation processor and Text Profile presentation processor are defined.
The use of the term presentation processor ( transformation processor ) within this specification does not imply conformance to the DFXP Presentation Profile (DFXP Transformation Profile) specified in [ ttml2 ]. In other words, it is not considered an error for a presentation processor ( transformation processor ) to conform to a profile defined in this specification without also conforming to the DFXP Presentation Profile (DFXP Transformation Profile).
This specification does not specify presentation processor or transformation processor behavior when processing or transforming a non-conformant Document Instance .
The
permitted
and
prohibited
dispositions
do
not
refer
to
the
specification
of
a
ttp:feature
or
ttp:extension
element
as
being
permitted
or
prohibited
within
a
ttp:profile
element.
The Text Profile consists of Sections 7. Supported Features and Extensions and 8. Additional Provisions .
This Text Profile is associated with the following profile designator:
| Profile Name | Profile Designator |
|---|---|
| IMSC 1.3 Text |
http://www.w3.org/ns/ttml/profile/imsc1.3/text
|
The Profile Semantics specified in [ ttml2 ] apply.
The
default
value
of
prohibited
attributes,
e.g.
ttp:contentProfileCombination
,
applies.
The Text Profile processor profile includes all of the features required by each of the following processor profiles :
Authors can use TTML content verification tools to detect and warn about overly constrained uses of content and processor profile attribute vocabulary, e.g. warn if (a) a document simultaneously (i) specifies conformance to content profile X and (ii) requires use of processor profile Y, and (b) profiles X and Y are semantically incompatible.
If
one
or
more
ebuttm:conformsToStandard
elements,
as
specified
in
[
EBU-TT-M
],
are
set
to
any
of
the
following
designators,
then
the
override
content
profile
SHALL
be
set
to
the
profile
associated
with
any
one
of
the
matching
designators:
urn:ebu:tt:distribution:2014-01
,
as
specified
in
[
EBU-TT-D
]
urn:ebu:tt:distribution:2018-04
,
as
specified
in
[
EBU-TT-D
]
See 5. Conformance for a definition of permitted , prohibited , optional and permitted-deprecated .
| Feature or Extension | Text Profile Disposition |
|---|---|
|
Relative
to
the
TT
Feature
namespace
All features specified in [ ttml2 ] are prohibited unless specified otherwise below |
|
#animation
|
permitted |
#animation-version-2
|
Partially
supported
via
#animation
.
|
#background
|
Partially
supported
via
#backgroundColor
.
|
#backgroundColor
|
permitted |
#backgroundColor-block
|
permitted |
#backgroundColor-inline
|
permitted |
#backgroundColor-region
|
permitted |
#base
|
permitted |
#base-version-2
|
Partially
supported
via
#base
.
|
#bidi
|
permitted |
#bidi-version-2
|
Partially
supported
via
#bidi
and
#unicodeBidi-version-2
.
|
#cellResolution
|
permitted |
#color
|
permitted
Section 8.1.4
#color
specifies
additional
constraints.
|
#content
|
permitted |
#contentProfiles
|
permitted |
#core
|
permitted |
#direction
|
permitted |
#disparity
|
permitted |
#display
|
permitted |
#display-block
|
permitted |
#display-inline
|
permitted |
#display-region
|
permitted |
#display-version-2
|
Partially
supported
via
#display
,
#display-block
,
#display-inline
,
and
#display-region
.
|
#displayAlign
|
permitted |
#displayAlign-region
|
permitted |
#displayAlign-relative
|
permitted |
#displayAlign-version-2
|
Partially
supported
via
#displayAlign-region
,
and
#displayAlign-relative
.
|
#displayAspectRatio
|
permitted
Section 8.1.5
#displayAspectRatio
specifies
additional
constraints.
|
#embedded-audio
|
prohibited
#embedded-data
is
however
partially
supported
.
|
#embedded-content
|
Partially
supported
via
#embedded-font
.
|
#embedded-data
|
Partially
supported
via
#resources
and
#source
.
|
#embedded-font
|
Partially
supported
via
#embedded-data
and
#font
.
|
#embedded-image
|
prohibited
#embedded-data
is
however
partially
supported
.
|
#extent
|
permitted |
#extent-full-version-2
|
Partially
supported
via
#extent-version-2
.
|
#extent-length
|
permitted |
#extent-length-version-2
|
permitted |
#extent-region
|
Partially
supported
via
#extent-length
.
Section 8.1.7
#extent-region
specifies
additional
constraints.
|
#extent-region-version-2
|
Partially
supported
via
#extent-region
.
|
#extent-root
|
Partially
supported
via
#extent-length
.
Section 8.1.6
#extent-root
specifies
additional
constraints.
|
#extent-root-version-2
|
Partially
supported
via
#extent-root
.
|
#extent-version-2
|
Partially
supported
via
#extent
and
#extent-region-version-2
.
|
#font
|
permitted
Section 8.1.8
#font
and
#source
specifies
additional
constraints.
|
#fontFamily
|
permitted
Section 8.1.10
#fontFamily
specifies
additional
constraints.
|
#fontFamily-generic
|
permitted
Section 8.1.9
#fontFamily-generic
specifies
additional
constraints.
|
#fontFamily-non-generic
|
permitted |
#fontSize
|
Partially
supported
via
#fontSize-isomorphic
.
|
#fontSize-isomorphic
|
permitted |
#fontStyle
|
permitted |
#fontStyle-italic
|
permitted
Section 8.1.23 Slanted Japanese-language text provides additional information. |
#fontStyle-oblique
|
permitted
Section 8.1.23 Slanted Japanese-language text provides additional information. |
#fontVariant
|
permitted
Section 8.1.11
#fontVariant
specifies
additional
constraints.
|
#fontWeight
|
permitted |
#fontWeight-bold
|
permitted |
#frameRate
|
permitted
Section 8.1.12
#frameRate
specifies
additional
constraints.
|
#frameRateMultiplier
|
permitted |
#initial
|
permitted |
#layout
|
permitted
Section 8.13 Regions specifies additional constraints. |
#length
|
permitted |
#length-cell
|
permitted
Section 8.1.13
#length-cell
specifies
additional
constraints.
|
#length-em
|
permitted |
#length-integer
|
permitted |
#length-negative
|
permitted
Section 8.1.14
#length-negative
specifies
additional
constraints.
|
#length-percentage
|
permitted |
#length-pixel
|
permitted |
#length-positive
|
permitted |
#length-real
|
permitted |
#length-root-container-relative
|
permitted
Section 8.1.15
#length-root-container-relative
specifies
additional
constraints.
|
#length-version-2
|
permitted |
#lineBreak-uax14
|
The
processor
SHALL
implement
the
|
#lineHeight
|
permitted
Section 8.1.16
#lineHeight
specifies
additional
constraints.
|
#luminanceGain
|
permitted |
#metadata
|
permitted |
#metadata-item
|
permitted
Section 8.1.1
altText
named
metadata
item
specifies
additional
constraints.
|
#metadata-version-2
|
permitted |
#nested-div
|
permitted |
#nested-span
|
permitted |
#opacity
|
permitted |
#opacity-region
|
permitted |
#opacity-version-2
|
Partially
supported
via
#opacity
.
|
#origin
|
permitted
Section 8.1.19
#origin
specifies
additional
constraints.
|
#overflow
|
permitted |
#overflow-visible
|
permitted |
#padding
|
permitted |
#padding-1
|
permitted |
#padding-2
|
permitted |
#padding-3
|
permitted |
#padding-4
|
permitted |
#padding-region
|
permitted |
#padding-version-2
|
Partially
supported
via
#padding
,
#padding-1
,
#padding-2
,
#padding-3
,
#padding-4
,
and
#padding-region
|
#position
|
permitted
Section 8.1.20
#position
specify
additional
constraints.
|
#presentation
|
permitted |
#presentation-version-2
|
Partially
supported
via
#presentation
and
#profile-version-2
|
#profile
|
permitted |
#profile-full-version-2
|
Partially
supported
via
#contentProfiles
,
#profile
,
and
#profile-version-2
.
|
#profile-version-2
|
Partially
supported
via
#contentProfiles
,
and
#profile
.
|
#region-timing
|
permitted |
#resources
|
permitted
Section 8.1.21
#resources
specify
additional
constraints.
|
#ruby
|
permitted |
#ruby-full
|
Partially
supported
via
#ruby
,
#rubyAlign
,
#rubyPosition
,
and
#rubyReserve
.
|
#rubyAlign
|
Partially
supported
via
#rubyAlign-minimal
.
|
#rubyAlign-minimal
|
permitted
Section 8.1.22
#rubyAlign
specifies
additional
constraints.
|
#rubyPosition
|
permitted |
#rubyReserve
|
permitted |
#set
|
permitted |
#shear
|
permitted
Section 8.1.23 Slanted Japanese-language text provides additional information. |
#showBackground
|
permitted |
#source
|
permitted
Section 8.1.8
#font
and
#source
specify
additional
constraints.
|
#structure
|
permitted |
#styling
|
permitted |
#styling-chained
|
permitted |
#styling-inheritance-content
|
permitted |
#styling-inheritance-region
|
permitted |
#styling-inline
|
permitted |
#styling-nested
|
permitted |
#styling-referential
|
permitted |
#textAlign
|
permitted |
#textAlign-absolute
|
permitted |
#textAlign-relative
|
permitted |
#textAlign-version-2
|
Partially
supported
via
#textAlign
,
#textAlign-relative
,
and
#textAlign-absolute
.
|
#textCombine
|
permitted |
#textDecoration
|
permitted |
#textDecoration-over
|
permitted |
#textDecoration-through
|
permitted |
#textDecoration-under
|
permitted |
#textEmphasis
|
Partially
supported
via
#textEmphasis-minimal
.
|
#textEmphasis-minimal
|
permitted |
#textOutline
|
Partially
supported
via
#textOutline-unblurred
.
|
#textOutline-unblurred
|
permitted
Section 8.1.24
#textOutline-unblurred
specifies
additional
constraints.
|
#textShadow
|
permitted
Section 8.1.25
#textShadow
specifies
additional
constraints.
|
#tickRate
|
permitted
Section 8.1.26
#tickRate
specifies
additional
constraints.
|
#timeBase-media
|
permitted |
#timeContainer
|
permitted |
#time-clock
|
permitted |
#time-clock-with-frames
|
permitted |
#time-offset
|
permitted |
#time-offset-with-frames
|
permitted |
#time-offset-with-ticks
|
permitted |
#timing
|
permitted
Section 8.1.29
#timing
specifies
additional
constraints.
|
#transformation
|
permitted |
#transformation-version-2
|
Partially
supported
via
#transformation
and
#profile-version-2
.
|
#unicodeBidi
|
permitted |
#unicodeBidi-version-2
|
Partially
supported
via
#unicodeBidi
.
|
#visibility
|
permitted |
#visibility-block
|
permitted |
#visibility-inline
|
permitted |
#visibility-region
|
permitted |
#visibility-version-2
|
Partially
supported
via
#visibility
.
|
#wrapOption
|
permitted |
#writingMode
|
permitted |
#writingMode-horizontal
|
permitted |
#writingMode-horizontal-lr
|
permitted |
#writingMode-horizontal-rl
|
permitted |
#writingMode-vertical
|
permitted |
#zIndex
|
permitted-deprecated |
| Relative to the IMSC Extension namespace | |
#activeArea
|
permitted |
#altText
|
permitted-deprecated |
#aspectRatio
|
permitted-deprecated
Section 8.1.3
#aspectRatio
specifies
additional
constraints.
|
#fillLineGap
|
permitted |
#forcedDisplay
|
permitted |
#linePadding
|
permitted
Section 8.1.17
ebutts:linePadding
specifies
additional
constraints.
|
#multiRowAlign
|
permitted
Section 8.1.18
ebutts:multiRowAlign
specifies
additional
constraints.
|
#progressivelyDecodable
|
permitted-deprecated |
The
altText
named
metadata
item
SHOULD
NOT
be
present
since
no
image-based
timed
text
information
is
used
in
a
Text
Profile
Document
Instance
.
A
altText
named
metadata
item
SHALL
NOT
be
present
in
a
Document
Instance
if
any
ittm:altText
element
is
also
present.
The
ittm:altText
element
SHOULD
NOT
be
present
since
no
image-based
timed
text
information
is
used
in
a
Text
Profile
Document
Instance
.
A
ittm:altText
element
SHALL
NOT
be
present
in
a
Document
Instance
if
any
altText
named
metadata
item
element
is
also
present.
The
ittp:aspectRatio
attribute
SHOULD
NOT
be
present
in
a
Document
Instance
unless
compatibility
with
[
ttml-imsc1.0.1
]
processors
is
desired.
The
ittp:aspectRatio
attribute
SHALL
not
be
present
in
a
Document
Instance
if
any
ttp:displayAspectRatio
attribute
is
also
present.
The
initial
value
of
tts:color
SHALL
be
"white"
.
This is consistent with [ SMPTE2052-1 ].
The
named
color
green
defined
in
[
ttml2
]
is
equivalent
to
the
RGB
color
triple
#008000
and
is
not
full
luminance.
For
full
luminance
green,
an
author
can
specify
the
RGB
color
triple
#00ff00
or
the
named
color
lime
.
The
ttp:displayAspectRatio
attribute
SHALL
not
be
present
in
a
Document
Instance
if
any
ittp:aspectRatio
attribute
is
also
present.
If
the
Document
Instance
includes
any
length
value
that
uses
the
px
unit,
tts:extent
SHALL
be
present
on
the
tt
element.
For
each
region
element
defined
in
the
Document
Instance
,
the
specified
value
of
the
tts:extent
style
property
SHALL
consist
of
two
length
expressions
that
use
pixel
(px),
percentage
(%),
or
root
container
relative
units.
If
no
region
element
is
defined
in
the
Document
Instance
,
then
content
flows
into
the
default
region
;
conversely,
if
one
or
more
region
elements
are
defined
in
the
Document
Instance
,
the
default
region
is
not
used.
The
requirement
above
requires
the
author
to
explicitly
specify
the
value
of
tts:extent
in
the
Document
Instance
,
e.g.
by
specifying
the
tts:extent
attribute
for
each
region
element.
A
font
element
in
the
Document
Instance
SHALL
not
specify
a
src
attribute.
All
source
elements
that
are
children
of
a
font
element
SHALL
reference
an
external
data
resource
.
A Processor MAY use the [ css-fonts-3 ] §5 font matching algorithm for associating a font with a run of text.
In
absence
of
specific
instructions
on
the
choice
of
font
families,
and
in
order
to
enhance
reproducibility
of
line
fitting,
authors
are
encouraged
to
use
the
monospaceSerif
or
proportionalSansSerif
generic
font
families,
for
which
reference
font
metrics
are
defined
at
A.
Reference
Fonts
.
If
the
computed
value
of
tts:fontFamily
is
"default"
,
then
the
used
value
of
tts:fontFamily
SHALL
be
"monospaceSerif"
.
The term used value is defined in CSS 2.1, as normatively referenced by [ ttml2 ].
Linear
white-space
SHOULD
NOT
appear
between
components
of
the
specified
value
of
tts:fontFamily
.
The
computed
value
of
the
tts:fontVariant
attribute
SHALL
be
one
of
the
following:
normal
;
sub
;
or
super
.
If
the
Document
Instance
includes
any
clock
time
expression
that
uses
the
frames
term
or
any
offset
time
expression
that
uses
the
f
metric,
the
ttp:frameRate
attribute
SHALL
be
present
on
the
tt
element.
c
units
SHALL
NOT
be
present
outside
of
the
value
of
ebutts:linePadding
.
Strictly
negative
length
expressions
SHALL
NOT
be
used
with
attributes
other
than:
tts:disparity
;
and
tts:textShadow
.
When
specified
on
a
tts:extent
or
tts:position
attribute:
rh
units
SHALL
NOT
be
used
for
horizontal
length
components;
and
rw
units
SHALL
NOT
be
used
for
vertical
length
components.
The
specified
value
of
the
tts:lineHeight
attribute
SHOULD
be
such
that
specified
style
set
of
each
p
element
contains
a
tts:lineHeight
property
whose
value
is
not
normal
.
Implementation
of
the
normal
value
is
not
uniform
at
the
time
of
this
writing.
In
addition
to
the
style
element,
the
attribute
ebutts:linePadding
MAY
be
specified
on
the
following
elements:
region
body
div
p
initial
The processor :
ebutts:linePadding
to
p
only;
and
ebutts:linePadding
as
inheritable.
The
ebutts:linePadding
attribute
only
supports
c
length
units.
In
contrast
to
this
specification,
[
EBU-TT-D
]
specifies
that
the
attribute
ebutts:linePadding
is
allowed
only
on
the
style
element.
In
addition
to
the
style
element,
the
attribute
ebutts:multiRowAlign
MAY
be
specified
on
the
following
elements:
region
body
div
p
initial
The processor :
ebutts:multiRowAlign
to
p
only;
and
ebutts:multiRowAlign
as
inheritable.
In
contrast
to
this
specification,
[
EBU-TT-D
]
specifies
that
the
attribute
ebutts:multiRowAlign
is
allowed
only
on
the
style
element.
The
value
of
the
tts:origin
attribute
SHALL
consist
of
two
length
expressions
that
use
pixel
(px)
or
percentage
(%)
units.
If
the
tts:position
attribute
is
specified
anywhere
in
a
Document
Instance
,
then
the
tts:origin
attribute
SHALL
NOT
be
specified
anywhere
in
that
Document
Instance
.
All
length
components
of
the
value
of
a
tts:position
attribute
SHALL
use
pixel
(px),
percentage
(%)
or
root
container
relative
units.
If
the
tts:origin
attribute
is
specified
anywhere
in
a
Document
Instance
,
then
the
tts:position
attribute
SHALL
NOT
be
specified
anywhere
in
that
Document
Instance
.
The
resources
element
SHALL
not
contain
any
of
the
following
children
elements:
audio
;
data
;
and
image
.
The
specified
value
of
the
tts:rubyAlign
attribute
SHALL
be
such
that
its
computed
value
is
center
or
spaceAround
.
This section is non-normative.
Since
(a)
Japanese-language
fonts
typically
do
not
include
italic
or
oblique
faces,
and
(b)
Japanese-language
slanted
vertical
text
consists
of
characters
slanted
in
the
vertical
direction
(and
not
in
the
horizontal
direction),
it
is
recommended
that
tts:shear
be
specified
to
slant
Japanese-language
text
–
instead
of
specifying
tts:fontStyle="italic"
or
tts:fontStyle="oblique"
.
The
specified
value
of
the
tts:textOutline
attribute
SHALL
be
such
that
its
computed
value
on
any
span
element
is
10%
or
less
than
the
computed
value
of
tts:fontSize
attribute
on
the
same
element.
The
specified
value
of
the
tts:textShadow
attribute
SHALL
NOT
have
more
than
4
<shadow>
values.
ttp:tickRate
SHALL
be
present
on
the
tt
element
if
the
document
contains
any
time
expression
that
uses
the
t
metric.
This section is non-normative.
[
ttml2
]
specifies
that
the
default
timebase
is
"media"
if
ttp:timeBase
is
not
specified
on
tt
.
This section is non-normative.
As
specified
in
[
ttml2
],
a
#time-clock-with-frames
expression
is
translated
to
a
media
time
M
according
to
M
=
3600
·
hours
+
60
·
minutes
+
seconds
+
(frames
÷
(
ttp:frameRateMultiplier
·
ttp:frameRate
)).
For
any
content
element
that
contains
br
elements
or
text
nodes,
both
the
begin
attribute
and
one
of
either
the
end
or
dur
attributes
SHOULD
be
specified
on
the
content
element
or
at
least
one
of
its
ancestors.
This section is non-normative.
The
usesForced
named
metadata
item
does
not
apply
since
the
condition
attribute
is
prohibited.
The
itts:forcedDisplay
attribute
is
used
to
specify
forced
content
semantics.
This section is non-normative.
This feature has no effect since, as specified at 8.13.2 Dimensions and Position , presented regions do not overlap in a Document Instance .
A Text Profile document SHOULD conform to the Hypothetical Render Model specified at [ imsc-hrm ].
This limits the complexity of the Text Profile document, so that playback systems can render the content synchronized with the author-specified display times.
A Document Instance SHALL be concretely encoded as a well-formed XML 1.0 [ xml ] document using the UTF-8 character encoding as specified in [ UNICODE ].
The resulting [ xml ] document SHOULD NOT contain any of the following physical structures:
These physical structures are intended to be prohibited in future versions of this specification.
The resulting [ xml ] document can contain character references , and entity references to predefined entities .
The Active Area of a Document Instance is the area within the Root Container Region that the author intends to be minimally visible to the viewer. This area typically fully contains all of the referenced regions within the Document Instance .
Under
normal
circumstances,
the
entirety
of
the
Root
Container
Region
is
presented.
However,
under
special
circumstances,
such
as
when
the
related
video
object
is
cropped,
a
system
can,
for
instance,
use
the
ittp:activeArea
parameter
to
avoid
cropping
areas
of
the
Root
Container
Region
that
are
intended
to
be
visible
to
the
viewer.
The
specific
behavior
of
the
system
is
however
left
undefined
intentionally:
the
system
can
select
a
presentation
mode
appropriate
to
the
display
shape,
user
preferences,
etc.
The
ittp:activeArea
is
analogous
to
the
Active
Format
Description
(AFD)
metadata
commonly
used
in
broadcast
applications.
The
Active
Area
is
specified
using
the
ittp:activeArea
attribute.
If
present,
the
ittp:activeArea
attribute
SHALL
conform
to
the
following
syntax:
ittp:activeArea : leftOffset topOffset width height leftOffset | topOffset | width | height : <percentage> // where <percentage> is non-negative and not greater than 100%. |
The
width
percentage
value
is
relative
to
the
width
of
the
Root
Container
Region
.
The
height
percentage
value
is
relative
to
the
height
of
the
Root
Container
Region
.
The
width
and
height
percentage
values
are
the
width
and
height
of
the
Active
Area
.
The
leftOffset
and
topOffset
percentage
values
specify
an
alignment
point
between
the
Root
Container
Region
and
the
Active
Area
.
The origin top left {x, y} percentage coordinates of the Active Area SHALL be calculated as follows:
x = leftOffset * (1 - width/100) y = topOffset * (1 - height/100)
The
use
of
left
and
top
offset
positions
is
co-incident
with
the
[
css3-background
]
background-position
property
where
a
two
percentage
value
position
is
used.
The
syntax
of
the
ittp:activeArea
parameter
is
such
that
the
Active
Area
cannot
extend
outside
the
Root
Container
Region
in
any
dimension.
The
ittp:activeArea
attribute
is
considered
to
be
significant
only
when
specified
on
the
tt
element.
If
the
ittp:activeArea
attribute
is
not
specified,
the
Active
Area
SHALL
be
the
Root
Container
Region
.
<?xml version="1.0" encoding="UTF-8"?>
<tt xml:lang="en"
xmlns="http://www.w3.org/ns/ttml"
xmlns:ttm="http://www.w3.org/ns/ttml#metadata"
xmlns:tts="http://www.w3.org/ns/ttml#styling"
xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
xmlns:ittp="http://www.w3.org/ns/ttml/profile/imsc1#parameter"
ittp:activeArea="50% 50% 80% 80%"
tts:extent="640px 480px"
ttp:contentProfiles="http://www.w3.org/ns/ttml/profile/imsc1.3/text">
<head>
<layout>
<region xml:id="area1" tts:origin="10% 10%" tts:extent="80% 10%" tts:backgroundColor="blue" tts:displayAlign="center" tts:textAlign="center" tts:color="white" tts:fontSize="24px"/>
<region xml:id="area2" tts:origin="10% 80%" tts:extent="80% 10%" tts:backgroundColor="blue" tts:displayAlign="center" tts:textAlign="center" tts:color="white" tts:fontSize="24px"/>
<region xml:id="area3" tts:origin="10% 92%" tts:extent="80% 6%" tts:backgroundColor="red" tts:displayAlign="center" tts:textAlign="center" tts:color="yellow" tts:fontSize="24px"/>
</layout>
</head>
<body>
<div>
<p region="area1" begin="0s" end="6s">This region is within the editorial area.</p>
<p region="area2" begin="0s" end="6s">This region is within the editorial area.</p>
<p region="area3" begin="0s" end="6s">This region is not.</p>
</div>
</body>
</tt>
The
#altText
feature
is
designated
as
permitted-deprecated
in
the
profiles
defined
by
this
specification.
The
altText
named
metadata
item
provides
equivalent
semantics.
ittm:altText
allows
an
author
to
provide
a
text
string
equivalent
for
an
element,
which
MAY
be
used
to
support
indexing
of
the
content,
or
facilitate
quality
checking
of
the
document.
It
can
also
be
used
by
assistive
technologies.
The
#altText
feature
is
primarily
useful
in
providing
a
text
alternative
to
image-based
subtitles
and
captions,
which
are
not
supported
by
the
Text
Profile
.
In
contrast
to
the
common
use
of
alt
attributes
in
[
HTML
],
the
ittm:altText
attribute
content
is
not
intended
to
be
displayed
in
place
of
the
element
if
the
element
is
not
loaded.
The
ittm:altText
element
SHALL
conform
to
the
following
syntax:
<ittm:altText
xml:id = ID
xml:lang = string
xml:space = (default|preserve)
{any attribute not in the default namespace, any TT namespace or any IMSC namespace}>
Content: #PCDATA
</ittm:altText>
|
The
ittm:altText
element
SHALL
be
a
child
of
the
metadata
element.
The
#aspectRatio
feature
is
designated
as
permitted-deprecated
in
the
profiles
defined
by
this
specification.
The
#displayAspectRatio
feature
provides
equivalent
semantics.
The
ittp:aspectRatio
attributes
allows
authorial
control
of
the
mapping
of
the
Root
Container
Region
of
a
Document
Instance
to
each
image
frame
of
the
Related
Video
Object
.
If
present,
the
ittp:aspectRatio
attribute
SHALL
conform
to
the
following
syntax:
ittp:aspectRatio
: numerator denominator // with int(numerator) != 0 and int(denominator) != 0
// where int(s) parses string s as a decimal integer.
numerator | denominator
: <digit>+ // no linear white-space is implied or permitted
//
between
each
<digit>
token
|
An
ittp:aspectRatio
attribute
is
considered
to
be
significant
only
when
specified
on
the
tt
element.
If
specified
on
the
tt
element,
the
ittp:aspectRatio
attribute
specifies
the
display
aspect
ratio
of
the
Root
Container
Region
.
If
not
specified,
then
the
display
aspect
ratio
of
the
Root
Container
Region
is
determined
according
to
Appendix
H
of
[
ttml2
].
The
itts:fillLineGap
attribute
allows
the
author
to
control
the
application
of
background
between
successive
line
areas.
If
itts:fillLineGap="true"
then
the
background
of
each
inline
area
generated
by
descendant
spans
of
the
p
element
SHALL
extend
to
the
before-edge
and
after-edge
of
its
containing
line
area
(
before-edge
and
after-edge
are
defined
at
Section
4.2.3
of
[
XSL11
]).
The
itts:fillLineGap
attribute
SHALL
conform
to
the
following:
| Values: |
false
|
true
|
| Initial: |
false
|
| Applies to: |
p
|
| Inherited: | yes |
| Percentages: | N/A |
| Animatable: | discrete |
In
the
following
example,
the
p
specifies
itts:fillLineGap="true"
,
and,
as
a
result,
no
gap
exists
between
its
lines.
<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml"
xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
xmlns:tts="http://www.w3.org/ns/ttml#styling"
xmlns:itts="http://www.w3.org/ns/ttml/profile/imsc1#styling"
ttp:timeBase="media"
xml:lang="en"
ttp:cellResolution="50 30"
ttp:contentProfiles="http://www.w3.org/ns/ttml/profile/imsc1.3/text">
<head>
<styling>
<style xml:id="spanStyle" tts:color="#ffffff" tts:backgroundColor="#000000" />
<style xml:id="spanStyleSmall" tts:color="#000000" tts:backgroundColor="#dfbb02" tts:fontSize="50%"/>
<style xml:id="spanStyleBig" tts:color="#ffffff" tts:backgroundColor="#b75800" tts:fontSize="150%"/>
<style xml:id="paragraphStyle" tts:fontFamily="monospaceSerif" tts:textAlign="center"
tts:fontSize="200%" tts:lineHeight="165%" itts:fillLineGap="true"/>
</styling>
<layout>
<region xml:id="bottom" tts:origin="10% 10%" tts:extent="80% 80%" tts:displayAlign="after" />
</layout>
</head>
<body>
<div>
<p xml:id="subtitle1" region="bottom" begin="00:00:00.000" end="00:00:30.000" style="paragraphStyle">
<span style="spanStyle">##Line gaps##</span>
<br/>
<span style="spanStyle">The quick </span>
<span style="spanStyleBig">brown</span>
<span style="spanStyle"> fox</span>
<br/>
<span style="spanStyle">jumps over the </span>
<span style="spanStyleSmall">lazy</span>
<span style="spanStyle"> dog</span>
<br/>
<span style="spanStyle">##Line gaps##</span>
</p>
</div>
</body>
</tt>
itts:fillLineGap="true"
removed
(left)
or
preserved
(right).
Blue
lines
have
been
added
to
show
the
before-edge
and
after-edge
of
each
line
area,
which
are
coincident
for
successive
line
areas.
Also,
as
illustrated
in
the
following
example,
because
the
line
areas
of
successive
p
elements
are
contiguous,
no
gap
exists
between
two
successive
p
elements
where
itts:fillLineGap="true"
.
<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml"
xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
xmlns:tts="http://www.w3.org/ns/ttml#styling"
xmlns:itts="http://www.w3.org/ns/ttml/profile/imsc1#styling"
ttp:timeBase="media"
xml:lang="en"
ttp:cellResolution="50 30"
ttp:contentProfiles="http://www.w3.org/ns/ttml/profile/imsc1.3/text">
<head>
<styling>
<style xml:id="spanStyle" tts:color="#ffffff" tts:backgroundColor="#000000" />
<style xml:id="paragraphStyleNoGap" tts:fontFamily="monospaceSerif" tts:textAlign="center" tts:fontSize="200%"
tts:lineHeight="165%" itts:fillLineGap="true"/>
<style xml:id="paragraphStyle" tts:fontFamily="monospaceSerif" tts:textAlign="center" tts:fontSize="200%"
tts:lineHeight="165%" itts:fillLineGap="false"/>
</styling>
<layout>
<region xml:id="bottom" tts:origin="10% 10%" tts:extent="80% 80%" tts:displayAlign="after" />
<region xml:id="top" tts:origin="10% 10%" tts:extent="80% 80%" tts:displayAlign="before" />
</layout>
</head>
<body>
<div region="bottom" begin="00:00:00.000" end="00:00:30.000">
<p xml:id="subtitle1" style="paragraphStyle">
<span style="spanStyle">Paragraph 1</span>
</p>
<p xml:id="subtitle1" style="paragraphStyle">
<span style="spanStyle">Paragraph 2</span>
</p>
</div>
<div region="top" begin="00:00:00.000" end="00:00:30.000">
<p xml:id="subtitle1" style="paragraphStyleNoGap">
<span style="spanStyle">Paragraph 1</span>
</p>
<p xml:id="subtitle1" style="paragraphStyleNoGap">
<span style="spanStyle">Paragraph 2</span>
</p>
</div>
</body>
</tt>
itts:fillLineGap="true"
on
the
two
paragraphs
of
the
top
region,
itts:fillLineGap="false"
on
the
two
paragraphs
of
the
bottom
region.
The
itts:forcedDisplay
attribute
can
be
used
to
hide
content
when
the
processor
has
been
configured
to
do
so
via
the
application
parameter
.
displayForcedOnlyMode
Annex
C.
Forced
content
illustrates
the
use
of
itts:forcedDisplay
in
an
application
in
which
a
single
document
contains
both
hard
of
hearing
captions
and
translated
foreign
language
subtitles,
using
itts:forcedDisplay
to
display
translation
subtitles
always,
independently
of
whether
the
hard
of
hearing
captions
are
displayed
or
hidden.
The
itts:forcedDisplay
attribute
SHALL
conform
to
the
following:
| Values: |
false
|
true
|
| Initial: |
false
|
| Applies to: |
body
,
div
,
p
,
region
,
span
|
| Inherited: | yes |
| Percentages: | N/A |
| Animatable: | discrete |
If
and
only
if
the
value
of
is
displayForcedOnlyMode
"true"
,
a
content
element
with
a
itts:forcedDisplay
computed
value
of
"false"
SHALL
NOT
produce
any
visible
rendering,
regardless
of
the
computed
value
of
tts:visibility
.
The
itts:forcedDisplay
attribute
has
no
effect
on
content
layout
or
composition,
but
merely
determines
whether
composed
content
is
visible
or
not.
The
presentation
processor
SHALL
accept
an
optional
boolean
parameter
called
displayForcedOnlyMode
,
whose
value
MAY
be
set
by
a
context
external
to
the
presentation
processor
.
If
not
set,
the
value
of
SHALL
be
assumed
to
be
equal
to
displayForcedOnlyMode
"false"
.
The
algorithm
for
setting
the
parameter
based
on
the
circumstances
under
which
the
Document
Instance
is
presented
is
left
to
the
application.
displayForcedOnlyMode
<?xml version="1.0" encoding="UTF-8"?>
<tt xml:lang="en"
xmlns="http://www.w3.org/ns/ttml"
xmlns:ttm="http://www.w3.org/ns/ttml#metadata"
xmlns:tts="http://www.w3.org/ns/ttml#styling"
xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
xmlns:itts="http://www.w3.org/ns/ttml/profile/imsc1#styling"
ttp:displayAspectRatio="16 9"
ttp:contentProfiles="http://www.w3.org/ns/ttml/profile/imsc1.3/text">
<head>
<layout>
<region xml:id="r1" itts:forcedDisplay="true" tts:origin="10% 2%" tts:extent="80% 10%" tts:color="white" tts:backgroundColor="black" tts:showBackground="whenActive"/>
<region xml:id="r2" tts:origin="10% 80%" tts:extent="80% 10%" tts:color="white" tts:backgroundColor="black" tts:showBackground="whenActive"/>
</layout>
</head>
<body>
<div>
<p region="r1" begin="1s" end="6s">Lycée</p>
<!-- the following will not appear if displayForcedOnlyMode='true' -->
<p region="r2" begin="4s" end="6s">Nous étions inscrits au même lycée.</p>
</div>
</body>
</tt>
As
specified
in
[
ttml2
],
the
background
of
a
region
can
be
visible
even
if
the
computed
value
of
tts:visibility
equals
"hidden"
for
all
active
content
within.
The
background
of
a
region
for
which
itts:forcedDisplay
equals
"true"
can
therefore
remain
visible
even
if
itts:forcedDisplay
equals
"false"
for
all
active
content
elements
within
the
region
and
equals
displayForcedOnlyMode
"true"
.
Authors
can
avoid
this
situation,
for
instance,
by
ensuring
that
content
elements
and
the
regions
that
they
are
flowed
into
always
have
the
same
value
of
itts:forcedDisplay
.
It
is
expected
that
the
functionality
of
itts:forcedDisplay
will
be
mapped
to
a
conditional
style
construct
in
a
future
revision
of
this
specification.
The
presentation
semantics
associated
with
itts:forcedDisplay
are
intended
to
be
compatible
with
those
associated
with
the
forcedDisplayMode
attribute
defined
in
[
CFF
].
The
#progressivelyDecodable
feature
is
designated
as
permitted-deprecated
in
the
profiles
defined
by
this
specification.
A
progressively
decodable
Document
Instance
is
structured
to
facilitate
presentation
before
the
document
is
received
in
its
entirety,
and
can
be
identified
using
ittp:progressivelyDecodable
attribute.
A progressively decodable Document Instance is a Document Instance that conforms to the following:
head
element;
p
element
that
lexically
precedes
any
p
element
that
B
includes;
p
;
and
If
present,
the
ittp:progressivelyDecodable
attribute
SHALL
conform
to
the
following
syntax:
ittp:progressivelyDecodable : "true" | "false" |
An
ittp:progressivelyDecodable
attribute
is
considered
to
be
significant
only
when
specified
on
the
tt
element.
If
not
specified,
the
value
of
ittp:progressivelyDecodable
SHALL
be
considered
to
be
equal
to
"false"
.
A
Document
Instance
for
which
the
computed
value
of
ittp:progressivelyDecodable
is
"true"
SHALL
be
a
progressively
decodable
Document
Instance
.
A
Document
Instance
for
which
the
computed
value
of
ittp:progressivelyDecodable
is
"false"
is
neither
asserted
to
be
a
progressively
decodable
Document
Instance
nor
asserted
not
to
be
a
progressively
decodable
Document
Instance
.
<tt xmlns="http://www.w3.org/ns/ttml" xmlns:ttm="http://www.w3.org/ns/ttml#metadata" xmlns:tts="http://www.w3.org/ns/ttml#styling" xmlns:ttp="http://www.w3.org/ns/ttml#parameter" xmlns:ittp="http://www.w3.org/ns/ttml/profile/imsc1#parameter" ittp:progressivelyDecodable="true" ttp:profile="..." > ... </tt>
[
ttml2
]
specifies
explicitly
referencing
of
elements
identified
using
xml:id
in
the
following
circumstances:
body
referencing
region
elements.
In
this
case,
Requirement
4
above
is
always
satisfied.
body
referencing
style
elements.
In
this
case,
Requirement
4
above
is
always
satisfied.
region
element
referencing
style
elements.
In
this
case,
Requirement
4
above
is
always
satisfied.
style
element
referencing
other
style
elements.
In
this
case,
Requirement
4
provides
an
optimization
of
style
element
ordering
within
the
head
element.
ttm:actor
element
referencing
a
ttm:agent
element.
In
this
case,
Requirement
4
provides
optimization
of
metadata
elements
ordering
within
the
document.
ttm:agent
elements
using
the
ttm:agent
attribute.
In
this
case,
Requirement
4
provides
optimization
of
metadata
elements
ordering
within
the
document.
A Presentation Processor SHALL support font resources of the following media types, as defined in [ IANA-MEDIA-TYPES ]:
[
IANA-MEDIA-TYPES
]
specifies
that
the
media
type
font/otf
includes
file
extensions
.ttf
and
.otf
.
A Document Instance MAY contain elements and attributes that are neither specifically permitted nor forbidden by a profile.
A transformation processor SHOULD preserve such elements or attributes whenever possible.
Document Instances remain subject to the content conformance requirements specified at Section 3.1 of [ ttml2 ]. In particular, a Document Instance can contain elements and attributes not in any TT namespace, i.e. in foreign namespaces, since such elements and attributes are pruned by the algorithm at Section 4 of [ ttml2 ] prior to evaluating content conformance.
The following namespaces (see [ xml-names ]) are used in this specification:
| Name | Prefix | Value | Defining Specification |
|---|---|---|---|
| XML |
xml
|
http://www.w3.org/XML/1998/namespace
|
[ xml-names ] |
| TT |
tt
|
http://www.w3.org/ns/ttml
|
[ ttml2 ] |
| TT Parameter |
ttp
|
http://www.w3.org/ns/ttml#parameter
|
[ ttml2 ] |
| TT Styling |
tts
|
http://www.w3.org/ns/ttml#styling
|
[ ttml2 ] |
| TT Feature | none |
http://www.w3.org/ns/ttml/feature/
|
[ ttml2 ] |
| EBU-TT Styling |
ebutts
|
urn:ebu:tt:style
|
[ EBU-TT-D ] |
| EBU-TT Metadata |
ebuttm
|
urn:ebu:tt:metadata
|
[ EBU-TT-D ] |
| IMSC Styling |
itts
|
http://www.w3.org/ns/ttml/profile/imsc1#styling
|
This specification |
| IMSC Parameter |
ittp
|
http://www.w3.org/ns/ttml/profile/imsc1#parameter
|
This specification |
| IMSC Metadata |
ittm
|
http://www.w3.org/ns/ttml/profile/imsc1#metadata
|
This specification |
| IMSC Extension | none |
http://www.w3.org/ns/ttml/profile/imsc1/extension/
|
This specification |
| IMSC 1.3 Text Profile Designator | none | See Section 6.2 Designator | |
The namespace prefix values defined above are for convenience and Document Instances MAY use any prefix value that conforms to [ xml-names ].
The namespaces defined by this specification are mutable [ namespaceState ]; all undefined names in these namespaces are reserved for future standardization by the W3C .
A
Document
Instance
SHOULD
be
authored
assuming
strict
clipping
of
content
that
falls
out
of
region
areas,
regardless
of
the
computed
value
of
tts:overflow
for
the
region.
The
ttp:contentProfiles
attribute
SHOULD
be
present
on
the
tt
element,
with
exactly
one
of
its
values
equal
to
the
designator
Text
Profile
.
The
ttp:contentProfiles
attribute
is
prohibited
in
some
profiles,
e.g.
[
EBU-TT-D
]
as
discussed
in
I.2
EBU-TT-D
.
To
minimize
the
risk
of
incompatibility,
the
use
of
the
ttp:contentProfiles
attribute
and
other
syntax
introduced
in
[
ttml2
]
is
not
recommended
in
documents
intended
to
conform
to
profiles
that
are
based
on
[
TTML1
],
e.g.
[
SMPTE2052-1
],
[
ttml-imsc1
]
,
[
ttml-imsc1.0.1
]
,
or
[
ttml10-sdp-us
].
The
ttp:contentProfiles
attribute
can
include
additional
designators,
beyond
those
specified
herein,
including
designators
for
other
versions
of
this
specification.
6.3 Profile Resolution Semantics specifies the process by which the effective processor profile associated with the Document Instance is determined.
When
using
the
ebuttm:conformsToStandard
element
specified
in
[
EBU-TT-M
],
the
designators
of
the
Text
Profile
SHALL
be
used
when
indicating
conformance
to
the
corresponding
profile.
See I.2 EBU-TT-D for a sample Document Instance that follows the recommendations of this section.
A Document Instance SHOULD be authored using characters selected from the sets specified in B. Common Character Sets .
When rendering codepoints matching one of the combinations of computed font family and codepoints listed in A. Reference Fonts , a processor SHALL use a font that generates a glyph sequence whose dimension is substantially identical to the glyph sequence that would have been generated by one of the specified reference fonts.
This clause only applies to codepoints supported by the processor. See 8.11 Recommended Character Sets for codepoints that a processor is likely to encounter for various languages.
When
a
content
author
sets
a
bounding
box
for
a
subtitle,
they
want
to
maximize
the
likelihood
that
the
text
will
fit
within
it
when
displayed
by
the
processor.
If
the
processor
doesn't
use
the
specific
font
the
content
author
had
in
mind,
the
font
actually
used
might
cause
the
text
to
grow
in
size
so
that
it
no
longer
fits
in
the
bounding
box.
This
is
further
compounded
by
differences
in
the
way
text
wraps
when
a
font
has
bigger
glyphs,
which
might
increase
the
number
of
lines
used,
and
increased
line
spacing,
which
might
also
push
some
of
the
text
outside
the
bounding
box.
To
help
ensure
that
things
such
as
text
size,
line
breaking,
and
line
height
behave
as
expected
relative
to
the
size
of
the
bounding
box
set
by
the
content
author,
the
author
can
use
one
of
the
reference
fonts
defined
by
this
specification.
This
specification
requires
processors
to
support
one
or
more
fonts
with
similar
font
metrics
as
reference
fonts.
Note
that,
however,
the
reference
fonts
as
currently
defined
only
cover
characters
used
for
a
few
writing
systems
–
in
particular,
a
subset
of
those
based
on
Latin,
Greek,
Cyrillic,
Hebrew,
and
Arabic
scripts.
Implementations can use fonts other than those specified in A. Reference Fonts . Two fonts with equal metrics can have a different appearance, but flow identically.
A presented region is a temporally active region that satisfies the following conditions:
tts:opacity
is
not
equal
to
"0.0"
;
and
tts:display
is
not
"none"
;
and
tts:visibility
is
not
"hidden"
;
and
tts:showBackground
is
equal
to
"always"
and
the
computed
value
of
tts:backgroundColor
has
non-transparent
alpha.
All regions SHALL NOT extend beyond the Root Container Region , i.e. every coordinate in the set of coordinates of each region is also in the set of coordinates of the Root Container Region .
No two presented regions in a given intermediate synchronic document SHALL overlap, i.e. the intersection of the sets of coordinates within each presented region is empty.
The number of presented regions in a given intermediate synchronic document SHALL NOT be greater than 4.
The following style properties SHALL be subject to the Style Resolution procedures specified at Section 10.4 of [ ttml2 ]:
itts:fillLineGap
itts:forcedDisplay
ebutts:linePadding
ebutts:multiRowAlign
The
style
properties
above
can
be
specified
as
attributes
of
the
initial
element
specified
at
Section
10.1.1
of
[
ttml2
].
| Computed Font Family | Code Points | Reference Font |
|---|---|---|
monospaceSerif
|
All code points specified in B. Common Character Sets | Courier New or Liberation Mono |
proportionalSansSerif
|
All code points specified in B. Common Character Sets , excluding the code points defined for Hebrew and Arabic scripts. | Arial or Helvetica or Liberation Sans |
While a Processor is required to accept, and encouraged to render, all Character Information Items , practical considerations can result in a Processor being capable of rendering only a subset of them. In order to increase the confidence that text will be presented correctly by Processors targeting specific languages, this section defines common character sets that authors are encouraged to use.
The common character sets defined herein are expected to evolve over time, and implementers are encouraged to review them regularly.
The definition of common character sets herein is in no way intended to limit the set of characters that a Processor renders.
Implementers are cautioned that a given sequence of characters can yield different visual representations depending on the context, including surrounding characters, language and font. In other words, there is not necessarily a one-to-one mapping between a character and its visual representation.
For
a
given
language
indicated
using
the
xml:lang
attribute,
the
common
character
set
is
equal
to
the
union
of
the
following
sets:
Some of the sets above can overlap.
Table 1 captures the set of characters intended to be always available to authors. The terms used in the table are defined in [ UNICODE ].
| (Basic Latin) |
|---|
| U+0020 - U+007E |
| (Latin-1 Supplement) |
| U+00A0 - U+00FF |
| (Latin Extended-A) |
| U+0152 : LATIN CAPITAL LIGATURE OE |
| U+0153 : LATIN SMALL LIGATURE OE |
| U+0160 : LATIN CAPITAL LETTER S WITH CARON |
| U+0161 : LATIN SMALL LETTER S WITH CARON |
| U+0178 : LATIN CAPITAL LETTER Y WITH DIAERESIS |
| U+017D : LATIN CAPITAL LETTER Z WITH CARON |
| U+017E : LATIN SMALL LETTER Z WITH CARON |
| (Latin Extended-B) |
| U+0192 : LATIN SMALL LETTER F WITH HOOK |
| (Spacing Modifier Letters) |
| U+02DC : SMALL TILDE |
| (Combining Diacritical Marks) |
| U+0301 : COMBINING ACUTE ACCENT |
| (General Punctuation) |
| U+2010 - U+2015 : Dashes |
| U+2016 - U+2027 : General punctuation |
| U+2030 - U+203A : General punctuation |
| (Currency symbols) |
| U+20AC : EURO SIGN |
| (Letterlike Symbols) |
| U+2103 : DEGREES CELSIUS |
| U+2109 : DEGREES FAHRENHEIT |
| U+2120 : SERVICE MARK SIGN |
| U+2122 : TRADE MARK SIGN |
| (Number Forms) |
| U+2153 - U+215F : Fractions |
| (Mathematical Operators) |
| U+2212 : MINUS SIGN |
| U+221E : INFINITY |
| (Box Drawing) |
| U+2500 : BOX DRAWINGS LIGHT HORIZONTAL |
| U+2502 : BOX DRAWINGS LIGHT VERTICAL |
| U+250C : BOX DRAWINGS LIGHT DOWN AND RIGHT |
| U+2510 : BOX DRAWINGS LIGHT DOWN AND LEFT |
| U+2514 : BOX DRAWINGS LIGHT UP AND RIGHT |
| U+2518 : BOX DRAWINGS LIGHT UP AND LEFT |
| (Block Elements) |
| U+2588 : FULL BLOCK |
| (Geometric Shapes) |
| U+25A1 : WHITE SQUARE |
| (Musical Symbols) |
| U+2669 : QUARTER NOTE |
| U+266A : EIGHTH NOTE |
| U+266B : BEAMED EIGHTH NOTES |
Table 2 specifies supplementary character set that have proven useful in captioning and subtitling applications for a number of selected languages. Table 2 is non-exhaustive, and will be extended as needs arise.
| Primary language subtag |
|
|---|---|
| sq, fi, da, nl, en, de, is, no, sv, ca, fr, it | no supplementary characters |
| lv, lt, et, tr, hr, cs, pl, sl, sk |
(Latin
Extended-A)
U+0100 - U+017F |
| ro |
(Latin
Extended-A)
U+0100 - U+017F (Latin Extended-B) U+0218 - U+0219 U+021A - U+021B |
| el |
(Combining
Diacritical
Marks)
U+0308 (Greek and Coptic) U+0386 - U+038A U+038C U+038E - U+03A1 U+03A3 - U+03CE |
| pt, es |
(Currency
symbols)
U+20A1 - U+20A2 U+20B3 |
| ar |
(Arabic)
U+0609 U+060C - U+060D U+061B U+061E - U+061F U+0621 - U+063A U+0640 - U+0652 U+0660 - U+066D U+0670 |
| he |
(Hebrew)
U+05B0 - U+05C3 U+05D0 - U+05EA U+05F3 - U+05F4 |
| bs, bg, mk, ru, sr, uk |
(Latin
Extended-A)
U+0100 - U+017F (Spacing Modifier Letters) U+02BC (Cyrillic) U+0400 - U+045F U+048A - U+04F9 (Letterlike Symbols) U+2116 |
| kk |
(Latin
Extended-A)
U+0100 - U+017F (Cyrillic) U+0400 - U+045F U+048A - U+04F9 |
| hu |
(Latin
Extended-A)
U+0100 - U+017F (General Punctuation) U+2052 (Miscellaneous Mathematical Symbols-A) U+27E8–U+27E9 |
| ja |
(Basic
Japanese
Collection)
Collection 285 at [ ISO10646 ] (Japanese Non Ideographic Extension) Collection 286 at [ ISO10646 ] (JIS2004 Ideographics Extension) Collection 371 at [ ISO10646 ] Table 5-2 and 5-3 at [ ARIB-STD-B62 ]
Note
Note
|
This section is non-normative.
Figure
5
below
illustrates
the
use
of
forced
content,
i.e.
itts:forcedDisplay
and
.
The
content
with
displayForcedOnlyMode
itts:forcedDisplay="true"
is
the
French
translation
of
the
"High
School"
sign.
The
content
with
itts:forcedDisplay="false"
are
French
subtitles
capturing
a
voiceover.
When
the
user
selects
French
as
the
playback
language
but
does
not
select
French
subtitles,
is
set
to
displayForcedOnlyMode
"true"
,
causing
the
display
of
the
sign
translation,
which
is
useful
to
any
French
speaker,
but
hiding
the
voiceover
subtitles
as
the
voiceover
is
heard
in
French.
If
the
user
selects
French
as
the
playback
language
and
also
selects
French
subtitles,
e.g.
if
the
user
is
hard-of-hearing,
is
set
to
displayForcedOnlyMode
"false"
,
causing
the
display
of
both
the
sign
translation
and
the
voiceover
subtitles.
The
algorithm
for
setting
the
parameter
and
selecting
the
appropriate
combination
of
subtitle
and
audio
tracks
depends
on
the
application.
displayForcedOnlyMode
Success Criterion 1.4.3 at [ WCAG22 ] specifies that, with some exceptions, the visual presentation of text and images of text has a contrast ratio of at least 4.5:1.
In the context of Text Profile , this is achieved by specifying appropriate foreground and background colors.
Success Criterion 1.4.12 at [ WCAG22 ] specifies that no loss of content or functionality occur when spacing of lines, letters, words and paragraphs is modified by a specified amount.
In the context of this specification, this is achieved by specifying an appropriate combination of style properties to achieve the desired line height, font size, region extent, etc.
Success Criteria 3.1.1 and 3.1.2 at [ WCAG22 ] specify that the human language of each passage or phrase in the content can be programmatically determined.
In
the
context
of
this
specification,
this
is
achieved
by
specifying
xml:lang
.
This section is non-normative.
Success Criterion 1.3.1 at [ WCAG22 ] is intended to ensure that information and relationships that are implied by visual or auditory formatting are preserved when the presentation format changes.
As
an
example
in
the
context
of
this
specification,
implementations
should,
when
rendering
a
Document
Instance
to
[
HTML
]
with
[
CSS
]
styling,
ensure
that
the
resultant
[
HTML
]
document
can
be
understood
by
assistive
technologies
even
when
a
user
style
sheet
is
substituted
for
the
style
sheet
provided
by
the
author.
For
instance,
when
rendering
tts:fontVariant
,
the
use
of
CSS
vertical-align
property
alone
might
not
be
sufficient
for
assistive
technology
to
identify
that
the
glyphs
concerned
are
superscript
or
subscript.
This section is non-normative.
Authors and implementers are encouraged to consult [ media-accessibility-reqs ], which presents accessibility requirements users with disabilities have with respect to audio and video on the web.
This section is non-normative.
The following sample Document Instances conforms to the Text Profile . This sample are for illustration only, and are neither intended to capture current or future practice, nor exercise all normative prose contained in this specification.
<?xml version="1.0" encoding="UTF-8"?>
<tt xml:lang="en"
xmlns="http://www.w3.org/ns/ttml"
xmlns:ttm="http://www.w3.org/ns/ttml#metadata"
xmlns:tts="http://www.w3.org/ns/ttml#styling"
xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
ttp:displayAspectRatio="4 3"
ttp:contentProfiles="http://www.w3.org/ns/ttml/profile/imsc1.3/text">
<head>
<layout>
<region xml:id="area1" tts:origin="10% 10%" tts:extent="80% 10%" tts:backgroundColor="black" tts:displayAlign="center" tts:color="red"/>
</layout>
</head>
<body>
<div>
<p region="area1" begin="0s" end="6s">Lorem ipsum dolor.</p>
</div>
</body>
</tt>
The above sample specifies two Intermediate Synchronic Documents , one from 0 seconds to 6 seconds, that renders as Figure 6 , and the other from 6 seconds onwards, that renders as Figure 7 .
Figure
6
shows
a
black
rectangular
region
positioned
so
that
its
upper
left
corner
is
10%
down
from
the
top
of
the
rendering
area
and
10%
right
of
the
left
edge
of
the
rendering
area,
and
whose
width
is
80%
of
the
rendering
area
and
whose
height
is
10%
of
the
rendering
area.
The
region
contains
the
text
"Lorem
ipsum
dolor."
in
red
using
the
default
font,
at
the
default
size;
that
size
is
1/15th
the
height
of
the
rendering
area,
and
is
computed
from
the
default
values
of
the
ttp:cellResolution
parameter
(
"32
15"
)
and
the
ttp:fontSize
(
"100%"
)
style
attribute,
which
are
used
because
both
are
omitted
from
this
document.
Figure
7
shows
the
same
black
rectangular
region
in
the
same
position.
The
region
is
empty
aside
from
the
black
background,
which
is
nevertheless
visible
because
the
tts:showBackground
attribute
is
missing
from
the
region
element,
so
its
default
value
always
applies.
The following sections define extension designations, expressed as relative URIs (fragment identifiers) relative to the IMSC Extension Namespace base URI.
A
transformation
processor
supports
the
#activeArea
feature
if
it
recognizes
and
is
capable
of
transforming
values
of
the
ittp:activeArea
attribute.
A
presentation
processor
supports
the
#activeArea
feature
if
it
implements
presentation
semantic
support
for
values
of
the
ittp:activeArea
attribute.
The
#altText
feature
is
designated
as
permitted-deprecated
in
the
profiles
defined
by
this
specification.
The
altText
named
metadata
item
provides
equivalent
semantics.
A
transformation
processor
supports
the
#altText
feature
if
it
recognizes
and
is
capable
of
transforming
values
of
the
ittm:altText
element.
A
presentation
processor
supports
the
#altText
feature
if
it
implements
presentation
semantic
support
for
values
of
the
ittm:altText
element.
The
#aspectRatio
feature
is
designated
as
permitted-deprecated
in
the
profiles
defined
by
this
specification.
The
#displayAspectRatio
feature
provides
equivalent
semantics.
A
transformation
processor
supports
the
#aspectRatio
feature
if
it
recognizes
and
is
capable
of
transforming
values
of
the
ittp:aspectRatio
attribute.
A
presentation
processor
supports
the
#aspectRatio
feature
if
it
implements
presentation
semantic
support
for
values
of
the
ittp:aspectRatio
attribute.
A
transformation
processor
supports
the
#fillLineGap
feature
if
it
recognizes
and
is
capable
of
transforming
values
of
the
itts:fillLineGap
attribute.
A
presentation
processor
supports
the
#fillLineGap
feature
if
it
implements
presentation
semantic
support
for
values
of
the
itts:fillLineGap
attribute.
A
transformation
processor
supports
the
#forcedDisplay
feature
if
it
recognizes
and
is
capable
of
transforming
values
of
the
itts:forcedDisplay
attribute.
A
presentation
processor
supports
the
#forcedDisplay
feature
if
it
implements
presentation
semantic
support
for
values
of
the
itts:forcedDisplay
attribute.
A
transformation
processor
supports
the
#linePadding
feature
if
it
recognizes
and
is
capable
of
transforming
values
of
the
ebutts:linePadding
attribute
specified
in
[
EBU-TT-D
].
A
presentation
processor
supports
the
#linePadding
feature
if
it
implements
presentation
semantic
support
for
values
of
the
ebutts:linePadding
attribute
specified
in
[
EBU-TT-D
].
A
transformation
processor
supports
the
#multiRowAlign
feature
if
it
recognizes
and
is
capable
of
transforming
values
of
the
ebutts:multiRowAlign
attribute
specified
in
[
EBU-TT-D
].
A
presentation
processor
supports
the
#multiRowAlign
feature
if
it
implements
presentation
semantic
support
for
values
of
the
ebutts:multiRowAlign
attribute
specified
in
[
EBU-TT-D
].
The
#progressivelyDecodable
feature
is
designated
as
permitted-deprecated
in
the
profiles
defined
by
this
specification.
A
transformation
processor
supports
the
#progressivelyDecodable
feature
if
it
recognizes
and
is
capable
of
transforming
values
of
the
ittp:progressivelyDecodable
attribute.
A
presentation
processor
supports
the
#progressivelyDecodable
feature
if
it
implements
presentation
semantic
support
for
values
of
the
ittp:progressivelyDecodable
attribute.
This section is non-normative.
XML Schema definitions (see [ xmlschema-1 ]) for extension vocabulary defined by this specification are provided here for convenience.
These definitions are non-normative and are not sufficient to validate conformance of a Document Instance .
In any case where a definition specified by this appendix diverge from the prose of the specification, then the latter takes precedence.
This section is non-normative.
This section documents extensibility objectives for this specification.
This specification is intended to allow:
This section is non-normative.
This specification is designed to be compatible with [ ttml-imsc1 ], [ ttml-imsc1.0.1 ], [ ttml-imsc1.1 ], [ ttml-imsc1.2 ], [ SMPTE2052-1 ], [ EBU-TT-D ] and [ ttml10-sdp-us ]. Specifically, by selecting a subset of the features and extensions defined in this specification, it is possible to create a document that:conforms to one or more of [ ttml-imsc1 ], [ ttml-imsc1.0.1 ], [ ttml-imsc1.1 ], [ ttml-imsc1.2 ], [ SMPTE2052-1 ], [ EBU-TT-D ] or [ ttml10-sdp-us ], and also conforms to Text Profile .
This specification is also intended to allow straightforward conversion of a document that conforms to the text profile of [ CFF ] to the Text Profile .
The Text Profile is a strict syntactic superset of [ EBU-TT-D ].
A document that conforms to [ EBU-TT-D ] therefore generally also conforms to the Text Profile , with a few exceptions, including:
The
profile
vocabulary
defined
in
[
ttml2
]
is
prohibited
by
[
EBU-TT-D
].
Instead,
as
specified
in
[
EBU-TT-M
],
multiple
ebuttm:conformsToStandard
elements
are
optionally
present
in
the
metadata
element
of
the
head
element,
with
each
ebuttm:conformsToStandard
indicating
conformance
to
a
specification,
including
other
versions
of
this
specification.
Conformance
to
a
[
ttml-imsc1.0.1
]
profile
can
be
indicated
as
defined
in
[
ttml-imsc1.0.1
],
by
including
an
additional
ebuttm:conformsToStandard
element
whose
value
is
equal
to
the
designator
of
the
[
ttml-imsc1.0.1
]
profile
to
which
the
Document
Instance
conforms.
The
following
is
an
example
of
a
document
that
conforms
to
Text
Profile
,
[
ttml-imsc1.0.1
]
Text
Profile
and
[
EBU-TT-D
].
Note
the
presence
of
multiple
ebuttm:conformsToStandard
elements,
one
of
which
equals
the
Text
Profile
designator:
<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.w3.org/ns/ttml" xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
xmlns:tts="http://www.w3.org/ns/ttml#styling" xmlns:ttm="http://www.w3.org/ns/ttml#metadata"
xmlns:ebutts="urn:ebu:tt:style" xml:lang="en" ttp:timeBase="media" xmlns:ebuttm="urn:ebu:tt:metadata" >
<head>
<metadata>
<ebuttm:conformsToStandard>urn:ebu:tt:distribution:2014-01</ebuttm:conformsToStandard>
<ebuttm:conformsToStandard>http://www.w3.org/ns/ttml/profile/imsc1/text</ebuttm:conformsToStandard>
<ebuttm:conformsToStandard>http://www.w3.org/ns/ttml/profile/imsc1.1/text</ebuttm:conformsToStandard>
<ebuttm:conformsToStandard>http://www.w3.org/ns/ttml/profile/imsc1.2/text</ebuttm:conformsToStandard>
<ebuttm:conformsToStandard>http://www.w3.org/ns/ttml/profile/imsc1.3/text</ebuttm:conformsToStandard>
</metadata>
<styling>
<style xml:id="baseStyle" tts:color="#FFFFFF" tts:lineHeight="100%" tts:fontFamily="sansSerif" ebutts:linePadding="0.5c"/>
<style xml:id="black" tts:color="#000000"/>
<style xml:id="blackBackground" tts:backgroundColor="#000000"/>
<style xml:id="greenBackground" tts:backgroundColor="#00FF00"/>
<style xml:id="startEnd" tts:textAlign="start" ebutts:multiRowAlign="end"/>
<style xml:id="centerStart" tts:textAlign="center" ebutts:multiRowAlign="start"/>
</styling>
<layout>
<region xml:id="area1" tts:origin="15% 10%" tts:extent="70% 20%" style="greenBackground" tts:displayAlign="center" tts:showBackground="whenActive"/>
<region xml:id="area2" tts:origin="15% 70%" tts:extent="70% 20%" style="blackBackground" tts:displayAlign="center" tts:showBackground="whenActive"/>
</layout>
</head>
<body>
<div style="baseStyle">
<p xml:id="s1" region="area1" style="startEnd black" begin="00:00:01" end="00:00:09">
multiRowAlign="end"<br/>textAlign="start"
</p>
<p xml:id="s2" region="area2" style="centerStart" begin="00:00:01" end="00:00:09">
multiRowAlign="start"<br/>textAlign="center"
</p>
</div>
</body>
</tt>
The above sample results in three Intermediate Synchronic Documents , one from 0 seconds to 1 second, that renders as Figure 8 , the next from 1 second to 9 seconds, that renders as Figure 9 , and the last from 9 seconds onwards, that renders as Figure 10 .
Figure 8 shows no pixels being generated from the document in the period 0s to 1s.
Figure
9
shows
a
lime
green
and
a
black
rectangular
region.
The
green
region
is
positioned
in
the
upper
part
of
the
rendering
area
and
the
black
region
is
positioned
in
the
lower
part,
according
to
the
tts:origin
and
tts:extent
attribute
values.
The
text
is
black
in
the
green
region
and
white
in
the
black
region.
In
both
cases
it
is
in
a
generic
sans-serif
font,
and
the
text
is
vertically
centred
within
the
region,
according
to
the
tts:displayAlign
attribute
value
specified
on
each
region.
The
horizontal
alignment
of
each
line
of
text
demonstrates
the
combined
application
of
the
ebutts:multiRowAlign
and
tts:textAlign
attributes.
The
start
(left,
in
this
case)
aligned
text
in
the
green
region
is
offset
slightly
from
the
region
edge
due
to
the
application
of
the
ebutts:linePadding
style
attribute
on
the
div
element.
Figure 10 shows no pixels being generated from the document in the period from 9s onwards.
The Text Profile is a strict syntactic superset of [ ttml10-sdp-us ].
A document that conforms to [ ttml10-sdp-us ] therefore also generally conforms to the Text Profile , with a few exceptions, including:
As an illustration, Example 3 at [ ttml10-sdp-us ] conforms to both Text Profile and [ ttml10-sdp-us ].
[
SMPTE2052-1
]
specifies
the
use
of
the
DFXP
Full
Profile
(see
Appendix
F.3
at
[
ttml2
])
supplemented
by
a
number
of
extensions,
including
http://www.smpte-ra.org/schemas/2052-1/2010/smpte-tt#image
.
The Text Profile applies a set of practical constraints and extensions to [ SMPTE2052-1 ] for text-only subtitles and captions. These constraints and extensions reflect industry practice and experience.
Care is required when creating a document intended to be processed according to [ SMPTE2052-1 ], and Text Profile presentation processor . In particular:
http://www.smpte-ra.org/schemas/2052-1/2010/smpte-tt#image
extension;
The following is an example of a document that conforms to both Text Profile and [ SMPTE2052-1 ]:
<?xml version="1.0" encoding="UTF-8"?>
<tt xml:lang="en"
xmlns="http://www.w3.org/ns/ttml"
xmlns:ttm="http://www.w3.org/ns/ttml#metadata"
xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
ttp:profile="http://www.smpte-ra.org/schemas/2052-1/2010/profiles/smpte-tt-full"
xmlns:tts="http://www.w3.org/ns/ttml#styling"
ttp:frameRate="24">
<head>
<layout>
<region xml:id="area1" tts:origin="10% 70%" tts:extent="80% 20%" tts:showBackground="whenActive" tts:backgroundColor="red" tts:displayAlign="center" tts:color="white"/>
</layout>
</head>
<body tts:lineHeight="100%">
<div>
<p region="area1" begin="00:00:01.01" end="00:00:03">This should appear on frame 25.</p>
<p region="area1" begin="00:00:04" end="00:00:06">This should appear on frame 96.</p>
<p region="area1" begin="00:00:07.33" end="00:00:09">This should appear on frame 176.</p>
</div>
</body>
</tt>
This specification was derived from the text profile specified in Section 6 at [ CFF ], and is intended to be a superset of it in terms of capabilities. Additional processing is however generally necessary to convert a [ CFF ] Text Profile document to a Document Instance that conforms to the Text Profile specification. In particular:
progressivelyDecodable
attribute
is
different;
forcedDisplayMode
attribute
in
[
CFF
]
is
renamed
to
forcedDisplay
in
this
specification;
ttp:frameRate
is
not
subject
to
the
requirements
specified
at
Section
8.1.12
#frameRate
;
and
use
attribute
of
the
ttp:profile
.
This
value
signals
a
processor
profile
that
is
not
compatible
with
the
processor
profiles
specified
in
this
specification.
It is not possible to transform a [ CFF ] Image Profile document to a document that conforms to the Text Profile specification without additional complex processing such as extracting text content from images.
A document that conforms to [ ttml-imsc1 ] or [ ttml-imsc1.0.1 ] or [ ttml-imsc1.1 ] or [ ttml-imsc1.2 ] Text Profile also conforms to this specification.
A number of features that are previously permitted in previous versions of IMSC Text Profile are designated as permitted-deprecated in the Text Profile . Documents that use such features are therefore susceptible to being incompatible with future versions of this specification.
Earlier versions of this specification specify an image-only profile, called the Image Profile, which is no longer specified herein. Applications that require such an image-only profile can consider referencing [ ttml-imsc1.2 ].
This section is non-normative.
The editor acknowledges the current and former members of the Timed Text Working Group, the members of other W3C Working Groups, and industry experts in other forums who have contributed directly or indirectly to the process or content of this document.
The editor wishes to especially acknowledge the following contributions by members: Glenn Adams, Skynav; John Birch, Invited expert; Mike Dolan, Invited expert; Nigel Megitt, British Broadcasting Corporation; Thierry Michel, W3C ; Andreas Tai, Institut für Rundfunktechnik; Stefan Pöschel, Institut für Rundfunktechnik.
The editor also wishes to acknowledge Digital Entertainment Content Ecosystem (DECE) for contributing to the initial document for the Member Submission.
This section is non-normative.
With the exception of the following, the security and privacy considerations of [ ttml2 ] apply:
condition
attribute
is
not
supported.
This section is non-normative.
This appendix summarizes changes made from [ ttml-imsc1.2 ].
Added Japanese ( ja ) set to the Supplementary Character Sets at B. Common Character Sets .
The definition of the Hypothetical Render Model is removed from this document and replaced with a reference to [ imsc-hrm ].
The Image Profile specified in earlier versions of this specification is removed.
Added support (partial or complete) for the following features.
| Relative to the TT Feature namespace |
#fontVariant
|
None
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in:
Referenced in: