SMIL 1.0 プレーヤーが利用可能な場合
これは、次の達成基準に関連する実装方法である:
この実装方法の目的は、会話の合間に入れられるよりも多くの音声ガイドを、視聴覚素材に付加することである。
SMIL 1.0 にはこれを達成する簡単な方法がないが、連続して順番に再生される複数のファイルに、音声ファイル及び映像ファイルを分割することによって実装できる。この方法によって追加した音声ガイドは、視聴覚コンテンツが停止している間に再生される。映像ファイルの最後のフレームは、画面に表示されたまま一時停止し、その間に音声ファイルが再生される。
これにより、映像は最初から最後まで再生されるように見えながらも、ところどころで停止して、その間に長めの音声ガイドが提供される。そして、音声ガイドが終了すると、映像の再生が自動的に再開する。
この拡張した音声ガイドのオン/オフを操作するには、スクリプトを使用して、拡張した音声ガイドを含んだSMILスクリプト及び含まないSMILスクリプトの2つの間で切り替えることによって実装できる。又は、スクリプトを使用して、拡張した音声ガイドをSMILファイルに追加したりSMILファイルから削除したりすることもできる。そうすることで、映像クリップは、単純に順序どおり再生されることになる。
スクリプトが使用できない場合は、2つのバージョンの映像を提供することによって可能となる。つまり、1つは拡張した音声ガイドを含んだバージョン、もう1つは含まないバージョンを提供するのである。
コード例:
<?xml version="1.0" encoding="UTF-8"?>
<smil xmlns:qt="http://www.apple.com/quicktime/resources/smilextensions"
xmlns="http://www.w3.org/TR/REC-smil" qt:time-slider="true">
<head>
<layout>
<root-layout background-color="black" height="266" width="320"/>
<region id="videoregion" background-color="black" top="26" left="0"
height="144" width="320"/>
</layout>
</head>
<body>
<par>
<seq>
<par>
<video src="video.rm" region="videoregion" clip-begin="0s" clip-end="5.4"
dur="8.7" fill="freeze" alt="videoalt"/>
<audio src="no1.wav" begin="5.4" alt="audio alt"/>
</par>
<par>
<video src="video.rm" region="videoregion" clip-begin="5.4" clip-end="24.1"
dur="20.3" fill="freeze" alt="videoalt"/>
<audio src="no2.wav" begin="18.7" alt="audio alt"/>
</par>
<par>
<video src="video.rm" region="videoregion" clip-begin="24.1" clip-end="29.6"
dur="7.7" fill="freeze" alt="videoalt"/>
<audio src="no3.wav" begin="5.5" alt="audio alt"/>
</par>
<par>
<video src="video.rm" region="videoregion" clip-begin="29.6" clip-end="34.5"
dur="5.7" fill="freeze" alt="videoalt"/>
<audio src="no4.wav" begin="4.9" alt="audio alt"/>
</par>
<par>
<video src="video.rm" region="videoregion" clip-begin="77.4" alt="video alt"/>
</par>
</seq>
</par>
</body>
</smil>
上記のマークアップは、5つの <par>
セグメントに分割されている。各セグメントに <video>
と <audio>
のタグが1つずつある(ただし、最後の <par>
に <audio>
がないのは意図的なものである)。拡張した音声ガイドの通常の使い方は、音声ガイドが提供される間、メインのメディアを一時停止するというものである。SMIL 1.0でこれを実現するには、映像クリップの開始と終了を指定する「clip-begin
」と「clip-end
」を設定して、その「clip-begin
」と「clip-end
」で定義されるよりも長い再生時間をクリップに設定する。fill=「freeze」
は、拡張した音声ガイドの再生中、映像の最後のフレームを保持する。<audio>
タグには「begin
」の属性があり、その前の <video>
タグで定義された「clip-end
」の値と同じ値を持っている。
「clip-begin
」「clip-end
」「dur」の値を決めるにあたっては、音声ガイドが開始及び終了する前の映像部分の時間と、拡張した音声ガイドの全体の長さを調べる必要がある。「clip-begin
」と「clip-end
」は、それ自体の値を定義するが、「dur
」の値は、「clip-begin
」と「clip-end
」によって定義される拡張した音声ガイド及び映像クリップを合計した長さとなる。最初の <par>
では、映像クリップが0秒で始まり、5.4秒で終わる。そして記述の長さは3.3秒だ。このため、「dur
」の値は、5.4 + 3.3 = 8.7秒となる。
この参考リソースは、あくまでも情報提供のみが目的であり、推薦などを意味するものではない。
拡張した音声ガイドのあるファイルを再生する。
音声ガイドのあるファイルを再生する。
映像がところどころ一時停止して、拡張した音声ガイドが再生される。
3.を満たしている。
注意: この実装方法が「達成基準を満たすことのできる実装方法」の一つである場合、このチェックポイントや判定基準を満たしていなければ、それはこの実装方法が正しく用いられていないことを意味するが、必ずしも達成基準を満たしていないことにはならない。場合によっては、別の実装方法によってその達成基準が満たされていることもありうる。
日本語訳における注記:
この文書の正式版は、W3Cサイトで公開されている英語の文書であり、この日本語訳には誤訳が含まれていることもありえます。なお、文中にある「日本語訳における注記」は、W3Cの原文にはないものであり、日本語訳監修者が追記したものです。