HDi
HDiとは、マイクロソフトによるHD DVDのAdvacend Content層の実装である[1][2]。かつてはiHDと称していた[3][4]。Xbox 360のHD DVD オプションや HD DVD プレイヤーで使われている[2]。
概要
HDi 向けのアプリケーションはXML派生言語とECMAScriptを使って書かれる[5]。ECMAScriptはMicrosoft Windowsプラットフォーム上で動作するJScriptエンジンで処理される。HDi実行部はAdvanced Content規格に定義されたAPIを提供する。シングルスレッドのプログラミングモデルのみに対応しているが、ネットワークアクセスや二次記憶装置アクセスなどの操作は非同期に実行される[6]。
HD DVDビデオのインタラクティブ機能はAdvanced Contentのアプリケーションであり、HDi実行部により実行され描画される。アプリケーションは、プレイリストファイル(.xpl
)とサブタイトルファイル(.xas
)とマークアップファイル(.xmu
)とスクリプト(.js
)、さらにビデオ本体から構成され、ディレクトリ構造も定義されている。HDi実行部はマークアップとスクリプトを解析して実行する。ビデオの再生はナビゲーションシステムの一部として統合されており、スクリプトコードで制御され起動される。
HDi実行部は、ビデオ再生とナビゲーション用アプリケーションの実行と描画を行う。マークアップは構文解析されてDocument Object Model(DOM)に変換され、それによってECMAScriptコードでUIレイアウトを実行時に制御・修正できるようになる。アニメーションとインタラクティブ性は、UIウィジェットのレイアウトを動的に変更することでなされる。DOMと関連APIによって、再生の一時停止、ナビゲーションUIの置換、映画の特定エリアのシーク(手動シークまたはブックマークのシーク)が可能となる。描画面は6層になっている。画面に最終的に現れる画像は、それらの合成されたものである。この合成もHDi実行部が制御する。それぞれの層は背景から前景の順に次のようになっている。
- Background plane: アプリケーションの背景色を決定する。
- Main video plane: ビデオ本体はこの面で表示される。
- Sub video plane: ピクチャ・イン・ピクチャなど2次的ビデオが表示される。
- Subtitles graphics plane: サブタイトル(字幕)が表示される。
- Application graphics plane: スクリプトとマークアップによるUIはこの面に描画される。
- Cursor plane: カーソルを表示する場合に使われる。
マイクロソフトはHDiアプリケーション開発用ツールを提供していないが、マイクロソフトはHDiシミュレータ(Windows XP上でHDiアプリケーションを実行しデバッグできる環境)を無料でダウンロード可能にしていた。ただしこれは完全な開発ツールではなく、再生デバイスでもない。サードパーティからは開発ツールが発売されていたが、Advanced ContentとHDiが使っているコンポーネント(XML、XSL-FO、XPath、ECMAScript)は広く使われているものばかりなので、HDi専用ツールでなくとも流用可能である。
HDiは光ディスクだけでなく、インターネット上のマルチメディアコンテンツなどにも応用できる。実際、2007年10月4日、東芝とマイクロソフトはAdvanced Interactivity Consortium (AIC)の結成を発表した[7]。
- Advanced Content
Advanced ContentはDVDフォーラムが、メニュー、ブックマーク、ピクチャ・イン・ピクチャ、追加コンテンツやゲームなどのHD DVDのインタラクティブ機能のために定義した仕様である。Advanced Contentの実装では、タイマ、ユーザー入力(リモコンなど)などの機能が提供される。また、ネットワークにアクセスして追加コンテンツをダウンロードしたり、2次記憶装置上のブックマークなどの情報にアクセスしたりできる。Advanced ContentはHTMLに似たXMLベースのマークアップ言語を使って書かれ、アプリケーションのロジックはECMAScriptを使って書かれる。Advanced Contentが提供する機能はECMAScriptのAPIから利用できる。表示スタイルの設定にはXSL-FOをベースとしたXMLマークアップが使われ、タイマの設定にはSMILが使われる。Advanced Contentのアプリケーション作成時にはXPathを使うこともできる。
脚注
- ^ “Trademark press release”. 2008年7月28日閲覧。
- ^ a b “Microsoft Announces Use of HDi Logo by Toshiba and Hollywood Studios”. 2007年10月4日閲覧。
- ^ Engadget:iHD, HDi? Nope it's called Advanced Navigation
- ^ iHD changed to HDi
- ^ “HD-DVD Jumpstart Kit”. Microsoft. 2007年12月4日閲覧。
- ^ Peter Torr. “Maintaining Callback Semantics”. 2007年12月4日閲覧。
- ^ “Toshiba and Microsoft Announce Plans to Form Advanced Interactivity Consortium”. 2008年7月29日閲覧。