マルチメディア管理機能によるアプリケーション
開発支援のための概念モデルキ
富 永 浩 之
I は じ め に 近年の計算機の進展を指すキーワードとしては rマルチメディア」という用 語が筆頭に挙げられるものの Iつである。完成品としてのマルチメディア・ソ フトウェアでは,パーソナル・コンピュータ上でも優れたシステムが実現され ており,ハードウェアの性能差を割りヲ│くと,ワークステーションはむしろ遅 れをとっている観がある。ネットワーク環境を研究手段として日常的に使用す る計算機科学者にとっては,最も身近な計算機である UNIXワークステーショ ン上で,マルチメディア機能を基本リテラシーとして活用できるようにするこ とが直面する課題である。また,マルチメディアという概念は,どこに重点、を 置いて「マルチ」と考えるかで,入出力装置やデータが複数,扱えるメディア の種類が複数,複合的なデータを扱う,データの編集や加工の方法が多様であ る,といった様々な意味合いに用いられている。こうした状況を反映してマル チメディアを多元的に捉え,さらに「マルチ」を複数のマルチメディア・シス テムの協調として広い解釈を試みるには,ネットワーク機能の利点を生かせる ワークステーションでの基盤整備が必要不可欠である。本論では,個々の具体 的なマルチメディア・システムではなく,ワークステーション上での様々なア プリケーションの開発および実行を支援するプラットフォームを構築する立場 から,マルチメディアの一般的な概念モデルを捉えていくことにする。 *本稿の作成にあたり,服部隆志氏から図版の協力を頂いた。この場を借りて御礼を申し上げ る。-142- 香川大学経済論議 142
II MUMINシステムと UIMSの概念モデル
L 実験環境としてのMUMINシステム
こうしたプラットフォーム・システムとしての具体的な取り組みの
1
つには, マ ル チ メ デ ィ ア UIMSの 実 現 を 目 的 と し て , 筆 者 ら が 開 発 に 加 わ っ たMUMINシステム(1)(4) (8)が挙げられる。 MUMINシステムは, UNIX
ワークステーション上で, • CDプレーヤやビデオ機器などのAV機器が簡単に扱えるようにすること • GUIの延長として,ユーザ・インタフェースをマルチメディア化すること .ネットワーク環境でマルチメディア資源が共有できること といった要求を実現するため,基本的なユーティリティの設計を試みる実験環 境として構築された。また,マルチメディアを活用したプレゼ、ンテーションや コースウェアを作成するオーサリング・ツーノレ群をその上で開発するためのア プリケーション・インタフェースを提供することも目標とした。ここで, MUMINシステムの基本的な構成図(図1)を掲げ,設計指針を簡単に述べる。 まず,メディアを制御する各種の装置(メディア・デバイス)はLAN上に接 続され,それぞれ独立したサーバ・プロセス(メディア・サーノて)によって
1
つのリソースとして管理される。各アプリケーション・プロセスはMUMINプ ロセスのクライアントとして,各種のサービスを受ける。最初の要請に対応し, 統一した操作環境を保つため,アプリケーション・プロセスとメディア・サー バとの通信は必ずMUMINプロセスを介して行うこととする。 2番目の要請 においては, UNIX上の標準的なウインドウ・システムであるXをベースとし た。本体となる MUMINプロセスは,各ユーザと 1対1に対応し,各Xウイン ドウのクライアントとして実現される。ユーザにとっては, MUMINプロセス がXウインドウの上位インタフェースとして機能し, Xウインドウ・サーパも *京都大学,龍谷大学,オムロン鮒,オムロンソフトウェア側,住友電気工業側,側PFU
,富 士ゼロックス側,京都高度技術研究所による共同研究プロジェクト(1990-1992)。
各種のメディア・サーバと同様に扱うことができる。
3
番目の要請においては, 共通データ形式に基づくマルチメディア・データペースを設定し,LAN
上でマ Jレチメディア・データおよびAV機器の検索や実行管理を行うマネージャを置 いた。 図1 MUMINシステムの構成図 これらのデータ, AV機器,マネージャは,間有の内部状態を有し,また時間 的な継続性を持っており,他と独立したモジュールとして扱うことが自然であ ることから, オブジェクト指向ノfラダイムに基づいて実現することにした。 し たがって, MUMIN本体の拡張記述言語としては, Schemeインタプリタのl つである Elkに,並列オブジェクト指向機能を追加したものを採用している。 本論で扱う概念モデルは, MUMINシステムの研究開発経験を踏まえ,さらに プラットフォームとしてのマルチメディア管理に要求される一般的な機能をも 考慮、したものである。 2.. UIMSとペリフェラノレ・モデル プラットフォーム・システムの機能を大まかに整理すると, ユーザインタ フェース管理システム(UIMS)およびマルチメディア管理システム(MMMS)-144ー 香川大学経済論叢 144 としての2つの側面にまとめられる(図2)0 UIMSは,特にGUI (graphical user-interface)の構築において,無から有を生じることの困難さを回避するた め,指針となるイメージ(look& feel)を,アプリケーション開発者およびユー ザ、に提供するものである。すなわち,標準的なUIを構成するのに必要となるボ タンやアイコンなどの部品,および部品を組み合わせていく各種のエディタな どの構築ツーノレを有機的に連動させるシステムである。また,例えば, G M W ( 5 )のようなウインドウ・システムで試みられているように,アプリケーショ ン実行中にUIを変更できたり,ある部品の修正を同種の部品を用いる他のUI へも自動的に波及させたり,といった動的なGUI構築を柔軟に行える機能も求 められる。
。
ふ
U
迂元ジ
乏云戸
User I
n
t
e
r
f
a
c
e
Management
System
M
u
l
t
i
m
e
d
i
a
Management
System
開発/実行支援システム
図2 プラットフォームの機能 一方, MMMSでは,時間軸が加わったことにより, GUIのように部品をパ ネル上に張り付ける平面的な構築方法だけでは足らず,同期関係を表し得る データ構造の設定が必要になる。また, GUIにおける静止画の「表示」から, 時間的な継続性を持った「再生」へと移行することにより,デバイスなど再生 時の実行環境も管理するユーティリティが必要になる。 UIMSとMMMSとの 相互関係を考えると, 2番目の要請として挙げたように, GUIの自然な拡張としてマルチメディア UIが導入されるような共通の枠組が設計にあたっての目 標とされる。 この点を踏まえ, MUMINのUIMS部分の設計においては,アプリケーショ ンのUI構成を表現するためのオブジェクト指向ノTラダイムに沿った概念モデ ルとして,ペリフェラル・モデルが抽出された(4
J
。このモデルでは 1つの アプリケーションを構成するオブジェクト群を機能の面から,本体モジュール をなすコア部(
f
u
n
c
t
i
o
n
a
lc
o
r
e
)
とUIモジュールと考えられる幾つかのペリ フェラル部(
p
e
r
i
p
h
e
r
a
l
)
に分割する。コア部とペリフェラル部の聞には,両者に またがるメッセージ通信を中継するエージェントを介在させる。エージェント を利用した間接アドレッシングにより,コア部とペリフェラル部は互いの変更 による影響を受けずに情報交換を行うことができる(図3。)peripheral
core
回
十-C~-ーいI-parts
日
示 よ
p
e
r
i
p
h
e
r
a
l
core
peripheral
図3 ペリフェラル・モデル UIMSは,このモデルを基に各種のユーティリティを整備する。特に,エー ジェントを軸に,コアまたはペリフェラJレを動的に取り替えたり1
つのコア に対して複数のペリフェラルを同時に利用したり,といった機能の提供が自然 に扱える。これにより,アプリケーション開発者は, UI依存部分を後回しにし-146 香川大学経済論叢 146 て,コア部の開発に集中することができる。ユーザにとっては,他のアプリケー ションが持つUIで代替させるなど,自由なカスタマイズを行うことができる。 また,
c
o
r
e
-
p
e
r
i
p
h
e
r
a
l
構造を階層化すれば,内部構造としてd
i
a
l
o
gc
o
n
t
o
l
l
e
r
をコアにした,インテリジェントなUIを1つのペリフェラルとみることがで きる。このように,動的に生成また変更されたGUIは,オブジェクト群の継続 性(
p
e
r
m
a
n
e
n
c
y
)
の手法における構造的ダンプおよび構造的リストアによっ て,データベースに保存したり,再利用することができる。1
I
I
MMMS
とマルチメディアの検討課題MMMS
は,プラットフォーム上で作動する各種のマルチメディア・システム を統合的に管理する部分である。マルチメディア・システムとしては,メディ ア・デバイスなどプリミティヴなリソースを提供するメディア・サーバから, ハイパーメディア・システムのような複雑なマルチメディア・データ構造を利 用するアプリケーションまで様々な形態が想定される。MMMS
の機能を検討 するにあたっては,考慮すべきマルチメディアの基礎概念を,オブジェクト指 向パラダイムに沿って捉え直していくこととする。なお,国際標準化機関の合 同委員会ISOjIECj JTC1jSC2jWG 12において,マルチメディア/ハイパーメ ディア符号化の国際標準として,1
9
8
9
年5
月から検討されているMHEG
(
M
u
l
t
i
m
e
d
i
a
and Hypermedia i
n
f
o
r
m
a
t
i
o
n
c
o
d
i
n
g
E
x
p
e
r
t
G
r
o
u
p
)
案 C9
)も 必要に応じて参考資料とした。 L 実体としてのメディアと情報としてのメディアMHEG
では,メディアという用語を, (図4
)の例のように, .表示メディア(
p
r
e
s
e
n
t
a
t
i
o
nm
e
d
i
a
)
入出力装置や記録再生装置 ・蓄積メディア(
s
t
o
r
a
g
em
e
d
i
a
)
データを蓄積する物理的手段 (CDやLDなどの交換媒体) .伝送メディア(
t
r
a
n
s
m
i
s
s
i
o
nm
e
d
i
a
)
データを伝送するための物理的手段(入出力ライン)-表現メディア
(
r
e
p
r
e
s
e
n
t
a
t
i
o
nm
e
d
i
a
)
交換媒体上にそれぞれの形式で記録されているデータ .知覚メディア(
p
e
r
c
e
p
t
i
o
nm
e
d
i
a
)
音声や画像など実際に知覚される情報(データの再現形態)表示:TV
蓄 積 :
VCR
表 現 :NTSC
知覚:動画像
図4 メディアのカテゴリ の5つのカテゴリで捉えている。 これらは,物理的な実体を指している表示メ ディア・蓄積メディア・伝送メディアの3っと,情報そのものを指している表 現メディア・知覚メデ、ィアの2
つに,分けることができる。前者を(広義の) デバイス・オブジェクト,後者を(広義の) データ・オブジェクトと考える。 デ、パイス・オブジェクトに対しては,p
l
a
y
やs
t
o
p
など,command
の実行によ る直接的な制御が行われる。したがって fいつ何を行う」といった時刻として の時間概念に基づき,o
p
e
r
a
t
i
o
n
a
l
なメソッドが適用される受動体と捉えるこ とができる。 これに対し, データ・オブジェクトでは,演奏時間などの自律的 な属性を有しており,再生中は,経過時間に相当する内部状態が更新されてい く。 したがって f",の聞は である」といったt
i
m
ei
n
t
e
r
v
a
l
としての時間概 念にもとづき,d
e
c
l
a
r
a
t
i
v
e
なメソッドが適用される能動体と捉えることができ る。このようなメディアの捉え方の違いに応じて,MMMS
の各機能を処理する サポートツー/レが柔軟なインタフェースを持っている必要がある。 2.. アナログメディアとデジタノレメディア メディアのカテゴリとして, アナログとデジタノレの相違も重要である。デジ148- 香川大学経済論叢 l48 タルメディアは,ウインドウやファイノレなどのオンライン化された機器(デ、パ イス)と,デジタノレ形式によるデータおよびその再現形態である。デジタルデー タの基本特徴は,ランダムアクセスを実現しやすいこと,および品質劣化を起 こさずに容易にコピーできることである。したがって,再現したいデータ(静 止画)の数だけ,オリジナlレ・データも,実体としての機器も自由に増やすこ とができ,実行時の制約を特に気にする必要がない。すなわち,オブジェクト クラスからのインスタンス生成が
r
e
s
o
u
r
c
ef
r
e
e
に行える。これに対し,アナロ グメディアでは,与えられた機器の数量の範囲内でしか再現できないことや, lつの機器クラスへの同時アクセスが必ずしも可能でないなど,r
e
s
o
u
r
c
e
c
o
n
-s
c
i
o
u
s
なインスタンスの取り扱いが必要である。したがって,MMMS
として は,マルチメディアを表すオブジェクト群が実行時に置かれた文脈に応じて, 適切な再現を行わせる機能が要求される。アプリケーション開発においては, メディア依存部分を本体から分離し,その部分だけをMMMS
の解釈に依頼し て,アプリケーション固有のサービスと,共通のマルチメディア管理とを両立 させるモデ、ルが望まれる(図5
)。これは,ペリフェラル・モデルにおけるUI
ペ リフェラJレのマルチメディア化に他ならない。 一方,アナログ・データについても,シーケンシャlレ・アクセスが主であり, 正確な位置指定が難しししかも反応時聞にずれが生じるなど,同期関係を厳 密に再現するには難点が多い。ただし,こうしたデータの問題点に関しては, 将来のハードウェアの高性能化とデジタノレ化に委ね,モデノレ上iでは特に考慮し なかった。 3伽 マルチメディア・データの同期記述 マルチメディア・システムを単独で考える場合には,音声や画像などのプリ ミティブなデータに関しては互換性が考慮されても,それらを時間的,空間的 に組み合わせた複合データについては,アプリケーションやオーサリング・シ ステムごとに専用のデータ構造を設計することが多い。しかし,ソフトウェア の部品化,再利用化を進めていくためには,アプリケーション聞で交換するデー タの共通な形式を定める必要がある。個々のメディアの特殊性によらず,ソフトア プ リ ケ ー シ ョ ン 国 . . メ デ ィ ア 依 存 部 分 図5 メディア依存部分とMMMS ウェア的に同期を記述する主な方法には,次の4種類が挙げられる。 (1)
t
i
m
e
l
i
n
e
共通の時間軸を定め,出力先に対応する各トラックに,個々のメディア・デー タを配置する方法である。t
o
pdown
的な同期記述であり,単独のシナリオ・マ ネージャが指定された時間に各メディアを直接制御する形態である。 また,全 体構造がシナリオ表として, そのまま視覚的な表現となっている。ただし,再 生時間が不定のデータやi
n
t
e
r
a
c
t
i
v
e
なマルチメディアの記述は行いにくい。 (2)message passmg
各メディア自身に同期を実現するスクリプトが記述され, メディア・データ 聞で個別に行われるメッセージ通信によって,同期再生を分散的に管理する方 式である。同期メッセージの到達可能な一連のオブジェクト群が1
つのマルチ メディア・データを構成することになる。表現力は高いが,bottom up
的な同 期記述であり,l
o
c
a
l
な同期関係しか与えられていないので,全体像が把握しに くい。また,部分的な修正による副作用の状況も解析が困難である。(
3
)
o
b
j
e
c
t
c
o
m
p
o
s
i
t
i
o
n
同期関係を表す複合オブジェクトを段階的に構成し,階層構造の上下聞での150- 香川大学経済論叢 150 みメッセージ通信を行う。プリミティヴなメディアに対応するオブジェクトを 末端とし,木構造を持ったオブジェクト群が
1
つのマルチメディア・データと して機能する。並列再生や順次再生など様々な同期関係を表すクラスを導入し, 同期のためのスクリプトはこのクラスのオブジェクトに記述する。部分木が1 つのモジューノレに相当し,t
o
p
down
型とbottomup
型のどちらによる構成も 可能である。(
4
)
t
i
m
e
c
o
n
s
t
r
a
i
n
t
時間概念を取り入れた制約論理パラダイムに基づき,同期関係を宣言的に記 述する方法である。特定の記述言語を定める必要があり,汎用のデータ交換形 式としては採用しにくい。むしろ,具体的なオーサリング・システムを想定し, エンド・ユーザにとって使いやすい記述方法として,別の観点から論じるべき である。ただし,プラットフォーム上のデータ構造は,こうした高水準な記述 もある程度翻訳できる中間言語的な表現力が必要である。.
Time l
i
n
e
-メッセージ
I 1 軒 掛d幼 相 好 成 や 糾 明 暗 沼 臨密密翠怒密室司-複合オブジェクト
図 B 同期記述のモデル 以上のうち,t
i
m
e
l
i
n
e
方式は,入出力デバイスの直接の制御による同期記述 に向いている。messagep
a
s
s
i
n
g
方式は,アプリケーション聞で相互参照を行うような複雑なデータ構造の記述において有効である。
o
b
j
e
c
tc
o
m
p
o
s
i
t
i
o
n
方 式は,同期関係の記述力と構成しやすさの両面で中間に位置し,MMMS
におけ る共通のデータ形式のベースとして, よりふさわしい。o
b
j
e
c
tc
o
m
p
o
s
i
t
i
o
n
方 式による具体的な同期記述の方法については,I
V
-2
節で述べる。I
V
MMMS
のアプリケーション・インタフェース 以上の考察を踏まえ,MMMS
のアプリケーション・インタフェースを設定す る際の基礎付けとして,マルチメディアの諸相を捉える概念モデル(マルチメ ディア・ペリフェラル・モデル) を提唱したい。このモデルでは,MMMS
の諸 機能を統合環境として整理し,必要に応じたサブセットを提供するという目的 に沿い, メディアを捉える抽象度に応じた階層として,d
e
v
i
c
e
,d
a
t
a
,s
y
s
t
e
m
の3
つのレベルを設ける。アプリケーションや対話的に実行環境をカスタマイ ズするユーザは,要求するメディアの抽象度に応じて適切なインタフェース・ レベルを用いることができる (図7)。 また, このモデノレは, ペリフェラノレ・モデルの延長上にあり, ペリフェラノレ としてのメディア依存部分の構造およびコア部との関係をマルチメディアの特 性に即して, より具体化したものになっている。 まず,各レベルでは, マルチ メディアの部品と考えられるプリミティヴなオブジェクトのクラス階層が用意 される。 さらに,複数のプリミティヴをまとめて扱うための構造概念(ストラ クチャと呼ぶ)が与えられる。ストラクチャを1つのアプリケーションとみる と,構造を規定する本体(コア部)に対し,構成要素であるプリミティヴ群が メディア依存の部分(ペリフェラル部)を表現することになる。また,上位レ ベルからみると, ストラクチャは, そのレベルでのプリミティヴに対するペリ フェラノレ部(ポート部と呼ぶ)に相当する。各レベルでのMMMS
機能は, ス トラクチャをクライアントとし, プリミティヴ部分に実行環境との照合その他 のサービスを提供する。 ld
e
v
i
c
e
l
e
v
e
l
d
e
v
i
c
e
l
e
v
e
l
は, アプリケーション・インタフェースの最下層に相当し, クラ152
'
da
ω
E
ヶ:
.
.
.
トー
-device
町一一争 香川大学経済論叢152-s
y
s
t
e
m
ー
E
巴
Graphical UI マルチメディア・ペリフェラルの階層 図7 イアントであるアプリケーションが operationalにアナログテデバイスを制御す るためのMMMS機能が提供される(図8)0MMMSは, らデバイスの数量や性能などの要求を,共通形式に基づいた制約条件として与 えられると, LAN内のデータベースから使用可能な機器を検索して,適切な割 アプリケーションとデ、パイスとの通信を仲介し,プロト デ、パイスの占有状況を管 アプリケーションか また, り当てを行う。 コルの差異を吸収する。アプリケーション起動中は, エラー時や例外 さら』こ, 理し,他のクライアントからの使用要求を排除する。 デバイスからのエラー情報や例外 処理(メディアの手動交換)が発生した際, メッセージを,アプリケーションには影響を与えずに適当なマネージャに送り, ペリフェラル・モデノレのエージェントと同様 に,動的なデバイスの変更に対応することができる。 ﹄ 司 また, デーモン的な処理を行う。a
p
p
l
i
c
a
t
i
o
n
MMMS
m
e
d
i
a
s
e
r
v
e
r
二
図 8d
e
v
i
c
e
l
e
v
e
l
プリミティヴとしての抽象デ、パイスは,排他制御の基本単位となる物理的なAV
機器の抽象化であり,入出力機器や記録再生機器およびセレクタなどが相 当する。p
l
a
y
やs
t
o
p
などの基本制御コマンドは,オブジェクト指向の基本概念 であるo
v
e
rl
o
a
d
i
n
g
により,メディアの種類に依存しない共通メソッドとして, 抽象クラスで定義される。CD
プレーヤやスピーカなど,実体としてのオブジェ クト・クラスは,メディアの種類の特定による下位クラス構成と,制御コマン ド群の包含関係を表す多重継承とで規定される。内部状態としては,機器固有 の時間進行を表す走行カウンタ変数が設定され,e
v
a
l
u
a
t
i
o
n
by n
e
e
d
で値が定 められる。 また,特定の機種にのみ存在する特殊なコマンドは,内部状態とし て用意されたパラメータ変数の変更と考える。 ストラクチャとしては, アプリケーションが複数のデバイスを同時に使用す る場合,要求単位ごとに生成されるグループ・マネージャおよび抽象デバイス 群からなるロック・グループを設ける。グループ・マネージャと抽象デバイス の参照関係はl
o
c
kID
を共有することで表され,アプリケーションによるデバ イスの占有状況がシミュレートされる。したがって,ペリフェラルであるメデイ ア・デバイス, エージェントとして機能する抽象テゃパイスに対し, アプリケー ション本体をコアとする構造と,グループ・マネージャをコアとする構造の2
つが生じる。前者は, デバイスの追加使用や解放などをMMMS
に依頼しなが ら,理想的な環境が実現された状態を表す,アプリケーション開発者の描く世-154ー 香川大学経済論叢 154 界(実行モデル)である。後者は,実際にどの機器を制御しなければならない かをアルゴリズムとして実現するための,ユーティリティ開発者の描く世界(実 行モデル)である。
2
“d
a
t
a
l
e
v
e
l
d
a
t
a
l
e
v
e
l
では,情報としてのメディアをインタフェースとし, GUIの場合 と同様に,同期関係を記述した複雑なマルチメディアの構成部品として各デー タを捉える。d
e
v
i
c
el
e
v
e
l
では,CD
プレーヤおよび装着されるCD
という交換 媒体が管理の対象であったが,d
a
t
a
l
e
v
e
l
では,CD
上に記録された個々の曲が 素データ・オブジェクトとみなされる。素データは,音声や映像といった知覚 メディアの種類を抽象クラスとし,蓄積メディアである交換媒体の種類に応じ て,CD
やPCM
などの下位クラスに分かれる。また,データの再現をr
e
a
l
-
t
i
m
e
なl
i
f
es
p
a
n
を持つオブジェクトの活性状態における時間進行として捉えr
走 行(
r
u
n
)
J
という用語に統一する。索データは,自身の標準的な走行時間(時間 サイズ)を基本属性として持つ。 このレベルでのストラクチャは,素データおよび同期データからなる階層構 造であり,マルチメディアの基本的なシナリオをo
b
j
e
c
tc
o
m
p
o
s
i
t
i
o
n
方式(同 期式)で表現している。アプリケーションへのインタフェースとしては,スト ラクチャをなすオブジェクト群ごとに1
つのペリフェラル(抽象データ)とし て扱われる。同期データは,下位データ聞の基本的な同期関係に対応し,順次 走行s
e
r
i
a
l
および並列走行p
a
r
a
r
e
l
l
の2
つの抽象クラスに類別される。また, データの終了間期のためのイベント通信も取り入れ,より細かい同期記述を行 う。特に,インタラクションによる簡単な条件分岐を表すことができる。m
e
s
-s
a
g
e
p
a
s
s
i
n
g
方式が無制限なg
o
t
o
文の使用と同様の弊害が生じるのに比べ, 終了同期はブロック構造からの局所脱出(
b
r
e
a
k
文)に相当し,全体の階層構造 は保持される。 ここで,d
a
t
a
l
e
v
e
l
での同期構造について述べる((8
J
を修正し,精密化を 行っている)。なお, Pは素データ, A, B, X, Yは抽象データ(素データも 含む), Tは時間(0壬T豆∞), E, F, Gはイベントとする。また,ゆで単なる時間進行のみを表すヌJレメディアを表す。 まず,
P:T
で,時間サイズT
の素データP
を表す。T
=0
のときは,X
はイベントそのも のと考える。T =
∞のときは,走行時聞が不定なデータと考える(テキストや 静止画など)。次に,X
{
E
,F
}
で, Xが走行中にイベントEまたはFを受け取ると, 自身の走行時聞を待たず に強制終了することを表す。E
やF
を終了指定イベントと呼ぶ。 また,X/G
で, Xが正規終了した場合にのみ, イベントGをオブジェクト群に発行するこ とを表す。 Gを終了通知イベントと呼ぶ。イベントの発行手順は,抽象データ の木構造におけるパスに沿って伝播される。すなわち まず,すぐ上のオブジェ クトに送られ, さらに上位データと下位データに再帰的に伝えられる。走行中 でないデータは, イベントを無視する。正規終了とは,イベントの受信による 強制終了によらず,索データでは自身の走行時聞が完了した場合を,同期デー タでは自身の同期関係が完了した場合をいう。同期データのうち,順次走行s
e
r
i
a
l
は,(
s
e
r
i
X Y
)
で表される。 この場合,下位データであるX
の走行がまず開始され, その終了 後にY
の走行を開始する。s
e
r
i
a
l
自身の走行時聞は,X
とY
の走行時間の和にな る。ただし,X
とY
の終了がイベントによるものかどうかは区別しない。また, 並列走行p
a
r
a
r
e
l
l
およびそのサブクラスである制限走行d
e
p
e
n
d
と限界走行m
u
t
u
a
l
は,(
p
a
r
a
X Y
)
(
d
e
p
e
n
d
X Y
)
(
m
u
t
u
a
l
X Y
)
で表される。p
a
r
a
r
e
l
l
では,X
とY
の両方を同時に走行開始とし,それぞれの終 了を待つ。やはり,X
とY
の終了がイベントによるものかどうかは区別しない。-156ー 香川大学経済論叢 156
p
a
r
a
r
e
l
l
自身の走行時聞は,X
とY
の走行時間の最大値となる。d
e
p
e
n
d
では,X
が終了したらY
も強制的に終了させる。d
e
p
e
n
d
自身の走行時間は,X
の走行 時間に等しい。m
u
t
u
a
l
では,X
とY
のどちらかが終了したら,他方も終了させ る。m
u
t
u
a
l
自身の走行時聞は, XとYの走行時間の最小値となる。下位クラス として,d
e
p
e
n
d
とm
u
t
u
a
l
を置く理由は,(
d
e
p
e
n
d
A
B)と(
p
a
r
a A/E
B{
E
}
)
(
m
u
t
u
a
l
A
B)と(
p
a
ra A
{F}/E
B{
E
}
/F) など, AやBの終了がイベントによるものかどうかで,実行されるシナリオが 異なる場合が生じるからである(右のようにp
a
r
a
r
e
l
l
を使うと,A
やBが正規 終了した場合のみ,d
e
p
e
n
d
やm
u
t
u
a
l
の同期が実現される)。これらの部品によ り,同期関係の記述が以下のような同期式で行える。 く例 1>
(
s
e
r
i
ボタンA :
3
0
{プッシュ} 音声 B) ボタンAをプッシュするか,または3
0
秒経過したら音声Bを走行開始 く例2>(
d
e
p
e
n
d
ボタンA :
3
0
{プッシュ}/E (seriφ{E}
音 声B)) ボタンA
を3
0
秒以内にプッシュした場合のみ音声B
を走行開始 く例3
>
(
p
a
r
a
(
s
e
r
i
d
a
t
a
1
{E} d
a
t
a
2
:
3
0
0
)
d
a
t
a
3
/
E
)
図9の同期関係を表す抽象データ /寸札口川M
E
⋮ ⋮
Cコ
(eady E認 acuve _ done return send evenl EM
E
⋮ 叫、
院
な
山
sond.event : E 図g 抽象データの同期構造 各データの内部状態としては,固有の時間進行を表すカウンタ(時間ポイン タ変数)と,その抽象化である走行状態変数とがある。走行状態変数は,走行 開始前r
e
a
d
y
,走行中a
c
t
i
v
e
,走行終了d
o
n
e
の3
種類の値をとる。抽象データこれをマル の進行状況は,走行状態変数の値をラベルとする木構造で表され, チメディア・シナリオのセクションと考えることができる。図
9
では左のセク ション1
の状態から,d
a
t
a
3
の終了によるイベントE
の発行で,右のセクショ ン2
に移行している。ある時点でのセクションの情報は,GUI
部品と同様に構 造的ダンプによって保存することができる。また,抽象的な実行過程はセクショ その時点におけるセクションの情報から以後のシナリオの ンの遷移で表され, マルチメディア・データの実行時意味論を容易 実行が再現できる。すなわち, に与えることができる。MMMS
の機能としては,まず,静的なマルチメディア・データの管理がある。 マルチメディア・エディタなどで作成された抽象データを構造的夕、ン プすることで,共有のデータベースに登録し,再利用を図るものである。また, これは,UI
ペリフェラノレとして,アナログデータもデジタノレデータと同様に扱う必要が ある。抽象データにおけるデノてイス依存部分は,素データに集約されており, 抽象データ自身は仮想的な同期実行を行える。抽象データの実行を具体化する 場合は,必要な複数の抽象デバイスをまとめて要求し,各素データと接続する。 動的なデータ管理においては,抽象データの階層構造およびセクションの情報 を基にする。例えば,例外処理として,制御エラーや割り込みなどが発生した 同期関係を一時的に保存しておいて,必要な処理を行い,途中から実行 セクションの遷移過程を解析し,各時点および将来必要と とき, また, を再開する。 なる抽象デバイスのスケジューリングを千子う。s
y
s
t
e
m
l
e
v
e
l
3.. マノレ コアとペリフェラノレの階層構造の積み重ねに相当し,s
y
s
t
e
m
l
e
v
e
l
は, アプリケーション 部品の共有化を図るためのインタフェースを与える。UI
におけるd
i
a
l
o
gc
o
n
-t
r
o
l
l
e
r
と同様に,ペリフェラルとしての抽象データの制御をコア部が行い, の全体を他のアプリケーション本体がペリフェラルとして活用することができ 巧p '- -チメディア・オーサリング・システムなどの開発において, る。また,抽象データの加工lや編集を行ったり,動的に入出力先を変更したり より精密なオブジェクト化を行っ するような複雑なメディア制御に対しても,158 香川大学経済論叢 158 てシミュレートする。 こ の レ ベ ル の プ リ ミ テ ィ ヴ で あ る 基 本 メ デ ィ ア シ ス テ ム は , そ れ 自 身 でcore 司peripheral構造を持ち, CDプ レ ー ヤ の よ う な1つ の ア プ リ ケ ー シ ョ ン と み る ことができる。コア部は,data levelで は 表 し 切 れ な い 抽 象 デ ー タ 聞 の 複 雑 な 同 期関係を表す。ペリフェラノレは,アプリケーションとしてのUIを表すものと, メディアを扱うポートに分けて捉える。 datalevelが 同 期 関 係 を 基 本 と し た ス トラクチャであるのに対し, system levelの ス ト ラ ク チ ャ は 相 対 的 な 空 間 配 置 を表す。前者の同期データに相当するオブジェクトとして,機器聞のメディア・ デ ー タ の 仮 想 的 な 流 れ に 対 応 す る 結 合 リ ン ク を 考 え る 。 抽 象 機 能 や デ ー タ 変 換 な ど も 結 合 リ ン ク の サ ブ ク ラ ス と し て 表 現 し , メ デ ィ ア 依 存 部 分 の モ ジ ュ ー ル 化 を さ ら に 図 る 。 こ の よ う なsystemlevelで の 抽 象 ク ラ ス の 構 成 と 仕 様 に つ い て は , 現 在 も 共 同 研 究 と し て 検 討 を 行 っ て い る 。 こ こ で は , そ の 基 本 ア イ デ ア を示すものとして, (8)に 述 べ た 例 を 挙 げ て お く (図は図 10を参照)。 例えば, LDプレーヤの扱うデータとしては, LDデータだけでなく,音声出力端子上の音 声データも含めて考える。ポートの役割に応じて,入力,出力,紫データを保持するストレイ ジの3つに区別すhる。ストレイジに格納された抽象データは,その抽象メディアに占有されて おり,他の抽象メディアから直接的に操作や参照を行うことができない。逆に,当の抽象メ ディアでは,内部状態の参照や更新だけでなく,抽象データの周期構造なども変更することが できる。入出カポートでは,ポート聞の参照が行われる。ある抽象メディアの入カポートが他 の抽象メディアの出カポートを参照している時,それは機器聞の入出力の結合を表している と考える。また, 1つの抽象メディア内での入カポートから出カポートへの参照は抽象データ の加工を表している。 このように,メディア機器の各操作の実行を,データ間に抽象操作を表す結合リンクを張る ことと捉える。拍象操作のリンクは,広い意味のデータ変換を表している。例えば,図で,CD プレーヤの演奏はCDから音声への変換とみることができる。また,プログラム演奏機能は, 単なるデータの実行だけでなく,同期データの作成という概念を含んでいる。抽象メディア は,こうした抽象データと抽象操作リンクの集合体をダイナミックに管理する。抽象操作は, 抽象メディアのコア内のオブジェクトであり,抽象操作は,素材となる幾つかの抽象データを 参照し,それらを加工・編集して結果としての抽象デ}タをポートに割り当てる。複合的な拍 象メディアにおいては,個々の操作ペリフェラルを lつにまとめ,またポートについては,複
数の抽象メディアに亘る拍象操作で連絡することになる。
CD p
l
a
y
e
r
abs-data UI-peripheral@亡コ
図10 メディアの例 V ま と め 本論では,オブジェクト指向に沿ったマルチメディアの表現形態を模索し,d
e
v
i
c
e
l
e
v
e
l
,d
a
t
a
l
e
v
e
l
,s
y
s
t
e
m
l
e
v
e
l
の3
つの階層からなる概念モデルへと たどり着いた。このモデルでは,各レベ/レごとに実行環境に依存する部分の分 離を図っており,マルチメディア管理機能の標準的なインタフェースを与える ことができる。また, UIMSのためのペリフェラル・モデルとの整合性により, このモデルに沿ったマルチメディア・アプリケーションの開発では,デバイス 制御,マルチメディア・データ記述,マルチメディアUI管理などを, GUI構築 手法の延長上において,統合的な枠組の中で表現することができる。さらに, アプリケーションの複合化についても,s
y
s
t
e
m
l
e
v
e
l
における表現に取り組ん でいる。 最後に,マルチメディア・モデノレと MUMINシステムとの関係について触れ る。モデルのうち,データ・レベルに相当する抽象データについてはMUMIN システムとしての実装を行った。また,抽象デバイスおよびマルチメディア管 理機能のための各種のツーノレについては,プロトタイプとして幾っか実装を試160ー 香川大学経済論叢 160 みている。ただし, MUMINシ ス テ ム 自 身 の 当 初 の 実 現 方 法 と 異 な る も の も あ る。実際,実験環境としてのMUMINシステム(特にアナログ機器の制御部分) は , ハ ー ド ウ ェ ア の 急 速 的 な 進 展 か ら 見 る と , 盛 期 を 過 ぎ た と 言 わ ざ る を え な い 。 し た が っ て , 研 究 の 方 向 と し て は , 概 念 モ デ ノ レ の 抽 出 に 重 点 を 置 く こ と と なった。その意味では(ベースにはするが), MUMINシステムにとらわれず, より広い観点から,概念モデノレの再検討と精密化を行っている。 な お , 共 同 研 究 と し て のMUMINシ ス テ ム の 技 術 的 詳 細 お よ び マ ル チ メ ディア・ペリフェラル・モデルの全体像(特に, system level) に つ い て は , 共 著 論 文 と し て 別 の 機 会 に 述 べ る 予 定 で あ る 。 参 考 文 献 (1) 新井,香川,菊地,久米,柴山,富永,服部,南出「マルチメディア・ワークステーショ ンの実現に向けてJI日本ソフトウヱア科学会第8回ソフトウェア研究会(関西)1SW 91-8-6, 1991 C 2) G D. Drapeau, H. Geenfield,“MAEstro-A Distributed Multimedia Authoring Environment" Proceedings of the 1991 Summer USENIX Conference, Nashville, Tennessee, June, 1991 ( 3 ) 藤川,梶本,有吉,下僚,西尾,宮原「マルチメディアプレゼンテーションシステム HarmonYJ W電子情報通信学会技術研究報告ヒューマンコミュニケーションIHC90-7 同14