マルチメディア統合環境基盤ソフトウェア

Multimedia Platform Project

Click here for English version.

概要

ビデオメールやビデオ会議等、分散環境において動画や音声等のメディアを自 在に扱うアプリケーションに対するニーズはますます高まっている。しかし、 このようなアプリケーションの実現は、専用システムを導入して行なうのが一 般的であり、既存のワークステーションやネットワーク環境との協調性が低い という欠点があった。

本テーマは、代表的なマルチメディア機器を対象として、それらのメディア 情報を統合化するアプリケーションソフトウェアの開発および実行環境(マル チメディア統合環境)を一般的なワークステーション上に実現することを目的 としている。開発にあたっては、

  1. コストパフォーマンスのよいハードウェアプラットフォーム上に 実現できること
  2. 十分なマルチメディア機能を高い性能で提供できること
  3. アプリケーションソフトウェアを容易に開発できること
を目標とした。

ワークステーション上のマルチメディアシステムとして商品化されている 製品は多数あるが、それらはいずれも部分的な機能を提供するもので あり、このプロジェクトが狙っている分散マルチメディア環境を垂直統合 によって実現するようなシステムとしては初めてのものである。

ソフトウェアアーキテクチャ
分散実時間マイクロカーネル
実時間ネットワークプロトコル
統合メディアサーバ
ツールキット
分散メディアベースサーバ
問い合わせ先

ソフトウェアアーキテクチャ

ソフトウェアアーキテクチャは、マイクロカーネル、ミドルウェア、ツー ルキットから構成される。マイクロカーネル RMK95は、米国カーネギーメロン大学で研究開発されたマイクロカーネル Mach3.0に連続メディア処理のための拡張および改良を加えたものであ る。ハードウェアプラットフォームとしては、i386/486およびPentiumを搭載 したPC/AT互換機を主とするが、その他にもR3000/4000やSPARCを搭載した一部 のハードウェアも利用可能である。ネットワークとしては、通常のEthernet だけでなく、帯域予約の可能な高速なFDDIを利用可能である。また、ATMにつ いても、将来的にサポートできるよう配慮してある。

マイクロカーネルRMK95上には複数のOSパーソナリティモジュールが存在する。 従来までのUNIXライセンスに拘束されるUXサーバと、拘束されないフ リーな4.4BSD-Liteサーバ(4.4BSD-Lites)とがあり、使い分けが可能で ある。また、マルチメディアのプロトコル をサポートするためのモジュールもマイクロカーネルから分離して存在し、 QOS制御が可能なST-IIプロトコルのモジュールや、QOSを考慮したマル チキャストプロトコルであるMPC(Multicast Protocol for Continuous Media)のモジュールなどがある。

ミドルウェアの統合メディアサーバは、分散マル チメディアアプリケーションの構築を容易にするため、コンダクタ・パフォー マモデルに基づき、マイクロカーネル上の複数のサーバとして実装されている。 コンダクタは連続メディアデータの全体の流れの制御を行ない、パフォーマは それぞれの種類のメディアの処理を行なう。アプリケーションはコンダクタと 通信するだけでよく、また、新しいメディアに対応するためには、そのための パフォーマを用意するだけでよい。

さらにアプリケーションの構築を容易にするために、 Tcl/Tkに基づいたツールキットを用意しており、GUIを持った分散マルチ メディアアプリケーションを容易に構築することができる。


分散実時間マイクロカーネル

分散実時間マイクロカーネルRMK95は、米国カーネギーメロン大学で研究開発 されたMach 3.0マイクロカーネルを基に、連続メディア処理のための拡張およ び改良を加えたものである。

マルチメディアに特徴的な時間的制約を持つ連続メディアデータを取 り扱うためには、従来のUNIXが持つタイムシェアリングのプロセススケジュー リングでは不十分であり、実時間スケジューリングの機能が必要であ る。ただし、従来までのハードな実時間ではなく、連続メディアのた めにはソフトな実時間制御が必要である。すなわち、サービスの質 (Quarity of Service, QOS)を考慮し、許容範囲内においてプロセスまた はスレッドのスケジューリングを動的に制御する必要がある。RMK95では、 周期スレッドデッドラインミスを監視することによりこの機能を実 現している。

マイクロカーネルRMK95の主な特徴は、次の通りである。
連続メディアのための資源管理:
QOSチケットの概念を導入し、資源の予約、資源利用の適応、 複数セッション間の資源の割当の調整が可能である。
実時間スレッドパッケージ:
ユーザレベルにおける実時間スレッドパッケージであり、 これまで以上に軽量かつ正確なスケジューリングが可能である。
各種デバイスドライバ:
分散マルチメディアに必要な、画像取り込みドライバ、 高速ネットワークFDDIドライバなどを追加されている。
パブリックドメイン化:
UNIXライセンスに拘束されたUXサーバに替り、 4.4BSD Liteに基づいた4.4BSD Liteサーバをサポートする。 また、FreeBSDとの互換性を持ち、同一ファイルシステムを使用可能であり、 バイナリファイルの互換性を持つ。
新しいプラットフォーム:
i386/486およびPentiumを搭載したPC/AT互換機だけでなく、 R3000/4000およびSPARCをCPUとして搭載した一部のハードウェアもサポートす る。

実時間ネットワークプロトコル

分散マルチメディアデータを取り扱うためには、帯域予約およびQOS制御可能 な高速な実時間ネットワークプロトコルが不可欠である。ここでは、マイクロ カーネルRMK95上に高速プロトコルアーキテクチャを開発し、Ethernetまたは FDDI上でST-IIを用いた通信が可能である。また、分散マルチメディアでは、 複数のホストに同一データを転送する必要があることが多く、このための連続 メディア用マルチキャスト通信プロトコルMPC(Multimedia Protocol for Continuous Media)を開発した。これにより、ATM, FDDI, Ethernet, ISDN, Wirelessなどの混成的ネットワーク形態において動的かつ相対的なQOS制御を 提供することが可能となった。

統合メディアサーバ

統合メディアサーバはコンダクタ・パフォーマモデルに基づき、複数のサーバ としてマイクロカーネルRMK95上に実現されている。パフォーマは種々のメディ アに対して1ホスト上に複数存在するのに対し、コンダクタは基本的に1ホスト に1つ存在するだけである。コンダクタは自分のホストおよびリモートのホス ト上のパフォーマを制御し、アプリケーションの要求するマルチメディア処理を 行なう。したがって、個々のアプリケーションは直接パフォーマとは通信する 必要はない。また、リモートホストのパフォーマの制御は、 ローカルなコンダクタが リモートホストのコンダクタと通信することにより行なう。

統合メディアサーバの特徴は以下の通りである。

分散マルチメディアアプリケーションの構築を簡略化:
アプリケーションはそのホストのコンダクタと通信し、メディアストリー ムを作るだけで良く、実際の連続メディアデータのやり取りについては統合メディ アサーバがすべて行なってくれる。
新しいメディアへの対応が容易:
パフォーマを追加するだけで、新しいハードウェアやメディアに対応すること ができる。
ハードウェアの相違の吸収:
パフォーマおよびコンダクタがハードウェアの相違を吸収するため、 アプリケーションはハードウェアの相違を気にする必要がない。
同期/非同期ストリーム:
連続メディアデータは時間制約を持つため、時間に同期する必要があるが、 メディアストリームのすべての点において同期を取ると処理がスムースに行な われない。そのため同期/非同期を両用することにより、スムースでしかも同 期の取れた処理を行なうことができる。
パフォーマとしては、音声を取り扱うサウンドパフォーマ、 画像取り込みを行なうキャプチャパフォーマ、 JPEG伸長を行なうJPEGパフォーマ、 ファイルを取り扱うファイルパフォーマ、 Xウインドウシステムに出力するためのXパフォーマなどがある。 特に、Xパフォーマでは、従来のXサーバの横に動画像用の特別なサーバを置き、 Xサーバと協調させることにより効率の良い動画像出力が可能になっている。

ツールキット

GUIのすぐれた分散マルチメディアアプリケーションの開発を容易にするため、 Tcl/TkライブラリおよびインターフェイスビルダXFを拡張した。
拡張した機能は、Tcl/Tk標準コマンド/Widgetと同様にTclスクリプト中で利用 でき、コンダクタとの通信により、動画の実時間再生、QOSの制御を行なうこ とができる。MPEG Widget, Video Widget, Video Captureコマンド等を提供し ている。

分散メディアベースサーバ

分散メディアベースサーバは、分散したマルチメディアデータの格納および提 供するものであり、連続メディアストレージサーバ分散ネームサー ビスセキュリティサーバから構成されている。

連続メディアストレージサーバは、実際にマルチメディアデータを格納および 提供するサーバであり、統合メディアサーバのコンダクタによって制御される ファイルパフォーマとして実現されている。

分散ネームサービスおよびセキュリティサーバは、アプリケーションがマルチ メディアのデータ検索や、サービスの提供を受けるときのオーセンティケーショ ンなどを行なう。


問い合わせ先

慶應義塾大学MMPプロジェクト

Contact: mmp@sfc.keio.ac.jp