Movatterモバイル変換


[0]ホーム

URL:


W3CW3C Member Submission

TTML Text and Image Profiles for Internet Media Subtitles and Captions

W3C Member Submission

This version:
http://www.w3.org/submissions/2013/SUBM-ttml-ww-profiles-20130607/
Latest published version:
http://www.w3.org/submissions/ttml-ww-profiles/
Previous version:
Editor:
Pierre Lemieux,pal@sandflow.com

Copyright © 2013 Motion Picture Laboratories, Inc. Derived from the Common File Format & Media Formats Specification 1.0.6 and Common File Format Timed Text XML Schemas 1.0.6 posted at http://www.uvvuwiki.com, © Digital Entertainment Content Ecosystem (DECE) LLC and used with permission.This document is available under theW3C Document License. See theW3C Intellectual Rights Notice and Legal Disclaimersfor additional information.


Abstract

This submission specifies two profiles of the Timed Text Markup Language (TTML) Version 2.0: a text-only profile and an image-only profile. These profiles are intended to be used across subtitle and caption delivery applications worldwide, thereby simplifying interoperability, consistent rendering and conversion to other subtitling and captioning formats.

Both profiles are based on theCommon File Format & Media Formats Specification (CFF) developed byDigital Entertainment Content Ecosystem (DECE), and benefit from the technical consensus, conformance testing and implementation experience gathered there. The text profile is intended as a superset ofSDP-US, which is a subset of CFF. The image profile extends a subset of TTML withSMPTE Timed Text (SMPTE-TT) image support.

DECE is an industry forum with more than 80 members across the content and consumer electronics communities.

Status of This Document

This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications can be found in theW3C technical reports index at http://www.w3.org/TR/.

By publishing this document, W3C acknowledges that theSubmitting Members have made a formal Submission request to W3C for discussion. Publication of this document by W3C indicates no endorsement of its content by W3C, nor that W3C has, is, or will be allocating any resources to the issues addressed by it. This document is not the product of a chartered W3C group, but is published as potential input to theW3C Process. AW3C Team Comment has been published in conjunction with this Member Submission. Publication of acknowledged Member Submissions at the W3C site is one of the benefits ofW3C Membership. Please consult the requirements associated with Member Submissions ofsection 3.3 of the W3C Patent Policy. Please consult the completelist of acknowledged W3C Member Submissions.

Table of Contents

1.Scope

This document specifies two profiles of [TTML2]: a text-only profile and an image-only profile. These profiles are intended for subtitle and caption delivery worldwide, including dialog language translation, content description, captions for deaf and hard of hearing, etc.

2.Conformance

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 keywordsMUST,MUST NOT,SHALL,SHALL NOT,REQUIRED,SHOULD,SHOULD NOT,RECOMMENDED,MAY, andOPTIONAL in this specification are to be interpreted as described in [RFC2119].

A subtitle documentSHALL conform to a profile defined herein if it meets all normative provisions associated with the profile.

A TTML presentation processorSHALL conform to a profile if it is capable of presenting any subtitle document conforming to the profile, i.e. if it implements all features and provisions of the profile

3.Profiles

3.1General

A subtitle documentSHALL NOT conform to the Text and Image Profiles simultaneously.

3.2Text Profile

A subtitle document conforming to the Text ProfileSHALL conform to Sections4.Common Constraints and5.Text Profile Constraints.

3.3Image Profile

A subtitle document conforming to the Image ProfileSHALL conform to Sections4.Common Constraints and6.Image Profile Constraints.

4.Common Constraints

4.1Document Encoding

A subtitle documentSHALL use UTF-8 character encoding as specified in [UNICODE].

4.2Related Video Object

4.2.1General

A subtitle documentMAY be associated with a related video object, whichSHALL consist of a sequence of frames, each a rectangular array of pixels.

4.2.2Root Container

Note

The following assumes the addition of attp:aspectRatio attribute to [TTML2].

The root container of a subtitle documentSHALL be mapped to the related video object frame according to the following:

  1. Ifttp:aspectRatio is present, the root containerSHALL be mapped to a rectangular area within the related video object such that:

    1. the aspect ratio of the rectangular area is equal tottp:aspectRatio,
    2. the center of the rectangular area is colocated with the center of the related video object frame,
    3. the rectangular area is entirely contained within the related video object frame and
    4. the rectangular area has a height or width equal to that of the related video object frame.
  2. Otherwise, the root container of a subtitle documentSHALL be mapped to the related video object frame in its entirety. Iftts:extent is present on thett element, the extents of the root containerSHALL be equal to the dimensions of the related video object frame.

ttp:aspectRatioSHALL NOT be present iftts:extent is present.

Note

As specified in Section4.6Features,tts:extent is present if thepx length measure is used anywhere within the document.

Integer pixel positions on the related video object frame computed from real percentage length valuesSHALL use half-up rounding, i.e. round(x) = floor(x+0.5).

4.2.3Synchronization

Each intermediate synchronic document of the subtitle document is intended to be displayed on a specific frame and removed on a specific frame of the related video object.

A media time expression MSHALL correspond to the frame of the related video object with the presentation time that is the closest to, but not less, than M.

Ifttp:frameRate is specified, then the product ofttp:frameRate andttp:frameRateMultiplierSHALL be the frame rate of the related video object.

Example 1
A media time expression of 00:00:05.1 corresponds to frame ceiling(5.1 × ( 1000 / 1001 × 30) = 153 of a related video object with a frame rate of 1000 / 1001 × 30 ≈ 29.97.

4.3Language

All instances of thexml:lang attribute within a subtitle documentSHALL have identical values.

Note

xml:lang can have a value of "".

4.4Region

4.4.1Presented Region

A region, as defined in [TTML2],SHALL be considered presented in a given intermediate synchronic document if both of the following conditions are true:

  1. tts:opacity is not equal to "0.0" for the region; and

  2. content is selected into the region ortts:showBackground is equal to "always" for the region.

Note

As specified in [TTML2], the initial value oftts:opacity is "1.0" and the default value oftts:showBackground is "always".

4.4.2Dimensions and Position

All regionsSHALL be entirely contained within the root container.

No two regions presented in a given intermediate synchronic documentSHALL overlap

4.4.3Maximum number

The number of presented regions in a given intermediate synchronic documentSHALL be smaller than or equal to 4.

4.5Hypothetical Render Model

Any sequence of consecutive intermediate synchronic documentsSHALL be reproducible without error by the Hypothetical Render Model specified in Section4.5Hypothetical Render Model.

4.6Features

FeatureProvisions
#animationMAY be used.
#cellResolutionSHALL NOT be used.
#clockModeSHALL NOT be used.
#contentMAY be used.
#coreMAY be used.
#display-blockMAY be used.
#display-inlineMAY be used.
#display-regionMAY be used.
#displayMAY be used.
#dropModeSHALL NOT be used.
#extent-regionMAY be used. Thetts:extent attributeSHALL be present on allregion elements.
#extent-rootMAY be used. If the document includes any length value that uses thepx expression,tts:extentSHALL be present on thett element.
#extentMAY be used.
#frameRateIf the document includes any time expression that uses the frame field, thettp:frameRate attributeSHALL be present on thett element.
#frameRateMultiplierMAY be used.
#layoutMAY be used.
#length-cellSHALL NOT be used.
#length-integerMAY be used.
#length-negativeSHALL NOT be used.
#length-percentageMAY be used.
#length-pixelMAY be used.
#length-positiveMAY be used.
#length-realMAY be used.
#lengthMAY be used.
#markerModeSHALL NOT be used.
#metadataMAY be used.
#opacityMAY be used.
#originMAY be used.
#overflowSHALL NOT be used.
#pixelAspectRatioSHALL NOT be used.
#presentationMAY be used.
#profileMAY be used.
#showBackgroundMAY be used.
#structureMAY be used.
#styling-chainedMAY be used.
#styling-inheritance-contentMAY be used.
#styling-inheritance-regionMAY be used.
#styling-inlineMAY be used.
#styling-nestedMAY be used.
#styling-referentialMAY be used.
#stylingMAY be used.
#subFrameRateSHALL NOT be used.
#tickRateMAY be used.ttp:tickRateSHALL be present on thett element.
#timeBase-clockSHALL NOT be used.
#timeBase-mediaSHALL be used.ttp:timeBaseSHALL be present on thett element andSHALL be equal to "media".
#timeBase-smpteSHALL NOT be used.
#time-clock-with-framesMAY be used.
#time-clockMAY be used.
#time-offset-with-framesMAY be used.
#time-offset-with-ticksMAY be used.
#time-offsetMAY be used.
#timeBase-mediaMAY be used.
#timeContainerMAY be used.
#timingMAY be used. The same syntax of#clock-time or#offset-timeSHOULD be used throughout the subtitle document.
#transformationMAY be used.
#unicodeBidiMAY be used.
#visibility-blockMAY be used.
#visibility-inlineMAY be used.
#visibility-regionMAY be used.
#visibilityMAY be used.
#writingMode-horizontal-lrMAY be used.
#writingMode-horizontal-rlMAY be used.
#writingMode-horizontalMAY be used.
#writingModeMAY be used.
#zIndexMAY be used.
#aspectRatioMAY be used.
#forcedDisplayMAY be used.
Note

SeeISSUE-230 for a description of#forcedDisplay

Note

This initial values specified fortts:color,tts:displayAlign andtts:textAlign are those specified by [ST2052-1].

Note

As specified in [TTML2], a#time-offset-with-frames expression is translated to a media time M according to M = 3600 · hours + 60 · minutes + seconds + (frames ÷ (ttp:frameRateMultiplier ·ttp:frameRate)).

5.Text Profile Constraints

5.1Document Conformance

A subtitle document conforming to the Text ProfileSHALL be designated by the document conformance designator specified below.

http://www.w3.org/ns/ttml/profile/imsc-text
Note

The ttp:profile mechanism of TTML 1.0 allows a document to indicate the profile(s) that a processorSHALL support in order to process the document. This mechanism cannot be used to indicate that a processor implementing any of the referenced profiles can process the document. The document conformance concept introduced below extends the TTML 1.0 ttp:profile mechanism by allowing a document to signal that it conforms to a specified set of normative provisions.

5.2Features

Note

The following assumes, but does not require, the porting of the [ST2052-1]#backgroundImage,#backgroundImageHorizontal,#backgroundImageVertical and#image features to [TTML2].

FeatureProvisions
#backgroundColor-blockMAY be used.
#backgroundColor-inlineMAY be used.
#backgroundColor-regionMAY be used.
#backgroundColorMAY be used.
#backgroundImageSHALL NOT be used.
#backgroundImageHorizontalSHALL NOT be used.
#backgroundImageVerticalSHALL NOT be used.
#bidiMAY be used.
#colorMAY be used. The initial value oftts:colorSHALL be "white".
#directionMAY be used.
#displayAlignMAY be used. The initial value oftts:displayAlignSHALL be "after".
#extent-regionThetts:extent attribute when applied to a region elementSHALL usepx units or "percentage" representation, andSHALL NOT useem units.
#fontFamily-genericMAY be used.
#fontFamily-non-genericMAY be used.
#fontFamilyMAY be used.
#fontSize-anamorphicSHALL NOT be used.
#fontSize-isomorphicMAY be used.
#fontSizeMAY be used.
#fontStyle-italicMAY be used.
#fontStyle-obliqueMAY be used.
#fontStyleMAY be used.
#fontWeight-boldMAY be used.
#fontWeightMAY be used.
#imageSHALL NOT be used.
#length-emMAY be used.
#lineBreak-uax14MAY be used.
#lineHeightMAY be used.
#nested-divMAY be used.
#nested-spanMAY be used.
#originThetts:origin attributeSHALL usepx units or "percentage" representation, andSHALL NOT useem units.
#padding-1MAY be used.
#padding-2MAY be used.
#padding-3MAY be used.
#padding-4MAY be used.
#paddingMAY be used.
#textAlign-absoluteMAY be used.
#textAlign-relativeMAY be used.
#textAlignMAY be used. The initial value oftts:textAlignSHALL be "center".
#textDecoration-overMAY be used.
#textDecoration-throughMAY be used.
#textDecoration-underMAY be used.
#textDecorationMAY be used.
#textOutline-blurredSHALL NOT be used.
#textOutline-unblurredMAY be used.
#textOutlineMAY be used. If specified, the border thicknessSHALL be 10% or less than the associated font size.
#wrapOptionMAY be used.
#writingMode-verticalMAY be used.

6.Image Profile Constraints

6.1Document Conformance

The Image ProfileSHALL be designated by the document conformance designator specified below:

http://www.w3.org/ns/ttml/profile/imsc-image
Note

The ttp:profile mechanism of TTML 1.0 allows a document to indicate the profile(s) that a processorSHALL support in order to process the document. This mechanism cannot be used to indicate that a processor implementing any of the referenced profiles can process the document. The document conformance concept introduced below extends the TTML 1.0 ttp:profile mechanism by allowing a document to signal that it conforms to a specified set of normative provisions.

6.2Features

Note

The following assumes, but does not require, the porting of the [ST2052-1]#backgroundImage,#backgroundImageHorizontal,#backgroundImageVertical and#image features to [TTML2].

FeatureProvisions
#backgroundImageMAY be used. The backgroundImage attributeSHALL reference a complete image that conforms to the PNG image coding as specified in Sections 7.1.1.3 and 15.1 of [MHP].
If a pHYs chunk is present, itSHALL indicate square pixels. Note: If no pixel aspect ratio is carried, the default of square pixels will be assumed.
#backgroundImageHorizontalSHALL NOT be used.#backgroundImage remains available for use.
#backgroundImageVerticalSHALL NOT be used.#backgroundImage remains available for use.
#bidiSHALL NOT be used.
#colorSHALL NOT be used.
#contentThep,span andbr elementsSHALL NOT be present.
#directionSHALL NOT be used.
#displayAlignSHALL NOT be used.
#extent-regionIf atts:backgroundImage attribute is applied to a region, the width and height of the region extentSHALL be present andSHALL be equal to the width and height of the image source referenced by thetts:backgroundImage.
#fontFamilySHALL NOT be used.
#fontSizeSHALL NOT be used.
#fontStyleSHALL NOT be used.
#fontWeightSHALL NOT be used.
#imageSHALL NOT be used.
#length-emSHALL NOT be used.
#lineBreak-uax14SHALL NOT be used.
#lineHeightSHALL NOT be used.
#nested-divSHALL NOT be used.
#nested-spanSHALL NOT be used.
#paddingSHALL NOT be used.
#textAlignSHALL NOT be used.
#textDecorationSHALL NOT be used.
#textOutlineSHALL NOT be used.
#wrapOptionSHALL NOT be used.
#writingMode-verticalSHALL NOT be used.

7.Hypothetical Render Model

7.1Overview

This Section specifies the Hypothetical Render Model illustrated inFig.1 Hypothetical Render Model.

The purpose of the model is to limit subtitle document complexity. It is not however intended to serve as basis for implementation. For instance, while the model defines a glyph buffer for the purpose of limiting the number of glyphs displayed at any given point in time, it does not require an implementation to implement such a buffer.

Hypothetical Render Model
Fig.1 Hypothetical Render Model

The model operates on successive intermediate synchronic documents obtained from an input subtitle document, and uses a simple double buffering model: while an intermediate synchronic document En is being painted into Presentation Buffer Pn (the "front buffer" of the model), the previous intermediate synchronic document En-1 is available for display in Presentation Buffer Pn-1 (the "back buffer" of the model).

The model specifies an (hypothetical) time required for completely painting an intermediate synchronic document as a proxy for complexity. Painting includes drawing region backgrounds, rendering and copying glyphs, and decoding and copying images. Complexity is then limited by requiring that painting of intermediate synchronic document En completes before the end of intermediate synchronic document En-1.

Whenever applicable, constraints are specified relative to root container dimensions, allowing subtitle sequences to be authored independently of related video object resolution.

To enables scenarios where the same glyphs are used in multiple successive intermediate synchronic documents, e.g. to convey a CEA-608/708-style roll-up (see [CEA-608] and [CEA-708]), the Glyph Buffers Gn and Gn-1 store rendered glyphs across intermediate synchronic documents, allowing glyphs to be copied into the Presentation Buffer instead of rendered, a more costly operation.

Similarly, Decoded Image Buffers Dn and Dn-1 store decoded images across intermediate synchronic documents, allowing images to be copied into the Presentation Buffer instead of decoded.

7.2Model

7.2.1General

The Presentation CompositorSHALL render in Presentation Buffer Pn each successive intermediate synchronic document En using the following steps in order:
  1. clear the pixels, except for the first intermediate synchronic document E0 for the which the pixels of P0SHALL be assumed to have been cleared;
  2. paint, according to stacking order, all background pixels for each region;
  3. paint all pixels for background colors associated with text or image subtitle content; and
  4. paint the text or image subtitle content.

The Presentation CompositorSHALL start rendering En:

  • at the presentation time of E0 minus Initial Painting Delay (IPD), if n = 0
  • at the presentation time of En-1, if n > 0

The duration DUR(En) for painting an intermediate synchronic document En in the Presentation Buffer PnSHALL be:

DUR(En) = S(En) / BDraw + DURT(En) + DURI(En)

Where:

  • S(En) is the total normalized drawing area for intermediate synchronic document En, as specified in7.2.2Paint Regions
  • BDraw is the normalized background drawing performance factor.
  • DURT(En) is the duration, in seconds, for painting the text subtitle content for intermediate synchronic document En, as specified in Section7.2.4Paint Text
  • DURI(En) is the duration, in seconds, for painting the image subtitle content for intermediate synchronic document En, as specified in Section7.2.3Paint Images

The contents of the Presentation Buffer PnSHALL be transferred instantaneously to Presentation Buffer Pn-1 at the presentation time of intermediate synchronic document En, making the latter available for display.

Note

It is possible for the contents of Presentation Buffer Pn-1 to never be displayed. This can happen if Presentation Buffer Pn is copied twice to Presentation Buffer Pn-1 between two consecutive video frame boundaries of the related video object.

ItSHALL be an error for the Presentation Compositor to fail to complete painting pixels for En before the presentation time of En.

Unless specified otherwise, the following tableSHALL specify values for IPD and BDraw.

ParameterInitial value
Initial Painting Delay (IPD)1 s
Normalized background drawing performance factor (BDraw)12 s-1
Note

BDraw effectively sets a limit on fillings regions - for example, assuming that the root container is ultimately rendered at 1920×1080 resolution, a BDraw of 12 s-1 would correspond to a fill rate of 1920×1080×12/s=23.7×220pixels s-1.

Note

IPD effectively sets a limit on the complexity of any given intermediate synchronic document.

7.2.2Paint Regions

The total normalized drawing area S(En) for intermediate synchronic document EnSHALL be

S(En) = CLEAR(En) + PAINT(En )

where CLEAR(E0) = 0 and CLEAR(En | n > 0) = 1, i.e. the root container in its entirety.

Note

To ensure consistency of the Presentation Buffer, a new intermediate synchronic document requires clearing of the root container.

PAINT(En)SHALL be the normalized area to be painted for all regions that are used in intermediate synchronic document En according to

PAINT(En) = ∑Ri∈Rp SIZE(Ri) ∙ NBG(Ri)

where R_pSHALL be the set of regions presented in the intermediate synchronic document En – see Section4.4.1Presented Region for the definition of presented region.

NSIZE(Ri)SHALL be given by:

NSIZE(Ri) = (width of Ri ∙ height of Ri ) ÷ (root container height ∙ root container width)

Example 2
For a region Ri in withtts:extent="250px 50px" within a root container withtts:extent="1920px 1080px", NSIZE(Ri) = 0.603.

NBG(Ri)SHALL be the total number oftts:backgroundColor attributes associated with the given region Ri in the intermediate synchronic document. Atts:backgroundColor attribute is associated with a region when it is explicitly specified (either as an attribute in the element, or by reference to a declared style) in the following circumstances:

Even if a specifiedtts:backgroundColor is the same as specified on the nearest ancestor content element or animation element, specifying anytts:backgroundColorSHALL require an additional fill operation for all region pixels.

7.2.3Paint Images

The Presentation CompositorSHALL paint into the Presentation Buffer Pn all visible pixels of presented images of intermediate synchronic document En.

A presented imageSHALL be adiv element with a smpte:backgroundImage attribute that is contained within a presented region.

For each presented image, the Presentation CompositorSHALL either:

  • if an identical image is present in Decoded Image Buffer Dn, copy the image from Decoded Image Buffer Dn to the Presentation Buffer Pn using the Image Copier; or
  • if an identical image is present in Decoded Image Buffer Dn-1, i.e. an identical image was present in intermediate synchronic document En-1, copy using the Image Copier the glyph from Decoded Image Buffer Dn-1 to both the Decoded Image Buffer Dn and the Presentation Buffer Pn; or
  • Otherwise, decode the image using the Image Decoder the image into the Presentation Buffer Pn and Decoded Image Buffer Dn.

Two imagesSHALL be identical if and only if they reference the same encoded image source.

The duration DURI(En) for painting images of an intermediate synchronic document En in the Presentation BufferSHALL be as follows:

DURI(En) = ∑Ii ∈ Ic NRGA(Ii) / ICpy + ∑Ij ∈ Id NSIZ(Ij) / IDec

where

  • Ic is the set of images copied when painting intermediate synchronic document En
  • Id is the set of images decoded when painting intermediate synchronic document En
  • IDec is the image decoding rate
  • ICpy is the normalized image copy performance factor.

NRGA(Ii) is the Normalized Image Area of presented image Ii andSHALL be equal to:

NRGA(Ii)= (width of Ii ) ∙ height of Ii ) ÷ ( root container height ∙ root container width )

NSIZ(Ii)SHALL be the number of pixels of presented image Ii.

The contents of the Decoded Image Buffer DnSHALL be transferred instantaneously to Decoded Image Buffer Dn-1 at the presentation time of intermediate synchronic document En.

The total size occupied by images stored in Decoded Image Buffers Dn or Dn-1SHALL be the sum of their Normalized Image Area.

The size of Decoded Image Buffers Dn or Dn-1SHALL be the Normalized Decoded Image Buffer Size (NDIBS).

Unless specified otherwise, the following tableSHALL specify ICpy, Idec, and NDBIS.

ParameterInitial value
Normalized image copy performance factor (ICpy)6
Image Decoding rate (Idec)1 × 220 pixels s-1
Normalized Decoded Image Buffer Size (NDIBS)0.9885

7.2.4Paint Text

For each glyph displayed in intermediate synchronic document En, the Presentation CompositorSHALL:

  • if an identical glyph is present in Glyph Buffer Gn, copy the glyph from Glyph Buffer Gn to the Presentation Buffer Pn using the Glyph Copier; or
  • if an identical glyph is present in Glyph Buffer Gn-1, i.e. an identical glyph was present in intermediate synchronic document En-1, copy using the Glyph Copier the glyph from Glyph Buffer Gn-1 to both the Glyph Buffer Gn and the Presentation Buffer Pn; or
  • Otherwise render using the Glyph Renderer the glyph into the Presentation Buffer Pn and Glyph Buffer Gn using the corresponding style information.

Two glyphs are identical if and only if the following [TTML2] styles are identical:

  • tts:color
  • tts:fontFamily
  • tts:fontSize
  • tts:fontStyle
  • tts:fontWeight
  • tts:textDecoration
  • tts:textOutline
Example of Presentation Compositor Behavior for Text Rendering
Fig.2 Example of Presentation Compositor Behavior for Text Rendering

The duration DURT(En) for painting the text of an intermediate synchronic document En in the Presentation Buffer is as follows:

DURT(En) = ∑Gi ∈ Gr NRGA(Gi) / Ren(Gi) + ∑Gj ∈ Gc NRGA(Gj) / GCpy

Where:

  • Gr is the set of glyphs rendered into the Presentation Buffer Pn using the Glyph Renderer in intermediate synchronic document En.
  • Gc is the set of glyphs copied to the Presentation Buffer Pn using the Glyph Copier in intermediate synchronic document En.
  • Ren(Gi) is the text rendering performance factor glyph Gi
  • GCpy is the normalized glyph copy performance factor

Gr and GcSHALL include only glyphs in presented regions andSHALL NOT include a [UNICODE] Code Point if it does not result in a change to presentation, e.g. the Code Point is ignored.

The Normalized Rendered Glyph Area NRGA(Gi) of a glyph GiSHALL be equal to:

NRGA(Gi)= (fontSize of Gi as percentage of root container height)2

The contents of the Glyph Buffer GnSHALL be copied instantaneously to Glyph Buffer Gn-1 at the presentation time of intermediate synchronic document En.

The total size occupied by the glyphs stored in Glyph Buffers Gn or Gn-1SHALL be the sum of their Normalized Rendered Glyph Area.

The size of Glyph Buffers Gn and Gn-1SHALL be the Normalized Glyph Buffer Size (NGBS).

Unless specified otherwise, the following tableSHALL specify GCpy, Ren and NGBS, andSHALL apply to all supported font styles (including provision of outline border).

ParameterInitial value
Normalized glyph copy performance factor (GCpy)12
Text rendering performance factor Ren(Gi if Gi is not a CJK Unified Ideograph as specified in [UNICODE].1.2
Text rendering performance factor Ren(Gi) if Gi is a CJK Unified Ideograph as specified in [UNICODE].0.6
Normalized Glyph Buffer Size (NGBS)1
Note

NRGA(Gi) does not take into account glyph decorations (e.g. underline), glyph effects (e.g. outline) or actual glyph aspect ratio. An implementation can determine an actual buffer size needs based on worst-case glyph size complexity.

Example 3
Setting a Glyph Buffer Normalized Size effectively sets a limit on the total number of distinct glyphs present in any given intermediate synchronic document En. For example, assuming a maximum Normalized Glyph Buffer Size of 1 and the default tts:fontSize of 1c are used, the glyph's height as percentage of root container height is 1/15 , and the maximum number of distinct glyphs that can be buffered is 1÷(1÷15)^2=225 glyphs. In this example, an implementation rendering at 1920x1080 would need to allocate a glyph buffer no smaller than (1920÷32)×(1080÷15)×225=~1 Mpixels.
Example 4
GCpy effectively sets a limit on animating glyphs. For example, assuming that the root container is ultimately rendered at 1920×1080 resolution and no regions need to have background color painted (so only a CLEAR(En) operation is required for the normalized drawing area for the intermediate synchronic document), a GCpy and BDraw of 12 s-1 would mean that a group of 160 glyphs with a tts:fontSize equal to 5% of the root container height could be moved at most approximately 12 s-1 ÷ (1 + ( 160 × 0.052 )) = 8.6 times per second.
Example 5
Ren(Gi) effectively sets a limit on the glyph rendering rate. For example, assuming that the root container is ultimately rendered at a 1920×1080 resolution, a Ren(Gi) of 1.2 s-1 would mean that at most 120 glyphs with a fontSize of 108 px (10% of 1080 px and NRGA(Gi) = 0.01) could be rendered every second.

A.Recommended Unicode Code Points per Language

The following table lists common code points (see [UNICODE]) definitions used in this Appendix:

(Basic Latin)
U+0020 - U+007E (Letterlike Symbols)
U+2103 : DEGREES CELSIUS
U+2109 : DEGREES FAHRENHEIT
U+2120 : SERVICE MARK SIGN
U+2122 : TRADE MARK SIGN
(Latin-1 Supplement)
U+00A0 - U+00FF (Number Forms)
U+2153 – U+215F : Fractions
(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 (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
(Latin Extended-B)
U+0192 : LATIN SMALL LETTER F WITH HOOK (Block Elements)
U+2588 : FULL BLOCK
(Spacing Modifier Letters)
U+02DC : SMALL TILDE (Geometric Shapes)
U+25A1 : WHITE SQUARE
(General Punctuation)
U+2010 - U+2015 : Dashes
U+2016 - U+2027 : General punctuation
U+2030 - U+203A : General punctuation (Musical Symbols)
U+2669 : QUARTER NOTE
U+266A : EIGHTH NOTE
U+266B : BEAMED EIGHTH NOTES
(Currency symbols)
U+20AC : EURO SIGN

The following table specifies the [UNICODE] code points thatSHOULD be used in a document's textual content ifxml:lang is present (Primary language subtag is as defined in IETF RFC 5646).

LanguagesPrimary language subtag of
xml:lang
[UNICODE] Code Points
Albanian Languages
Albanian"sq"As defined in the table above
Baltic Languages
Latvian, Lithuanian"lv", "lt"As defined in the table above, except for "(Latin Extended-A)" which is re-defined below
(Latin Extended-A)
U+0100 - U+017F
Finnic Languages
Finish"fi"As defined in the table above
Estonian"et"As defined in the table above, except for "(Latin Extended-A)" which is re-defined below
(Latin Extended-A)
U+0100 - U+017F
Germanic Languages
Danish, Dutch/Flemish, English, German, Icelandic, Norwegian, Swedish"da", "nl", "en", "de", "is", "no", "sv"As defined in the table above.
Greek Languages
Greek"el"As defined in the table above
(Greek and Coptic)
U+0386 : GREEK CAPITAL LETTER ALPHA WITH TONOS
U+0387 : GREEK ANO TELEIA
U+0388 – U+03CE : Letters
Romanic Languages
Catalan, French, Italian"ca", "fr", "it"As defined in the table above
Portuguese, Spanish"pt", "es"(Currency symbols)
U+20A1 : COLON SIGN
U+20A2 : CRUZEIRO SIGN
U+20B3 : AUSTRAL SIGN
Romanian"ro"As defined in the table above, except for "(Latin Extended-A)" which is re-defined below
(Latin Extended-A)
U+0100 - U+017F
Semitic Languages
Arabic"ar"As defined in the table above
U+060C – U+060D : Punctuation
U+061B : ARABIC SEMICOLON
U+061E : ARABIC TRIPLE DOT PUNCTUATION MARK
U+061F : ARABIC QUESTION MARK
U+0621 – U+063A : Based on ISO 8859-6
U+0640 – U+064A : Based on ISO 8859-6
U+064B – U+0652 : Points from ISO 5559-6
U+0660 – U+0669 : Arabic-Indic digits
U+066A – U+066D : Punctuation
Hebrew"he"As defined in the table above
(Hebrew)
U+05B0 – U+05C3 : Points and punctuation
U+05D0 – U+05EA : Based on ISO 8859-8
U+05F3 – U+05F4 : Additional punctuation
Slavic Languages
Croatian, Czech, Polish, Slovenian, Slovak"hr", "cs", "pl", "sl", "sk"As defined in the table above, except for "(Latin Extended-A)" which is re-defined below
(Latin Extended-A)
U+0100 - U+017F
Bosnian, Bulgarian, Macedonian, Russian, Serbian, Ukrainian"bs", "bg", "mk", "ru", "sr", "uk"As defined in the table above, except for "(Latin Extended-A)" which is re-defined below
(Latin Extended-A)
U+0100 - U+017F
(Cyrillic)
U+0400 – U+040F : Cyrillic extensions
U+0410 – U+044F : Basic Russian alphabet
U+0450 – U+045F : Cyrillic extensions
Turkic Languages
Turkish"tr"As defined in the table above, except for "(Latin Extended-A)" which is re-defined
(Latin Extended-A)
U+0100 - U+017F
Kazakh"kk"As defined in the table above, except for "(Latin Extended-A)" which is re-defined
(Latin Extended-A)
U+0100 - U+017F
(Cyrillic)
U+0400 – U+040F : Cyrillic extensions
U+0410 – U+044F : Basic Russian alphabet
U+0450 – U+045F : Cyrillic extensions
Ugric Languages
Hungarian"hu"As defined in the table above, except for "(Latin Extended-A)" which is re-defined below
(Latin Extended-A)
U+0100 - U+017F

B.Typical Practice for Subtitles per Region (Informative)

This section is non-normative.

The following table summarizes subtitle languages commonly used in the listed regions. The Language Tag is as specified in RFC 5646.

RegionSubtitle Languages (Language Tag)
ALL (worldwide)English ("en")
America (North)
ALLFrench ("fr") [Québécois ("fr-CA") or Parisian ("fr-FR")]
United StatesSpanish ("es") [Latin American ("es-419")]
America (Central and South)
ALLSpanish ("es") [Latin American ("es-419")]
BrazilPortuguese ("pt") [Brazilian ("pt-BR")]
Asia, Middle East, and Africa
ChinaChinese ("zh") [Simplified Mandarin ("zh-cmn-Hans")]
EgyptArabic ("ar")
Hong KongChinese ("zh") [Cantonese ("zh-yue")]
IndiaHindi ("hi")
Tamil ("ta")
Telugu ("te")
IndonesiaIndonesian ("id")
IsraelHebrew ("he")
JapanJapanese ("ja")
KazakhstanKazakh ("kk")
MalaysiaStandard Malay ("zsm")
South KoreaKorean ("ko")
TaiwanChinese ("zh") [Traditional Mandarin ("zh-cmn-Hant")]
ThailandThai ("th")
VietnamVietnamese ("vi")
Europe
Benelux (Belgium, Netherlands, and Luxembourg)French ("fr") [Parisian ("fr-FR")]
Dutch/Flemish ("nl")
DenmarkDanish ("da")
FinlandFinnish ("fi")
FranceFrench ("fr") [Parisian ("fr-FR")]
Arabic ("ar")
GermanyGerman ("de")
Turkish ("tr")
ItalyItalian ("it")
NorwayNorwegian ("no")
SpainSpanish ("sp") [Castilian ("sp-ES")]
Catalan ("ca")
SwedenSwedish ("sv")
SwitzerlandFrench ("fr") ["fr-CH" or "fr-FR"]
German ("de") ["de-CH"]
Italian ("it") ["it-CH"]
AlbaniaAlbanian ("sq")
BulgariaBulgarian ("bg")
CroatiaCroatian ("hr")
Czech RepublicCzech ("cs")
EstoniaEstonian ("et")
GreeceGreek ("el")
HungaryHungarian ("hu")
IcelandIcelandic ("is")
LatviaLatvian ("lv")
LithuaniaLithuanian ("lt")
MacedoniaMacedonian ("mk")
PolandPolish ("pl")
PortugalPortuguese ("pt") [Iberian ("pt-PT")]
RomaniaRomanian ("ro")
RussiaRussian ("ru")
SerbiaSerbian ("sr")
SlovakiaSlovak ("sk")
SloveniaSlovenian ("sl")
TurkeyTurkish ("tr")
UkraineUkrainian ("uk")

C.Schema

TBD

D.References

D.1Normative references

[MHP]
ETSI TS 101 812 V1.3.1, Digital Video Broadcasting (DVB); Multimedia Home
[RFC2119]
S. Bradner.Key words for use in RFCs to Indicate Requirement Levels. March 1997. Internet RFC 2119. URL:http://www.ietf.org/rfc/rfc2119.txt
[TTML2]
World Wide Web Consortium (W3C). Timed Text Markup Language (TTML) 2.0.
[UNICODE]
The Unicode Standard. URL:http://www.unicode.org/versions/latest/

D.2Informative references

[CEA-608]
Line-21 Data Services, ANSI/CEA Standard.
[CEA-708]
Digital Television (DTV) Closed Captioning, ANSI/CEA Standard.
[ST2052-1]
SMPTE ST 2052-1, Timed Text Format (SMPTE-TT)

[8]ページ先頭

©2009-2025 Movatter.jp