近江屋 My Opera 支店

僕とOpera

音声ファイルをePubに埋め込む

, ,

iOS用のApple純正電子書籍リーダー「iBooks」で観光ガイドを読んでもらうための試みを始めて約1ヶ月。
どうせ制作するなら、iBooks以外のリーダーでも音声ファイルやSVGファイルをなんとか再生できるようにしたいと相変わらず四苦八苦。

とりあえず、現状で試したことの一部をまとめてみます。

audioタグを用いる正攻法
iBooksでは以下のように記述すれば音声ファイルを再生できます。
 <audio src="hellowWorld.mp3" controls="true" autobuffer="true">
  お使いのリーダーでは音声ファイルを再生できません
 </audio>

当然のことだけど、audioタグはHTML5でのものであり、XHTMLでは有効ではない。
したがって、iBooks以外のリーダーでは「お使いのリーダーでは音声ファイルを再生できません」という文字列が表示されます。
Stanzaではファイル全体の読み込みができないので、いつまでたっても「Loading ...」と画面が真っ白なまんまです。


objectタグを試す
そこでXHTMLの原点(?)に戻って、objectタグを使ってみました。
 <object data="hellowWorld.mp3" type="audio/mpeg" width="200pt" height="16pt">
  お使いのリーダーでは音声ファイルを再生できません
 </object>

XHTML文書としてはValidな記述なので、WEBブラウザ上では正しく表示されました。
しかし、iBooks上では音声を再生できませんでした。
ちなみにFirefoxの拡張機能「EPUB Reader」でもダメ。Adobe Digital Editionでもダメ。

こんな記述も試した
ものはついでと、半ばヤケっぱちな記述方法も実験。
 <audio src="hellowWorld.mp3" controls="true" autobuffer="true">
  <object data="hellowWorld.mp3" type="audio/mpeg" width="200pt" height="16pt">
   <embed src="hellowWorld" width="200pt" height="16pt">
    オーディオ機能がサポートされていません
   </embed>
  </object>
 </audio>

結果は見えていたけれど、入れ子にしても解釈されるわけでもなし。
あまりにも醜いコーディングゆえに、iBooksまでがStanzaのようにフリーズする始末。
失敗することが自明であっても、ついつい実行してしまう悪い癖は子どもの頃から治りません:awww:

Appleの公式サポートサイトでQuickTimeオブジェクトの埋め込みをembedタグを軸にして解説しているので、embedタグならうまくいきそうなもんですが、単独で使ってみてもダメでした。(情報が古すぎる? QuickTime: EMBED タグアトリビュート
ちなみに入れ子の順番とかを入れ替えても結果は同じようなものです。

実験は続く...
似たような手順で、SVGファイルをページに含める方法もあれこれ試しています。
しかし、なかなかうまくいきません。
電子書籍に各種ファイルを埋め込むべく工夫されている方で、奇特にもこのページにめぐり合う方がいらっしゃれば、ぜひ情報交換したいところです。

SVGをePubに埋め込む

Write a comment

New comments have been disabled for this post.