スマートTV時代のマルチメディア言語「LIME」の最新動向2012[豊富なサンプルコード(アプリケーション事例)付き]

執筆者: 

川森 雅仁

サイズ・判型: 

A4判

ページ数: 

332P

発売日: 

2012/04/26
 2012年7月25日にはアナログテレビ放送終了から満一年を迎え、いよいよ本格的なデジタルテレビ放送時代を迎えている現在、国際的にもスマートTVが話題となっています。また、スマートフォンを筆頭にスマートグリッドやスマートハウスと、世の中はまさに“スマート”の時代です。このような動きに伴い、テレビの楽しみ方も、これまでのように放送局側から一方的に提供されるコンテンツ(番組)を視聴するという形態ではなく、ユーザーからの働きかけによって、ユーザーがより主体的に楽しむというインタラクティブ(双方向)形に変わりつつあります。

本書で解説するLIME(ライム)は、ITU-Tで標準化された次世代IPTVのためのマルチメディア言語環境です。軽量なブラウザベースで、放送の品質をもったコンテンツとWeb技術の双方向性を合わせ持つ規格であるため、日本だけでなく米国や欧州、アジアから南米に至るまで国際的に注目される規格となってきています。さらにIPTVだけでなく、デジタル放送とのハイブリッド・コンテンツにも対応可能であることから、今後、国際的にも大きな期待が寄せられています。

本書は、LIMEが標準化された直後の2010年に出版された『IPTV用の新標準「LIME」ハンドブック2010』を大幅に改訂したものです。2010年以後、2年余にわたって欧州やアジア・南米などで取り組まれてきた「LIME」の実証実験や実用化を通して、ダイナミックに変化し展開している現状をとらえ、また実践的な面にウェイトを置いてまとめています。
スマートTV時代の新しいTVコンテンツのあり方に興味のある方にとって、本書は大いに参考になる一冊です。

はじめに

第1章 世界へ普及し始めた国際標準「LIME」(H.762)
スマートTV向けのコンテンツ制作が容易に可能へ
1.1 ITU-Tで標準化されたH.762勧告「LIME」
1.2 LIMEでHello world
1.3 LIMEとHTML
1.4 LIMEを使ってWeb感覚でテレビ・コンテンツ
1.5 「スマートTV」とLIME
1.6 スマートTV時代に対応した新標準「LIME」

第2章 マルチメディア環境「LIME」を構成する技術
各メディア(モノメディア)とLIMEのアーキテクチャ
2.1 LIMEで扱う各モノメディア
2.1.1 画像モノメディア
〔1〕JPEG
〔2〕PNG
〔3〕MNG
〔4〕H.264
〔5〕MPEG-26
2.1.2 音声モノメディア
〔1〕MPEG-2 AAC
〔2〕AIFF
2.2 LIMEの処理系技術の特徴
2.2.1 LIMEのプレーン・モデル(制御部モデル)
〔1〕動画と静止画の重なり表示について
〔2〕音声モノメディア
〔3〕文字の扱い
〔4〕コンテンツの推奨最大サイズ

第3章 LIME-HTML:LIMEのフレームワーク
3.1 bml="Basic Multimedia Language"
3.2 LIME-HTML(Simple XHTML)の詳細
〔1〕LIME-HTMLの要素と属性
3.3 LIME-HTMLのイベント
3.3.1 LIME-HTMLのイベント・ハンドラー
3.3.2 LIME-HTMLのaccesskey属性

第4章 LIME-CSS:LIMEコンテンツのスタイルを定義
4.1 CSSとは
4.2 LIME-CSSの基本記法
4.2.1 CSSによるスタイルの指定の仕方
4.2.2 CSS内でのコメントの書き方
4.3 LIME-CSS文法の詳細
4.3.1 セレクタ
〔1〕グローバル・セレクタ
〔2〕要素名セレクタ
〔3〕IDセレクタ
〔4〕クラス・セレクタ
〔5〕疑似クラス・セレクタ
4.3.2 複数属性の指定
4.3.3 要素に複数のclassの適用
4.3.4 複合セレクタ
〔1〕要素.クラス名の組み合わせ
〔2〕要素#IDセレクタの組み合わせ
〔3〕要素と疑似クラス・セレクタの組み合わせ
4.3.5 LIME-CSSでの注意事項
〔1〕セレクタのグルーピングについて
〔2〕LIME-CSS定義数の上限について
4.3.6 LIME-CSSの属性
〔1〕z-indexについての注意
4.3.7 LIME-CSSでの色指定
4.3.8 リモート・コントロール用の属性:フォーカスとナビゲーション
〔1〕nav-index属性とnav-*属性
〔2〕used-key-list属性

第5章 LIME-Script(LIME JavaScript)とLIME-DOM
5.1 JavaScriptのサブセット:LIME-Script
5.1.1 JavaScriptのサブセット
5.1.2 LIME-Scriptが制限されている理由
〔1〕端末のメモリの課題
〔2〕セキュリティの課題
5.2 LIME-HTMLでのLIME-Scriptの使用法
5.3 LIME-Scriptの文法
5.3.1 LIME-Scriptの式と演算
〔1〕式とコメント
〔2〕変数
〔3〕演算子
〔4〕制御構造
5.4 組込みオブジェクト
5.4.1 LIME-Scriptで使用されるECMAScriptの組込みオブジェクト
〔1〕globalオブジェクト
〔2〕Arrayオブジェクト
〔3〕Booleanオブジェクト
〔4〕Dateオブジェクト
〔5〕Functionオブジェクト
〔6〕Numberオブジェクト
〔7〕Objectオブジェクト
〔8〕Stringオブジェクト
〔9〕サンプル:LIME-Scriptで書かれたXMLパーサー
5.5 browser疑似オブジェクト
5.5.1 JavaScriptの機能を疑似したメソッド
〔1〕タイマーに関するもの
〔2〕その他
〔3〕LIME-Scriptで書かれたLISP
5.5.2 LIMEに独特な関数
〔1〕TCP/IP通信用関数
〔2〕運用制御関数
〔3〕IPTVサービス用関数
5.6 LIME-DOM
5.6.1 document.getElementById()
〔1〕DOMを使ったスタイルとフォーカス情報のアクセス
5.6.2 document.currentEvent
〔1〕イベント・タイプ
〔2〕キーコード
〔3〕ターゲットtarget

第6章 LIMEによるコンテンツ制作の実際
ビデオからスマートハウス・電子出版まで
6.1 LIMEサーバ
6.2 LIMEでのビデオの扱い
〔1〕ビデオ・コンテンツの2つのタイプ
6.2.1 browser.launchIPTVContent()を使ったVOD再生
6.2.2 <object>を使ったVOD再生
6.2.3 VOD用マニフェスト・ファイル
〔1〕リソース・リスト
〔2〕エントリー・リソース情報(ERI)
〔3〕ネットワーク・コンテンツ制御情報(NCI)
〔4〕ライセンス・リンク情報(LLI:License Link Information)
6.3 LIMEでジュークボックス:音声の扱い
6.4 ダイナミックLIMEコンテンツ
6.4.1 スタティックなLIMEとダイナミックなLIME
6.4.2 Ajaxの登場と非同期通信のインパクト
〔1〕非同期通信と同期通信
〔2〕AjaxによるGoogleマップ(非同期通信)のインパクト
6.4.3 デジタル放送におけるインタラクティブ・コンテンツの提供
6.4.4 Web(Ajax)の機能と放送(LIME)の機能の接近
〔1〕Ajaxの登場でWebがB24の機能に追いついてきた
〔2〕AjaxやHTML5の機能も備えたLIME
〔3〕LIME:Flashの機能に加えて、Webで実現できる機能も可能へ
6.4.5 JSP(Java Server Pages)を利用したLIME
6.4.6 PHPとLIME
〔1〕PHPスクリプトの基本構造
6.4.7 CGI
6.4.8 RingoJSとNode.js
6.4.9 UGC(ユーザーが作成したコンテンツ)とLIME制作用ツール
〔1〕PowerPointでLIMEコンテンツを作成
〔2〕cPNGを使ったコンテンツ
〔3〕GiamでcMNGの制作
〔4〕Firefoxでデバッグ
〔5〕LIMEオープンソース・プロジェクト
6.5 LIMEを使った本格的アプリケーションの実際
6.5.1 LIMEのウィジェットの例
6.5.2 スマートハウス向けLIMEアプリケーション
〔1〕LIMEを使った室内デバイス制御用アプリ
6.5.3 公共サービス向けLIMEアプリ
〔1〕画像を使った交通情報
〔2〕LIMEと電子医療
6.5.4 画像認識を使ったLIMEアプリ
6.5.5 E-コマース
〔1〕スマートショップのLIMEインタフェース
〔2〕「MYワインセレクション」
6.5.6 ポップでリッチなLIME
6.5.7 LIMEによる「ソーシャルTV」の実現
6.5.8 e-Pub(電子出版)コンテンツの例
〔1〕幅広く連携可能な電子書籍とLIME
〔2〕LIMEでビデオだけでなく静止画(絵本やカタログ)もコンテンツへ
6.5.9 LIMEブラウザの例
6.5.10 LIMEでゲームを作成

第7章 ITUにおけるLIMEのプロモーションと各国での取り組み
7.1 LIMEに関するIPTV Interopイベントの背景とその概要
7.2 IPTV Interopイベントにおける具体的な展示内容
7.2.1 ジュネーブ:ITU本部におけるInteropイベント
7.2.2 シンガポールでのInteropイベント
7.2.3 インド・プーネでのInteropイベント
7.2.4 アラブ首長国連合・ドバイのInteropイベント
7.3 ITU Application Challenge(アプリケーション・チャレンジ)
7.3.1 世界初の「標準仕様に基づいたIPTVアプリのコンテスト」
7.3.2 拡大するLIMEの開発や実験の拠点
7.4 札幌雪まつりにおけるグローバルLIME実験
7.5 世界でのLIME関連の開発動向や採用に向けた取り組みについて
7.6 世界各地でのLIME開発実験拠点や商用状況
7.6.1 欧州の状況
〔1〕フランスでの活動
〔2〕DVB(欧州の放送規格団体)もLIMEに取り組む
7.6.2 アジアの状況
〔1〕タイ
〔2〕フィリピン
〔3〕シンガポール
〔4〕中国

第8章 H.760(MAFR)シリーズ勧告とその構成
LIMEからGINGA-NCLまで
8.1 ITU-T H.760シリーズ(MAFRシリーズ)勧告の構成
8.1.1 H.IPTV-MAFR.13(IPTV-HTML)
8.1.2 H.763.1(CSS for IPTV)
8.1.3 H.IPTV-MAFR.6(ECMAScript for IPTV)
8.1.4 H.IPTV-MAFR.5(DOM for IPTV)
8.1.5 H.IPTV-MAFR.14(Lua for IPTV)
8.1.6 H.IPTV-MAFR.10(SVG for IPTV)
〔1〕W3CにおけるSVGの勧告作業の歴史
〔2〕MAFRシリーズにおいて重要なSVG
〔3〕SVGの欠点:ファイルのサイズが大きくなること
8.1.7 H.IPTV-MAFR.8(MHEG-5 for IPTV)
8.2 H.761勧告:IPTV用Ginga(ジンガ)-NCL
8.2.1 GINGA-NCLはグルー言語
8.2.2 GINGA-NCLはデフォルトでLIMEを参照
8.2.3 相互運用性とMAFRシリーズ
8.3 モバイル端末向けのIPTVサービスにも対応するMAFRシリーズ
8.3.1 モバイル端末への実装を目指すMAFR

第9章 ARIB-STD-B24(BML)とLIMEの違い
9.1 B24(BML)への誤解と批判
9.1.1 オープンなWeb技術の国際標準HTMLと対比されたB24
9.1.2 「どれがBMLなのか」特定しにくい
9.1.3 世界で一番普及しているB24
9.1.4 伝送路に依存しないLIME
〔1〕ISDB(日本)/DVB(欧州)/ATSC(米国)などに対応できるLIME
〔2〕常時IP接続を前提にできるLIME
9.2 冗長性と曖昧性の2つを解決したLIME
9.2.1 求められた表示画面の安定性
9.2.2 多様なブラウザの登場とコンテンツの安定的な表示
9.2.3 Webコンテンツ(HTML)の「BML化」への流れ
9.3 Webページ作成で推奨されるプラクティス
9.4 LIMEでは使わないARIB-BMLの機能
9.4.1 UregとGreg
〔1〕Ureg
〔2〕Greg
9.4.2 バイナリー・テーブル
〔1〕バイナリー・テーブルとは
〔2〕BinaryTableオブジェクト
9.4.3 放送に特化した機能

第10章 スマートTV時代とLIMEの今後
10.1 スマートTVの系譜:すべてはMHEGから始まった
10.1.1 MHEG-5標準で仕様の作成を検討
10.1.2 MHEG-5コンテンツの構成
10.1.3 MHEG-5とLIMEの関係
10.2 LIMEとB24の関係
10.2.1 LIME策定のきっかけはB24(ARIBが規定)
10.2.2 HTMLによるブラウザの問題点(その1): 2つのブラウザを比較する
10.2.3 HTMLによるブラウザの問題点(その2): 3つのブラウザを比較する
10.3 2006年に日本から「IPTV用BML」をITU-Tに提案
10.3.1 B24という制限の多い枠組みを採用した理由
10.3.2 LIMEの規格をB24ベースで策定することになった4つの理由
10.4 ブラジルが提案したLIMEという名称
10.4.1 BMLが何を指しているのか曖昧である!
10.4.2  名称を「LIME」に決定:ブラジルの「PUC-Rio」大学が発案
10.4.3  B24:仕様が複雑で難解であった
10.5 LIME:B24を参照しながらも国際的にオープンでシンプルな標準に
10.6 HTML5との共存・融合で相乗効果を目指すLIME
10.7 マルチメディア言語系(MML)とテキスト系言語(TML)の違い
10.8 スマートTVとLIME
10.8.1 スマートTVとは
10.8.2 スマートTVの特徴
10.8.3 管理されたコンテンツとインターネット
10.8.4 LIMEとマネージドなスマートTV
10.8.5 LIMEとAndroid
10.8.6 他のマルチメディア環境との比較
〔1〕EBIF
〔2〕CE-HTML
10.9 ITUにおけるLIMEの標準化の課題と今後の展開
10.9.1 国際化
10.9.2 スマートフォン、タブレットPCへの対応

索引

付録:LIMEサンプルコード