CARVIEW |
Synchronized Multimedia Integration Language (SMIL 2.0) - [Second Edition]
W3C Recommendation 07 January 2005
- This version:
- https://www.w3.org/TR/2005/REC-SMIL2-20050107/
- Latest SMIL 2 version:
- https://www.w3.org/TR/SMIL2/
- Latest SMIL Recommendation:
- https://www.w3.org/TR/SMIL/
- Previous version:
- https://www.w3.org/TR/2004/PER-SMIL2-20041105/
- Editors:
- Jeff Ayars (RealNetworks), Dick Bulterman (Oratrix), Aaron Cohen (Intel), Ken Day (Macromedia), Erik Hodge (RealNetworks), Philipp Hoschka (W3C), Eric Hyche (RealNetworks), Muriel Jourdan (INRIA), Michelle Kim (IBM), Kenichi Kubota (Panasonic), Rob Lanphier (RealNetworks), Nabil Layaïda (INRIA), Thierry Michel (W3C), Debbie Newman (Microsoft), Jacco van Ossenbruggen (CWI), Lloyd Rutledge (CWI), Bridie Saccocio (RealNetworks), Patrick Schmitz (Microsoft), Warner ten Kate (Philips).
- Thierry Michel (W3C) - Proposed Edited Recommendation version.
This document is also available in these non-normative formats: single HTML
file, zip
archive.
Please refer to the errata for this
document, which may include normative corrections.
See also translations
Copyright ©2005 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply.
Abstract
This document specifies the second version of the Synchronized Multimedia Integration Language (SMIL, pronounced "smile"). SMIL 2.0 has the following two design goals:
- Define an XML-based language that allows authors to write interactive multimedia presentations. Using SMIL 2.0, an author can describe the temporal behavior of a multimedia presentation, associate hyperlinks with media objects and describe the layout of the presentation on a screen.
- Allow reusing of SMIL syntax and semantics in other XML-based languages, in particular those who need to represent timing and synchronization. For example, SMIL 2.0 components are used for integrating timing into XHTML [XHTML10] and into SVG [SVG].
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 and the latest revision of this technical report can be found in the W3C technical reports index at https://www.w3.org/TR/.
This document is a Recommendation of the W3C. It has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its widespread deployment. This enhances the functionality and interoperability of the Web.
This document has been produced by the SYMM Working Group [members only] as part of the W3C Synchronized Multimedia Activity. The goals of the SYMM Working Group are discussed in the SYMM Working Group charter [members only].
This second edition of SMIL 2.0 is not a new version, it merely
incorporates the changes dictated by the corrections to errors found in the
first edition as agreed by the SYMM Working Group, as a convenience to
readers. A separate list of all such corrections is available at https://www.w3.org/2001/07/REC-SMIL20-20010731-errata.
This W3C Recommendation SMIL 2.0 second edition supersedes the 07 August 2001 version of the first SMIL 2.0 Recommendation.
The SMIL 2.0 test suite and Implementation results are publicly released and are intended solely to be used as proof of SMIL 2.0 implementability. It is only a snap shot of the actual implementation behaviors at one moment of time, as these implementations may not be immediately available to the public. The interoperability data is not intended to be used for assessing or grading the performance of any individual implementation.
There are patent disclosures and license commitments associated with the SMIL 2.0 Recommendation, these may be found at the Working Group's public SYMM Patent Statement page in conformance with W3C policy.
The authors of this document are the SYMM Working Group members. Different
parts of the document have different editors.
The 7 August 2001 version of the SMIL 2.0 Recommendation was published before W3C adopted a specific Patent Policy. Per the Patent Policy Transition Procedure, this revision of the Recommendation will therefore be covered by the 24 January 2002 Current Patent Practice.
Please report errors in this document to www-smil@w3.org - (public archives).
Quick Table of Contents
- 1. About SMIL 2.0
- 2. The SMIL 2.0 Modules
- 3. The SMIL 2.0 Animation Modules
- 4. The SMIL 2.0 Content Control Modules
- 5. The SMIL 2.0 Layout Modules
- 6. The SMIL 2.0 Linking Modules
- 7. The SMIL 2.0 Media Object Modules
- 8. The SMIL 2.0 Metainformation Module
- 9. The SMIL 2.0 Structure Module
- 10. The SMIL 2.0 Timing and Synchronization Module
- 11. The SMIL 2.0 Time Manipulations Module
- 12. The SMIL 2.0 Transition Effects Module
- 13. SMIL 2.0 Language Profile
- 14. SMIL 2.0 Basic Profile and Scalability Framework
- Appendix A. SMIL 2.0 DTDs
- Appendix B. SMIL 2.0 Schemas
- Appendix C. Index of Elements
- Appendix D. Index of Attributes
- Appendix E. References
Full Table of Contents
- 1. About SMIL 2.0
- 2. The SMIL 2.0 Modules
- 3. The SMIL
2.0 Animation Modules
- 3.1 Introduction
- 3.2
Animation Model
- 3.2.1 The simple animation function f(t)
- 3.2.2 Summary of symbols used in the semantic descriptions
- 3.2.3 The animation sandwich model
- 3.2.4 Animation elements as "continuous media"
- 3.2.5 The animation effect function F(t,u)
- 3.2.6 Additive animation
- 3.2.7 Restarting animations
- 3.2.8 Animation function value details
- 3.3 Overview of the SMIL 2.0 BasicAnimation Module
- 3.4 SMIL 2.0 BasicAnimation Module Common Attributes
- 3.5 SMIL 2.0 BasicAnimation Elements
- 3.6 SMIL 2.0 BasicAnimation Module Details
- 3.7 Overview of the SMIL 2.0 SplineAnimation Module
- 3.8 SMIL 2.0 SplineAnimation Module Details
- 3.9 Common Animation Integration Requirements
- 4. The
SMIL 2.0 Content Control Modules
- 4.1 Introduction
- 4.2 The SMIL 2.0 BasicContentControl Module
- 4.3 The SMIL 2.0 CustomTestAttributes Module
- 4.4 The SMIL 2.0 PrefetchControl Module
- 4.5 The SMIL 2.0 SkipContentControl Module
- 5. The SMIL 2.0
Layout Modules
- 5.1 Introduction
- 5.2 Overview of the SMIL 2.0 BasicLayout Module
- 5.3 SMIL 2.0 BasicLayout Module Syntax and Semantics
- 5.4 Overview of the SMIL 2.0 AudioLayout Module
- 5.5 SMIL 2.0 AudioLayout Module Syntax and Semantics
- 5.6 Overview of the SMIL 2.0 MultiWindowLayout Module
- 5.7 SMIL 2.0 MultiWindowLayout Module Syntax and Semantics
- 5.8 Overview of the SMIL 2.0 HierarchicalLayout Module
- 5.9 New Features in the SMIL 2.0 HierarchicalLayout Module
- 5.10 SMIL 2.0 HierarchicalLayout Syntax and Semantics
- 6. The SMIL 2.0 Linking Modules
- 7. The SMIL 2.0 Media Object Modules
- 7.1 Introduction
- 7.2 Definitions
- 7.3 SMIL BasicMedia Module
- 7.4 SMIL MediaParam Module
- 7.5 SMIL MediaClipping Module
- 7.6 SMIL MediaClipMarkers Module
- 7.7 SMIL BrushMedia Module
- 7.8 SMIL MediaAccessibility Module
- 7.9 SMIL MediaDescription Module
- 7.10 Appendices
- 8. The SMIL 2.0 Metainformation Module
- 9. The SMIL 2.0 Structure Module
- 10. The
SMIL 2.0 Timing and Synchronization Module
- 10.1 Introduction
- 10.2 Overview of SMIL timing
- 10.3 Language definition
- 10.3.1 Attributes
- The begin and dur attributes: basic timing support
- The end attribute: controlling active duration
- The min and max attributes: more control over the active duration
- Timing attribute value grammars
- The endsync attribute
- The repeatCount, repeatDur, and repeat attributes: repeating elements
- The fill attribute: extending an element
- The restart attribute
- The syncBehavior, syncTolerance, and syncMaster attributes: controlling runtime synchronization
- Attributes for timing integration: timeContainer and timeAction
- The timeAction attribute
- Examples:
- 10.3.2 Elements
- 10.3.3 Semantics of the Timing Model
- Resolving times
- Defining the simple duration
- Computing the active duration
- Paused elements and the active duration
- Evaluation of begin and end time lists
- Timing and real-world clock times
- Interval timing
- Event sensitivity
- Converting between local and global times
- Hyperlinks and timing
- Propagating changes to times
- Time container duration
- Time container constraints on child durations
- Time container constraints on sync-arcs and events
- Behavior of 0 duration elements
- 10.3.4 Clarifications and surprising results
- 10.3.1 Attributes
- 10.4 Integrating SMIL Timing and Synchronization into a host language
- 10.5 Document object model support
- 10.6 Glossary
- 10.6.1 General
concepts
- Synchronization relationship
- Time graph
- Descriptive terms for times
- Local time and global time
- Linear and Non-linear media
- Scheduled timing
- document begin
- document end
- document duration
- Events and interactive timing
- Syncbases
- Sync arcs
- Clocks
- UTC: Coordinated Universal Time
- Hyperlinking and timing
- Activation
- Discrete and continuous Media
- 10.6.2 Timing concepts
- 10.6.1 General
concepts
- 10.7 Appendix A: SMIL Timing and Synchronization modules
- 10.8 Appendix B: Annotated examples
- 10.8.1 Example 1: Simple timing within a Parallel time container
- 10.8.2 Example 2: Simple timing within a Sequence time container
- 10.8.3 Example 3: excl time container with child timing variants
- 10.8.4 Example 4: default duration of discrete media
- 10.8.5 Example 5: end specifies end of active dur, not end of simple dur
- 10.8.6 Example 6: DOM-initiated timing
- 10.9 Appendix C: Differences from SMIL 1.0
- 10.10 Appendix D: Unifying event based and scheduled timing
- 11. The SMIL 2.0 Time Manipulations Module
- 12.
The SMIL 2.0 Transition Effects Module
- 12.1 Introduction
- 12.2 Transition Model
- 12.3 Transition Taxonomy
- 12.4 BasicTransitions Module
- 12.5 InlineTransitions Module
- 12.6 TransitionModifiers Module
- 12.7 Integration
- 12.8 Appendix: Taxonomy Tables
- 13. SMIL
2.0 Language Profile
- 13.1 Abstract
- 13.2 SMIL 2.0 Profile
- 13.3 Normative Definition of the SMIL 2.0 Language
Profile
- 13.3.1 Document Conformance
- 13.3.2 SMIL 2.0 Language Conformance
- 13.3.3 The SMIL 2.0 Language Profile
- 13.3.4 Animation Module
- 13.3.5 Content Control Modules
- 13.3.6 Layout Modules
- 13.3.7 Linking Modules
- 13.3.8 Media Object Modules
- 13.3.9 Metainformation Module
- 13.3.10 Structure Module
- 13.3.11 Timing and Synchronization Modules
- 13.3.12 Transition Effects Modules
- 13.4 Extending the SMIL 2.0 Language
- 13.5 Appendix A: SMIL 20 Document Type Definition
- 13.6 Appendix B: SMIL 20 XML Schema
- 14. SMIL 2.0 Basic Profile and Scalability Framework
- Appendix A. SMIL 2.0 DTDs
- Appendix B.
SMIL 2.0 Schemas
- B.1
XML Schema for the SMIL 2.0 functionalities:
- B.1.1 SMIL 2.0 Modules
- B.1.2 The SMIL Animation Module
- B.1.3 The SMIL Content Control Module
- B.1.4 The SMIL Layout Module
- B.1.5 The SMIL Linking Module
- B.1.6 The SMIL Media Object Module
- B.1.7 The SMIL Meta Module
- B.1.8 The SMIL Structure Module
- B.1.9 The SMIL Time manipulation
- B.1.10 The SMIL Timing Module
- B.1.11 The SMIL Transition Module
- B.2 XML Schema for the SMIL 2.0 Language:
- B.3
XML Schema for the SMIL 2.0 modules:
- B.3.1 SMIL 2.0 AccessKeyTiming
- B.3.2 SMIL 2.0 AudioLayout
- B.3.3 SMIL 2.0 BasicAnimation
- B.3.4 SMIL 2.0 BasicContentControl
- B.3.5 SMIL 2.0 BasicInlineTiming
- B.3.6 SMIL 2.0 BasicLayout
- B.3.7 SMIL 2.0 BasicLinking
- B.3.8 SMIL 2.0 BasicMedia
- B.3.9 SMIL 2.0 BasicTimeContainers
- B.3.10 SMIL 2.0 BasicTransitions
- B.3.11 SMIL 2.0 BrushMedia
- B.3.12 SMIL 2.0 CustomTestAttributes
- B.3.13 SMIL 2.0 EventTiming
- B.3.14 SMIL 2.0 ExclTimeContainers
- B.3.15 SMIL 2.0 FillDefault
- B.3.16 SMIL 2.0 HierarchicalLayout
- B.3.17 SMIL 2.0 HostLanguage
- B.3.18 SMIL 2.0 InlineTransitions
- B.3.19 SMIL 2.0 IntegrationSet
- B.3.20 SMIL 2.0 LinkingAttributes
- B.3.21 SMIL 2.0 MediaAccessibility
- B.3.22 SMIL 2.0 MediaClipMarkers
- B.3.23 SMIL 2.0 MediaClipping
- B.3.24 SMIL 2.0 MediaDescription
- B.3.25 SMIL 2.0 MediaMarkerTiming
- B.3.26 SMIL 2.0 MediaParam
- B.3.27 SMIL 2.0 Metainformation
- B.3.28 SMIL 2.0 MinMaxTiming
- B.3.29 SMIL 2.0 MultiArcTiming
- B.3.30 SMIL 2.0 MultiWindowLayout
- B.3.31 SMIL 2.0 ObjectLinking
- B.3.32 SMIL 2.0 PrefetchControl
- B.3.33 SMIL 2.0 RepeatTiming
- B.3.34 SMIL 2.0 RepeatValueTiming
- B.3.35 SMIL 2.0 RestartDefault
- B.3.36 SMIL 2.0 RestartTiming
- B.3.37 SMIL 2.0 SkipContentControl
- B.3.38 SMIL 2.0 SplineAnimation
- B.3.39 SMIL 2.0 Structure
- B.3.40 SMIL 2.0 SyncBehavior
- B.3.41 SMIL 2.0 SyncBehaviorDefault
- B.3.42 SMIL 2.0 SyncMaster
- B.3.43 SMIL 2.0 SyncbaseTiming
- B.3.44 SMIL 2.0 TimeContainerAttributes
- B.3.45 SMIL 2.0 TimeManipulations
- B.3.46 SMIL 2.0 TransitionModifiers
- B.3.47 SMIL 2.0 WallclockTiming
- B.3.48 SMIL 2.0 utility
- B.3.49 SMIL 2.0 rdf
- B.3.50 SMIL 2.0 xml-mod
- B.1
XML Schema for the SMIL 2.0 functionalities:
- Appendix C. Index of Elements
- Appendix D. Index of Attributes
- Appendix E. References