概要
EPUB3では、メディアを同期するためのメディアオーバーレイと呼ばれる実装が定義されています。この仕様では、テキストのレンダリングと音声の再生を同期するためのSMIL文法のプロファイルが定義されています。
メディアオーバーレイ ドキュメントは、次の要素を使用して構築されています。
| 要素 | 使用 |
|---|---|
| smil | smil要素は、各メディアオーバーレイのルート要素であり、オプションのheadと必須のbody要素が含まれます。 |
| head |
head要素には、オプションのmetadata要素を用いてメタデータを付加できますが、EPUB3仕様ではメタデータは必須ではありません。 |
| metadata |
metadata要素は、外部の名前空間のメタデータをオーバーレイに付加するための拡張要素です。 |
| body | body要素の配下のseqとpar要素の順序により再生が定義されます。 |
| seq |
seq要素は、オーバーレイを構造化するために使用します。ユーザーが読み飛ばし、または回避したいセクション、表、リストなどの複雑な構造を表すのに使用します。 |
| par | par要素は、子のtextやaudio要素内の同期ポイントを定義します。 |
| text |
text要素によって、視覚的なレンダリングと同期されるコンテンツドキュメントと要素が識別されます。 |
| audio | audio要素で、音声ファイルを指定します。オプションで再生の開始点と終了点を指定します。 |
出版物を同期するには、出版物内の各コンテンツドキュメントに個別のオーバーレイが関連付けられていなければなりません。オーバーレイは、パッケージ ドキュメントのmanifest要素内で、オーバーレイを定義するmedia-overlay属性のitemのID値を持つものとして、コンテンツ ドキュメントに関連付けられます。
例
例 1 — 基本的なオーバーレイドキュメント
次の例は、見出しと二つの段落のみで構成される章のオーバーレイドキュメントを示しています。
<smil xmlns="http://www.w3.org/ns/SMIL"
xmlns:epub="http://www.idpf.org/2007/ops"
version="3.0">
<body>
<seq
epub:textref="chapter_001.xhtml"
epub:type="bodymatter chapter">
<par>
<text src="chapter_001.xhtml#c01h01"/>
<audio
src="audio/c01.mp4"
clipBegin="0:00:00.000"
clipEnd="0:00:05.250"/>
</par>
<par>
<text src="chapter_001.xhtml#c01p0001"/>
<audio
src="audio/c01.mp4"
clipBegin="0:00:05.250"
clipEnd="0:00:58.100"/>
</par>
<par>
<text src="chapter_001.xhtml#c01p0002"/>
<audio
src="audio/c01.mp4"
clipBegin="0:00:58.100"
clipEnd="0:02:04.000"/>
</par>
</seq>
</body>
</smil>
例 2 — 章のドキュメントをオーバーレイにリンクする
<item id="xchapter_001"
href="chapter_001.xhtml"
media-type="application/xhtml+xml"
media-overlay="chapter_001_overlay"/>
<item id="chapter_001_overlay"
href="chapter_001_overlay.smil"
media-type="application/smil+xml"/>
サンプル
EPUBサンプルプロジェクトに、メディアオーバーレイを実装する次の出版物があります。