79
SMIL: マルチメディアのためのマークアップ

Webのハイパーテキスト・マークアップ言語(HMTL)はタイミング感覚が乏しい。実際、HTMLには時間感覚が全くない。頭痛の種となるJavaScript PREの塊に頼らない限り、特定の時間に要素が表示されたり消えたりするページを作ることはできない。時間はマルチメディアの要であるだけに、これは残念なことだ。ビデオやマルチメディアのオーサリング・プログラムを見ればわかるだろう。それらはタイムラインベースのウィンドウを中心に構築されており、プロジェクトを段階的に表示している。

比較的新しい2つのマークアップ言語は、空間 マークアップ(表示場所の制御) だけでなく 、時間マークアップ(表示時間 の制御 )もサポートすることで、HTMLを凌駕しています。そのうちの1つはHTML+Timeと呼ばれ、現在Windows版Microsoft Internet Explorerのバージョン5のみがサポートしています。そのため、異なるブラウザや古いブラウザを使用している何百万人ものユーザーにリーチしたいWebデザイナーにとって、この言語の価値は限定的です。

必要なもの

Microsoft WordやMac OSのSimpleTextなどのテキストエディタ

リアルプレイヤーG2

RealSystem G2 サーバー

Terran Interactive の Media Cleaner Pro 4 ( www.terran.com ) などの圧縮ユーティリティ

もう 1 つの時間ベースのマークアップ言語は SMIL (スマイルと発音 )と呼ばれ 、Synchronized Multimedia Integration Language の略です。SMIL は現在、RealNetworks ( https://www.real.com ) の RealSystem G2 ストリーミング プラットフォームのおかげで、数千万台のコンピュータでサポートされています。RealPlayer G2 ファミリは SMIL を理解し、SMIL ベースのインタラクティブ プロジェクトは、G2 プレーヤー ウィンドウ内、または G2 ブラウザ プラグインを介して Web ページ内で直接再生できます。記事執筆時点では、Apple 社が 2000 年初頭にリリース予定の QuickTime 4.1 で SMIL がサポートされると発表しました。QuickTime が SMIL のどのような機能をサポートするかについては詳細が不明ですが、この言語が RealSystem G2 ストリーミング プラットフォームを超えて拡張されることは朗報です。

SMILのメディア統合アプローチは、Web開発者にとって大きなメリットをもたらします。インタラクティブなトレーニングコース、インターネットラジオジュークボックス、ナレーション付きスライドショーなど、SMILはこれらをはじめとする様々な用途に最適です。「SMILを使ったプレゼンテーション」では、シンプルなSMILプロジェクトを紹介し、RealSystem G2プラットフォームにおけるSMILの仕組みを解説します。

笑顔になれるメリット

SMIL に機能を与えるために、いくつかの要素が連携して機能します。

複数のメディア

Synchronized Multimedia Integration Language という名前 が示すように、SMIL プレゼンテーションは複数のメディア (RealSystem G2 の場合、オーディオ、ビデオ、静止画像、テキスト、および Macromedia Flash アニメーション) を組み合わせることができます。

SMILファイル自体にはこれらのメディアは含まれていないことに注意してください。HTMLファイルにグラフィックが含まれず、代わりにタグを使用して参照されるのと同様に、SMILファイルはRealSystemアプリケーションを使用して既に作成したコンテンツを参照するだけです。

インタラクティブ性

上記の要素にはいずれもハイパーリンクを含めることができます。例えば、静止画像をハイパーリンクにすると、ユーザーはそれをクリックしてWebページ、SMILプロジェクトの別の部分、あるいは別のSMILプロジェクトに移動できます。

帯域幅に優しい視覚効果

静止画の間には、様々なトランジション効果を追加できます。RealPlayer G2はこれらの効果を再生時にレンダリングするため、ダウンロード負荷は1バイトも増加しません。フェード、ディゾルブ、ワイプなどの視覚効果を加えることで、静止画に彩りを添えることができます。また、静止画を扱うため、これらのスライドショーは、ストリーミング動画にありがちな、ぎこちなくカクカクした表示にはなりません。

テキストベースの柔軟性

SMILはマークアップ言語であるため、メディアの統合はHTMLのようなシンプルなテキストタグを介して行われます。これにより、SMILは比較的簡単に習得できるだけでなく、非常に強力なアプリケーションへの扉を開きます。CGIスクリプトやその他のバックエンドソフトウェアを使用すれば、SMILファイルを即座に生成し、特定の状況に合わせてプレゼンテーションをカスタマイズできます。例えば、時間帯に応じて異なるコンテンツを再生したり、ユーザーの進捗状況に応じてオンライントレーニングコースの異なるセクションを再生したり、遠隔地のサーバーから取得したリアルタイムのニュースや天気データを表示したりすることも可能です。バイナリファイルに依存するマルチメディア技術では、このような柔軟性は実現できません。

SMILの書き方

SMILファイルは単なるテキストファイルなので、Mac OSのSimpleTextからBare BonesのBBEdit、Microsoft Wordまで、あらゆるテキストエディタを使って作成できます。「SMILを使ったプレゼンテーション」でご覧いただいたように、SMILはHTMLによく似ています。HTMLの知識があれば、SMILの学習にかなり有利なスタートを切ることができます。

今日のWebデザイナーは、タグを手入力するか、Adobe GoLiveやMacromedia Dreamweaver(今月号の「Webサイトを活性化」を参照)などのWYSIWYGエディタを使うかを選択できます。しかし、SMIL開発者にとってはそう幸運ではありません。Mac用のSMILレイアウトツールはまだ存在しないのです。MacromediaはDreamweaver用の無料のRealSystem G2レイアウト拡張機能( https://www.dreamweaver.com )を提供していますが、これは主にRealSystem G2コンテンツをWebページに挿入することに限られています。

Windowsでは画像が少しだけ明るくなります。利用可能なSMILオーサリングプログラムは数少なく、Macromedia Flashのような洗練されたツールには及ばず、扱いにくいものとなっています。RealNetworksは、無料のRealSlideshowと29ドルのRealSlideshow Plusという、素晴らしいながらも基本的なSMILツールを2つ提供しています。どちらも、画像をタイムラインウィンドウにドラッグして、RealAudioのサウンドトラックと同期させることができます。RealSlideshow PlusはRealTextテキストキャプションのサポートを追加し、豊富なデザインテンプレートが用意されているので、すぐに使い始めることができます。

RealNetworksはどちらのRealSlideshowプログラムもMac版のリリースを計画していませんが、ConnectixのVirtual PC 3.0(179ドル、https://www.connectix.com)を使えばMac上でどちらも実行できます。私の非公式テストでは、どちらも問題なく動作しました。限界に挑戦したいという強い思いから、Virtual PC上でRealServer G2も実行してみましたが、残念ながら期待はずれでした。サーバーを起動してローカル(つまり、同じくVirtual PC上で動作しているRealPlayer G2)からアクセスすることはできましたが、インターネット経由ではアクセスできませんでした。それでも、RealServer G2にローカルでアクセスできる機能は、SMILプレゼンテーションのテストには役立つかもしれません。

SMILの提供

ストリーミング メディアに詳しい方であれば、RealAudio または RealVideo ファイルを配信する方法が 2 通りあることをご存知でしょう。RealNetworks 独自のサーバー ソフトウェアを使用する方法と、Web ページを配信しているのと同じ HTTP サーバーを使用する方法です (「これを見て: Web サイトでビデオをストリーミング」、 Create 、1998 年 4 月号を参照)。HTTP ルートには、別のサーバー ソフトウェアを購入して実行する必要がないという利点があり、簡単な SMIL プレゼンテーションを HTTP で配信できます。ただし、結果はそれほど良くありません。たとえば、プレゼンテーションの再生開始前にバッファー処理に長い時間がかかったり、メディア要素の同期がずれたりすることがあります。また、高度な SMIL プロジェクトは、HTTP ではまったく機能しません。

より信頼性の高い結果を求めるなら、G2サーバーを試してみるのも良いでしょう。トラフィックの少ないサイトであれば、20ストリーム対応のベーシックサーバーを無料でダウンロードしてご利用ください。40ストリーム対応のサーバーには695ドル、あるいは高額な大容量サーバーには5桁の料金を支払うのも良いでしょう。賢い選択肢としては、G2ホスティングサービスを提供するサービスプロバイダーと契約することです。これらのプロバイダーのデータベースは、https://partners.real.com/powersearch.html でご覧いただけます。

参照:「高度なSMILing」

さらなる笑顔を

SMILの未来は明るい。今年はMac OSとWindowsの両方に対応したプロ仕様のオーサリングツールが登場するだろう。さらに、SMIL規格の新バージョン「SMIL Boston」(標準化会議がボストンで開催されたことにちなんで名付けられた)は、より優れたアニメーションとインタラクティブテレビへのある程度のサポートを約束している。

Webマルチメディアに他のストリーミング技術を使用している場合でも、SMILを検討する価値はあります。時間ベースのプレゼンテーションに対するタグ指向のアプローチは、将来のHTML、つまり時間を表現するHTMLの先駆けとなるでしょう。

1984 年以来 Macworld に寄稿している JIM HEID ( https://www.heidsite.com ) は、Web ストリーミングとマルチメディアのあらゆる側面について執筆および指導を行っています。

2000年2月 ページ: 112

SMILを使ったプレゼンテーション

SMILの主要な機能をいくつか紹介するシンプルなプロジェクトを作成しました。このプロジェクトは、WebからダウンロードしたRealPix画像として配信されたストック写真、ハイパーリンクを含むRealTextキャプション、そしてRealAudioサウンドトラックで構成されています。

レイアウト

SMIL ファイルのヘッダー部分には、 プロジェクトの全体的な再生サイズを定義し、RealPix 領域(A) と RealText 領域 (B) の名前と寸法を指定する <layout>セクションが含まれています。

		<レイアウト> <ルートレイアウト 幅="320" 高さ="290" /> <リージョン id="pix_region" 幅="320" 高さ="240" 左="0" 上="0" /> <リージョン id="text_region" 幅="320" 高さ="50" 左="0" 上="240" /> </レイアウト>		

RealTextキャプション

RealText での作業は、HTML でのテキスト操作とそれほど変わりません。例えば、こちらはスペースニードル画像のキャプションの PRE です。

		<br/><clear/> <time begin="42"><pos x="15" /> <pos y="18"/> <a href="http://www.seattlecenter.com/">スペースニードル</a>をお見逃しなく		

PREはまず、RealText領域から以前のキャプションをクリアします。次に、テキスト領域の左端から15ピクセル、上端から18ピクセルの位置に新しいキャプションを表示します。HTMLのような <a> タグでハイパーテキストリンクを作成します。

RealPixエフェクト

RealPixは、RealPlayer G2でレンダリングされた帯域幅に優しいエフェクトを実現します。この3つの画像に示されているクロスフェード効果を生成するPREはこちらです。

		<クロスフェード開始="41" 継続時間="1" ターゲット="8" />		

クロスフェードはプレゼンテーションの開始から41秒後に開始されます。ほとんどの時間指定SMILタグは、このように値を指定します。クロスフェードの持続時間は1秒です。RealPixプレゼンテーションの各画像には番号が割り当てられています。この場合、クロスフェードのターゲット(最初の画像がフェードアウトする画像)は8番です。

高度なSMILing

この記事では、SMIL の優れた機能のほんの一部を紹介したに過ぎません。ここでは、この言語のより高度な機能をいくつか紹介します。

パンとズーム

静止したRealPix画像に動きを加えるには、画像をパンしたりズームイン・ズームアウトしたりします。画像をRealPix領域よりも大きくし、タグを使ってパンまたはズームするだけです。

帯域幅と言語

SMILの <switch> タグを使えば、特定の言語や接続速度に合わせてプレゼンテーションを調整できます。例えば、スペイン語と英語のサウンドトラックを用意し、 <switch> タグを使って、ユーザーがRealPlayer G2の環境設定ウィンドウで行った設定に基づいて適切なサウンドトラックを再生することができます。同様に、 <switch>タグを使えば 、ユーザーの接続速度に応じて異なる種類のコンテンツを提供できます。例えば、モデムユーザーには静止画を、DSLユーザーには動画を再生するといった具合です。