SMIL 2.1 maintains without change all SMIL 2.0 Transition Effects functionality [SMIL20-transition]. SMIL 2.1 adds full-screen transitions in the FullScreenTransitions module. This addition requires also a slight extension of the Transition Model. SMIL 2.1 also includes new audio transitions. This results in an addition to the BasicTransitions module and to the taxonomy of transitions in the appendix.
In case of SMIL language profile supporting FullScreenTransitions module the area to which the transition applies may be different and, hence, the effect perceived by the viewer is of multiple media items transitioning. However, all timing rules and other rules for applying transitions outlined in the SMIL 2.0 Transitions Model [SMIL20-transition] still treat the transition exactly the same as when applying it to a single media item.
The only change from SMIL 2.0 BasicTransitions module [SMIL20-transition] is the inclusion of audio transitions. Audio transitions animate the audio component of the target media object. SMIL 2.1 specifies two audio transitions, "audioFade" and "audioVisualFade". They both adjust the audio volume of the target media. The latter one also animates the visual component of the media.
The "audioFade" transition fades an audio clip in or out by linearly adjusting the volume of the clip. As with the visual "fade" transition from SMIL 2.0, direction of the transition depends on whether it is used in transIn or transOut attribute. To achieve cross-fade effect between two audio clips, the clips must overlap in time and the "audioFade" transitions need to be applied simultaneously to both.
The "audioVisualFade" fade acts like a combination of the "audioFade" and the visual "fade" transitions from SMIL 2.0. It has the same subtypes as "fade" transition. Future versions of the specification may provide a general mechanism for combining transitions.
Since the fill attribute semantics dictate that audio is silent during the fill period, the fill value fill="transition" can't be used for transition effects between audio clips. To mix audio clips using transition effects the timeline of the clips must overlap.
The following example cross-fades between two audio clips. For cross-fade effect the clips must overlap in the presentation timeline. Since audio clips are not audible during the fill period, a sequence time container would not be suitable for achieving this effect.
<transition id="four_sec_fade" type="audioFade" subType=fade" dur="4s"/> . . . <par> <audio id="audio1" ... transOut="four_sec_fade" /> <audio id="audio2" ... begin="audio1.end-4s" transIn="four_sec_fade" /> </par>
The FullScreenTransitions module extends SMIL 2.1 BasicTransitions module with the option of doing full-screen transitions, while keeping the semantics of transitions the same. Logically, a transition is still applied to a single media item, through the transIn or transOut attribute, but the visual effect is that the whole screen or window is transitioned from one set of media items to another. In this section we refer to the media item with the transIn or transOut attribute as the master media item.
The exact meaning of whole window must be defined in the language profile including this module. In general, it will be the largest possible area encompassing the destination region, for instance the topLayout element of which the region is a descendant, or the whole screen for profiles without support for separate windows.
Consider the following presentation:
... <head> <transition id="diagonalWipe" type="diagonalWipe" subtype="topRight" dur="1s" /> ... </head> <body> <par dur="10s"> <img id="left1" src="left1.jpg" region="leftpane" /> <text id="right1" src="right1.txt" region="rightpane" /> </par> <par dur="10s"> <img id="left2" src="left2.jpg" region="leftpane" /> <text id="right2" src="right2.txt" region="rightpane" /> </par> </body> ...
We can define parallel transitions on individual media objects using SMIL 2.0 BasicTransitions [SMIL20-transition]: For this purpose we add attribute transIn="diagonalWipe" to elements "left2" and "right2" identifiers and attribute fill="transition" to elements "left1" and "right1" identifiers.
Parallel transitions on individual media objects
It is common practice to apply transitions across several different media at once. Using FullScreenTransitions we can achieve a transition effect on the whole screen:
The transition element is extented with the following attribute:
The media items that transition together with the master media item are all those media items that are rendering within the area defined by the scope attribute at the time the transition starts. In effect, a transIn transition transitions from the set of media items defined as "background" in the Transition Model to the set of media items that would have been visible at the start time if no transIn attribute had been present. A transOut transition is from a set of media items visible at the start time of the transition to the set of media items that should be visible just after the master media item finishes (note that this set does not depend on whether transOut is specified or not).
Media items that start or end during the transition are treated in the same way as the background media items (see the BasicTransitions module).
Using these definitions a full-screen transition can be added to above example as follows:
... <head> <transition id="diagonalWipeFullScreenTransition" type="clockWipe" subtype="clockwiseTwelve" dur="1s" scope="screen" /> ... </head> <body> <par dur="10s"> <img id="left1" src="left1.jpg" region="leftpane" fill="transition" /> <text id="right1" src="right1.txt" region="rightpane" fill="transition" /> </par> <par dur="10s"> <img id="left2" src="left2.jpg" region="leftpane" /> <text id="right2" src="right2.txt" region="rightpane" transIn="diagonalWipeFullScreenTransition" /> </par> </body> ...
SMIL 2.1 introduces the following two new transition types.
crossfade (default), fadeToColor, fadeFromColor