以下、図面を参照して、本発明の実施の形態について説明する。
図1は、本発明を適用した情報処理システムの構成例を示している。
図1の例の情報処理システムは、データ送信装置1、およびデータ受信装置2から構成されている。ここで、データ送信装置1とデータ受信装置2は、データバス41及び制御信号線42によって接続されている。
データ送信装置1は、データ源11又はデータ源12から出力されたデータを入力し、そのデータに対して適宜処理を施して、データ受信装置2に出力する。
データ受信装置2は、データ送信装置1から送信されたデータを受信する。データ受信装置2は、受信したデータに対して適宜処理を施して、データ出力先13又はデータ出力先14に出力する。
なお、ここでは説明の簡略上、データ源11から出力されたデータが、データ送信装置1とデータ受信装置2とを伝送して、データ出力先13に出力されることとする。また、データ源12から出力されたデータが、データ送信装置1とデータ受信装置2とを伝送して、データ出力先14に出力されることとする。勿論、データの入出力関係は逆でも構わない。
ここで、データ源11又はデータ源12から出力されるデータとは、データ送信装置1からデータ受信装置2への伝送対象の目的となるデータであり、例えば本実施の形態では、映像や音声等のデータとされる。そこで、以下、かかるデータを、他のデータと区別すべく、実データと称する。
また、実データに関連するデータを総称して、以下、メタデータと称する。本実施の形態では、メタデータは、データ送信装置1によって生成される。そして、データ送信装置1によって、そのメタデータは実データに重畳された上でデータ受信装置2に送信される。なお、以下、このようにして、メタデータが重畳された実データを、メタデータ重畳実データと称する。
データ送信装置1は、制御部21、メタデータ生成部22、メタデータ/実データ重畳部23により構成されている。
制御部21は、データ送信装置1全体の動作を制御する。例えば、制御部21は、データ源11またはデータ源12からの実データをデータ受信装置に2に送信するタイミングを制御する。また、制御部21は、実データの送信を停止しているタイミングで、各種メタデータをデータ受信装置2に送信する制御を行う。
メタデータ生成部22は、制御部21からの制御に基づいて、各種メタデータを生成し、メタデータ/実データ重畳部23へ出力する。
ここで、例えば本実施の形態のメタデータは、図2に示される構造のメタデータが採用されているとする。即ち、本実施の形態のメタデータは、メタデータ種別と付帯情報とがその順番で配置されて構成されている。メタデータ種別には、メタデータの種類を特定する情報が格納される。付帯情報には、メタデータの種類に応じた様々な情報が格納される。なお、メタデータの各種具体例については後述する。
メタデータ/実データ重畳部23は、制御部21の制御に基づいて、データ源11またはデータ源12から実データを入力し、データバス41を介してデータ受信装置2に送信する。また、メタデータ/実データ重畳部23は、実データの送信を停止しているタイミングで、メタデータ生成部22からメタデータを入力し、データバス41を介してデータ受信装置2に送信する。換言すると、メタデータ/実データ重畳部23は、メタデータ重畳実データを生成し、データバス41を介してデータ受信装置2に送信する。
また、メタデータ/実データ重畳部23は、実データやメタデータの送信タイミングを示す制御信号を生成し、制御信号線42を介してデータ受信装置2に送信する。制御信号の形態は特に限定されない。例えば本実施の形態では、制御信号は、メタデータフラグとして構成されている。ここで、メタデータフラグとは、メタデータ重畳実データの送信期間のうち、メタデータが送信される期間では、ハイレベルとなっており、メタデータが送信されていない期間では、ローレベルとなっている信号をいう。即ち、メタデータが送信状態である場合、メタデータフラグは立っている。これに対して、メタデータが未送信状態である場合、メタデータフラグは降りている。
このようなデータ送信装置1に対して、データ受信装置2は、メタデータ/実データ分離部31、メタデータ解釈部32、データ振り分け部33により構成されている。
メタデータ/実データ分離部31には、メタデータ重畳実データが、データ送信装置1からデータバス41を介して入力される。また、メタデータ/実データ分離部31には、制御信号、即ち、メタデータフラグが、データ送信装置1から制御線42を介して入力される。
そこで、メタデータ/実データ分離部31は、メタデータフラグに基づいて、メタデータ重畳実データからメタデータと実データとをそれぞれ分離する。分離後のメタデータは、メタデータ/実データ分離部31からメタデータ解釈部32に出力される。また、分離後の実データは、メタデータ/実データ分離部31からデータ振り分け部33に出力される。
具体的には例えば、メタデータ/実データ分離部31は、メタデータ重畳実データのうち、メタデータフラグがハイレベルのタイミングで入力されてくる部分を、メタデータとして認識する。そこで、メタデータ/実データ分離部31は、当該部分をメタデータとして分離し、メタデータ解釈部32に出力する。
一方、メタデータ/実データ分離部31は、メタデータ重畳実データのうち、メタデータフラグがローレベルのタイミングで入力されてくる部分を、実データとして認識する。そこで、メタデータ/実データ分離部31は、当該部分を実データとして分離し、データ振り分け部33に出力する。
メタデータ解釈部32は、メタデータが入力されると、そのうちの「メタデータ種別(図2参照)」の内容を解釈し、そのメタデータの種類を認定する。また、メタデータ解釈部32は、そのメタデータのうちの「付帯情報」の内容を解釈する。そして、メタデータ解釈部32は、その解釈結果を、データ振り分け部33に通知する。また、メタデータ解釈部32の解釈結果や、その解釈結果に基づく情報は、データ出力先13やデータ出力先14にも適宜通知される。ここで、解釈結果に基づく情報としては、例えば、データ開始(後述する図6のステップS23参照)や、データ終了(後述する図6のステップS28参照)が該当する。
データ振り分け部33は、実データを、データ出力先13又はデータ出力先14に振り分けて出力する。この場合の実データの出力先の振り分けは、メタデータ解釈部32の解釈結果に基づいて行われる。ただし、具体的な振り分け手法については、図6のフローチャートを参照して後述する。
以下、図3以降の図面を参照して、図1の情報処理システムが実行する処理の各種具体例について説明する。
なお、以下、データ送信装置1が実行する処理を、データ送信処理と称する。一方、データ受信装置2が実行する処理を、データ受信処理と称する。
図3は、データ送信処理の一例を説明するフローチャートである。図3の例とは、データ源11が有効で、データ源12が無効であり、データ送信装置1からデータ受信装置2に可変長データを送信する場合であって、データ長が既知でない場合のデータ送信処理の一例である。
ステップS1において、データ送信装置1の制御部21は、データ源11に実データがあるか否かを判定する。
データ源11に実データがない場合、ステップS1においてNOであると判定され、処理はステップS1に戻され、それ以降の処理が繰り返される。即ち、データ源11に実データが存在する状態となるまで、ステップS1の判定処理が繰り返され、データ送信処理は待機状態となる。
これに対して、データ源11に実データがある場合、ステップS1においてYESであると判定され、処理はステップS2に進む。
ステップS2において、メタデータ生成部22は、制御部21の制御に基づいて、開始メタデータを生成し、メタデータ/実データ重畳部23に出力する。即ち、ステップS1の処理でデータ源11にデータがあると判定した場合、制御部21は、データ源11用の開始メタデータの生成をメタデータ生成部22に対して指示する。そこで、メタデータ生成部22は、開始メタデータを生成し、メタデータ/実データ重畳部23に出力する。
ここで、開始メタデータとは、実データの開始を示すメタデータの1種である。この開始メタデータの構造としては、例えば本実施の形態では図4に示される構造が採用されているとする。即ち、開始メタデータは、メタデータ種別と、付帯情報としてのデータ源情報とから構成されている。メタデータ種別には、開始メタデータを示す情報が格納される。データ源情報には、実データを出力したデータ源情報が格納される。即ち、図3の例では、その前提事項から、データ源11を示す情報がデータ源情報に格納されることになる。
ステップS3において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、開始メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、開始メタデータの出力の指示と、メタデータフラグの出力レベルをハイレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、開始メタデータをデータバス41を介してデータ受信装置2に出力するとともに、ハイレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
ステップS4において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、実データと、ローレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、実データの出力の指示と、メタデータフラグの出力レベルをローレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、実データをデータバス41を介してデータ受信装置2に出力するとともに、ローレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
ステップS5において、制御部21は、実データが終了したか否かを判定する。
データ源11から実データが出力されている限り、ステップS5においてNOであると判定されて、処理はステップS4に戻され、それ以降の処理が繰り返される。即ち、データ源11から実データが出力されている限り、ステップS4,S5のループ処理が繰り返される。この間、データバス41からは、実データが出力され続けるとともに、制御信号線42からは、ローレベル状態のメタデータフラグが出力され続ける。
データ源11からの実データが終了すると、即ち、データ源11からの出力が停止すると、ステップS5においてYESであると判定されて、処理はステップS6に進む。
ステップS6において、メタデータ生成部22は、制御部21の制御に基づいて、終了メタデータを生成し、メタデータ/実データ重畳部23に出力する。即ち、ステップS5の処理で実データが終了したと判定した場合、制御部21は、データ源11用の終了メタデータの生成をメタデータ生成部22に対して指示する。そこで、メタデータ生成部22は、終了メタデータを生成し、メタデータ/実データ重畳部23に出力する。
ここで、終了メタデータとは、実データの終了を示すメタデータの1種である。この終了メタデータの構造としては、例えば本実施の形態では図4に示される構造が採用されている。即ち、終了メタデータは、メタデータ種別と、付帯情報としてのデータ源情報とから構成されている。メタデータ種別には、終了メタデータを示す情報が格納される。データ源情報には、実データを出力したデータ源情報が格納される。即ち、図3の例では、その前提事項から、データ源11を示す情報がデータ源情報に格納されることになる。
ステップS7において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、終了メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、終了メタデータの出力の指示と、メタデータフラグの出力レベルをハイレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、終了メタデータをデータバス41を介してデータ受信装置2に出力するとともに、ハイレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
これにより、図3の例のデータ送信処理は終了となる。
このようにして、図3の例のデータ送信処理が実行されると、その結果として、例えば、制御信号線42には、図5のAに示される波形のメタデータフラグが伝送されていくことになる。一方、データバス41には、図5のBに示される配置構成のメタデータ重畳実データが伝送されていくことになる。
なお、図5において、無効とは、データが存在しないか、無効データであることを示している。また、図5の左から右に向かう水平方向が、時間方向を示している。
次に、図6のフローチャートを参照して、図3のデータ送信処理に対するデータ受信処理の一例について説明する。即ち、図6の例とは、データ源11が有効で、データ源12が無効であり、データ送信装置1からデータ受信装置2に可変長データを送信する場合であって、データ長が既知でない場合のデータ受信処理の一例である。
ステップS21において、メタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。即ち、メタデータ/実データ分離部31は、データ受信処理が開始すると、制御信号線42を伝送してくるメタデータフラグの信号レベルを監視し始める。
メタデータフラグの信号レベルがローレベルの状態では、メタデータがまだ来ていないとして、ステップS21においてNOであると判定され、処理はステップS21に戻され、それ以降の処理が繰り返される。
その後、メタデータフラグの信号レベルがローレベルからハイレベルに切り替わると、メタデータが来たとして、ステップS21においてYESであると判定され、処理はステップS22に進む。
ステップS22において、メタデータ解釈部32は、メタデータのメタデータ種別(図4参照)の内容を解釈し、その解釈結果が開始メタデータであるか否かを判定する。
開始メタデータ以外の解釈結果の場合、ステップS21の処理が誤判定であるとして、ステップS22においてNOであると判定され、処理はステップS21に戻され、それ以降の処理が繰り返される。なお、開始メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果が開始メタデータの場合、ステップS22においてYESであると判定され、処理はステップS23に進む。
ステップS23において、データ振り分け部33は、出力先にデータ開始を通知する。
即ち、メタデータ解釈部32は、メタデータ種別の解釈結果が開始メタデータの場合、メタデータのデータ源情報(図4参照)の内容を解釈する。これにより、開始メタデータに続いて送信されてくるであろう実データのデータ源が特定される。
具体的には例えば、図6の例のデータ受信処理は、図3の例のデータ送信処理に対応する受信側の処理である。よって、図6の例では、データ源情報にはデータ源11を示す情報が格納されているはずである。従って、図6の例では、実データのデータ源は、データ源11であることが特定される。さらに、本実施の形態では、データ源11に対する出力先はデータ出力先13であることが前提とされている。よって、実データの出力先は、データ先13であることが特定される。そこで、メタデータ解釈部32は、実データの出力先がデータ出力先13であることを、データ振り分け部33に通知する。また、メタデータ解釈部32は、データ出力先13にデータ開始を通知する。
ステップS24において、メタデータ/実データ分離部31は、データ送信装置1から実データを入力する。
即ち、図5のA,Bからもわかるように、メタデータフラグの出力レベルがハイレベルからローレベルに変化したタイミング以降、実データがデータ受信装置2に到達するようになる。そこで、メタデータ/実データ分離部31は、データ送信装置1から実データを入力し、データ振り分け部33に出力する。
ステップS25において、データ振り分け部33は、実データをデータ出力先13に出力する。
ステップS26において、メタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。
メタデータフラグの信号レベルがローレベルの状態では、メタデータがまだ来ていないとして、ステップS26においてNOであると判定され、処理はステップS24に戻され、それ以降の処理が繰り返される。即ち、図5のA,Bからもわかるように、メタデータフラグの出力レベルがローレベルの状態を維持していることは、実データがデータ受信装置2に到達し続けていることを意味する。よって、ステップS24乃至S26のループ処理が繰り返されて、実データ(ストリーミングデータ)が、データ受信装置2に受信されてデータ出力先13に出力されるのである。
その後、メタデータフラグの信号レベルがハイレベルからローレベルに切り替わると、メタデータが来たとして、ステップS26においてYESであると判定され、処理はステップS27に進む。
ステップS27において、メタデータ解釈部32は、メタデータのメタデータ種別(図4参照)の内容を解釈し、その解釈結果が終了メタデータであるか否かを判定する。
終了メタデータ以外の解釈結果の場合、ステップS26の処理が誤判定であるとして、ステップS27においてNOであると判定され、処理はステップS24に戻され、それ以降の処理が繰り返される。なお、終了メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果が終了メタデータの場合、ステップS27においてYESであると判定され、処理はステップS28に進む。
ステップS28において、データ振り分け部33は、出力先にデータ終了を通知する。
これにより、図6の例のデータ受信処理は終了となる。
次に、データ源11が有効で、データ源12が無効であり、データ送信装置1からデータ受信装置2に可変長データを送信する場合であって、データ長が既知である場合のデータ送信処理とデータ受信処理との一例について説明する。
以上、図3の例のデータ送信処理と、図6の例のデータ受信処理とについて説明した。
図7は、このような場合におけるデータ送信処理の一例を説明するフローチャートである。
ステップS41において、データ送信装置1の制御部21は、データ源11に実データがあるか否かを判定する。
データ源11に実データがない場合、ステップS41においてNOであると判定され、処理はステップS41に戻され、それ以降の処理が繰り返される。即ち、データ源11に実データが存在する状態となるまで、ステップS41の判定処理が繰り返され、データ送信処理は待機状態となる。
これに対して、データ源11に実データがある場合、ステップS41においてYESであると判定され、処理はステップS42に進む。
ステップS42において、メタデータ生成部22は、制御部21の制御に基づいて、開始メタデータを生成し、メタデータ/実データ重畳部23に出力する。即ち、ステップS41の処理でデータ源11にデータがあると判定した場合、制御部21は、データ源11用の開始メタデータの生成をメタデータ生成部22に対して指示する。そこで、メタデータ生成部22は、開始メタデータを生成し、メタデータ/実データ重畳部23に出力する。
ステップS43において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、開始メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、開始メタデータの出力の指示と、メタデータフラグの出力レベルをハイレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、開始メタデータをデータバス41を介してデータ受信装置2に出力するとともに、ハイレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
ステップS44において、メタデータ生成部22は、制御部21の制御に基づいて、データ長メタデータを生成し、メタデータ/実データ重畳部23に出力する。即ち、データ源11は制御部21にデータ長を通知し、データ長を通知された制御部21は、データ長メタデータの生成を、メタデータ生成部22に対して指示する。そこで、メタデータ生成部22は、データ長メタデータを生成し、メタデータ/実データ重畳部23に出力する。
ここで、データ長メタデータとは、実データのデータ長を示すメタデータの1種である。このデータ長メタデータの構造としては、例えば本実施の形態では図8に示される構造が採用されているとする。即ち、データ長メタデータは、メタデータ種別と、付帯情報としてのデータ長情報とから構成されている。メタデータ種別には、データ長メタデータを示す情報が格納される。データ源情報には、実データのデータ長情報が格納される。即ち、図7の例では、その前提事項から、データ源11から送信されるデータのデータ長を示す情報がデータ長情報に格納されることになる。
ステップS45において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、データ長メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、データ長メタデータの出力の指示と、メタデータフラグの出力レベルをハイレベルのまま維持する指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、データ長メタデータをデータバス41を介してデータ受信装置2に出力するとともに、ハイレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に引き続き出力する。
ステップS46において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、実データと、ローレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、実データの出力の指示と、メタデータフラグの出力レベルをローレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、実データをデータバス41を介してデータ受信装置2に出力するとともに、ローレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
ステップS47において、制御部21は、実データが終了したか否かを判定する。
データ源11から実データが出力されている限り、ステップS47においてNOであると判定されて、処理はステップS46に戻され、それ以降の処理が繰り返される。即ち、データ源11から実データが出力されている限り、ステップS46,S47のループ処理が繰り返される。この間、データバス41からは、実データが出力され続けるとともに、制御信号線42からは、ローレベル状態のメタデータフラグが出力され続ける。
データ源11からの実データが終了すると、即ち、データ源11からの出力が停止すると、ステップS47においてYESであると判定されて、処理はステップS48に進む。
ステップS48において、メタデータ生成部22は、制御部21の制御に基づいて、終了メタデータを生成し、メタデータ/実データ重畳部23に出力する。即ち、ステップS47の処理で実データが終了したと判定した場合、制御部21は、データ源11用の終了メタデータの生成をメタデータ生成部22に対して指示する。そこで、メタデータ生成部22は、終了メタデータを生成し、メタデータ/実データ重畳部23に出力する。
ステップS49において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、終了メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、終了メタデータの出力の指示と、メタデータフラグの出力レベルをハイレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、終了メタデータをデータバス41を介してデータ受信装置2に出力するとともに、ハイレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
これにより、図7の例のデータ送信処理は終了となる。
このようにして、図7の例のデータ送信処理が実行されると、その結果として、例えば、制御信号線42には、図9のAに示される波形のメタデータフラグが伝送されていくことになる。一方、データバス41には、図9のBに示される配置構成のメタデータ重畳実データが伝送されていくことになる。
次に、図10のフローチャートを参照して、図7のデータ送信処理に対するデータ受信処理の一例について説明する。即ち、図10の例とは、データ源11が有効で、データ源12が無効であり、データ送信装置1からデータ受信装置2に可変長データを送信する場合であって、データ長が既知である場合のデータ受信処理の一例である。
ステップS61において、メタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。即ち、メタデータ/実データ分離部31は、データ受信処理が開始すると、制御信号線42を伝送してくるメタデータフラグの信号レベルを監視し始める。
メタデータフラグの信号レベルがローレベルの状態では、メタデータがまだ来ていないとして、ステップS61においてNOであると判定され、処理はステップS61に戻され、それ以降の処理が繰り返される。
その後、メタデータフラグの信号レベルがローレベルからハイレベルに切り替わると、メタデータが来たとして、ステップS61においてYESであると判定され、処理はステップS62に進む。
ステップS62において、メタデータ解釈部32は、メタデータのメタデータ種別(図4参照)の内容を解釈し、その解釈結果が開始メタデータであるか否かを判定する。
開始メタデータ以外の解釈結果の場合、ステップS61の処理が誤判定であるとして、ステップS62においてNOであると判定され、処理はステップS61に戻され、それ以降の処理が繰り返される。なお、開始メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果が開始メタデータの場合、ステップS62においてYESであると判定され、処理はステップS63に進む。
ステップS63において、データ振り分け部33は、出力先にデータ開始を通知する。
即ち、メタデータ解釈部32は、メタデータ種別の解釈結果が開始メタデータの場合、メタデータのデータ源情報(図4参照)の内容を解釈する。これにより、開始メタデータに続いて送信されてくるであろう実データのデータ源が特定される。
具体的には例えば、図10の例のデータ受信処理は、図7の例のデータ送信処理に対応する受信側の処理である。よって、図10の例では、データ源情報にはデータ源11を示す情報が格納されているはずである。従って、図7の例では、実データのデータ源は、データ源11であることが特定される。さらに、本実施の形態では、データ源11に対する出力先はデータ出力先13であることが前提とされている。よって、実データの出力先は、データ先13であることが特定される。そこで、メタデータ解釈部32は、実データの出力先がデータ出力先13であることを、データ振り分け部33に通知する。また、メタデータ解釈部32は、データ出力先13にデータ開始を通知する。
ステップS64において、メタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。
メタデータフラグの信号レベルがハイレベルからローレベルに切り替わると、メタデータがもう来ていないとして、ステップS64においてNOであると判定され、処理はステップS67に進む。
即ち、データ長が既知でない場合のデータ受信処理(図3参照)と同様に、データ長は通知されず、ステップS67において、メタデータ/実データ分離部31は、データ送信装置1から実データを入力する。
メタデータフラグの信号レベルがハイレベルを継続しているならば、メタデータが来たとして、ステップS64においてYESであると判定され、処理はステップS65に進む。
ステップS65において、メタデータ解釈部32は、メタデータのメタデータ種別(図8参照)の内容を解釈し、その解釈結果がデータ長メタデータであるか否かを判定する。
データ長メタデータ以外の解釈結果の場合、ステップS64の処理が誤判定であるとして、ステップS65においてNOであると判定され、処理はステップS64に戻され、それ以降の処理が繰り返される。なお、データ長メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果がデータ長メタデータの場合、ステップS65においてYESであると判定され、処理はステップS66に進む。
ステップS66において、メタデータ解釈部32は、出力先にデータ長を通知する。
即ち、メタデータ解釈部32は、メタデータ種別の解釈結果がデータ長メタデータの場合、メタデータのデータ長情報(図8参照)の内容を解釈する。これにより、データ送信装置1から引き続き送信されてくるであろう実データのデータ長が特定される。
ステップS67において、メタデータ/実データ分離部31は、データ送信装置1から実データを入力する。
即ち、図9のA,Bからもわかるように、メタデータフラグの出力レベルがハイレベルからローレベルに変化したタイミング以降、実データがデータ受信装置2に到達するようになる。そこで、メタデータ/実データ分離部31は、データ送信装置1から実データを入力し、データ振り分け部33に出力する。
ステップS68において、データ振り分け部33は、実データをデータ出力先13に出力する。
ステップS69において、メタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。
メタデータフラグの信号レベルがローレベルの状態では、メタデータがまだ来ていないとして、ステップS69においてNOであると判定され、処理はステップS67に戻され、それ以降の処理が繰り返される。即ち、図9のA,Bからもわかるように、メタデータフラグの出力レベルがローレベルの状態を維持していることは、実データがデータ受信装置2に到達し続けていることを意味する。よって、ステップS67乃至S69のループ処理が繰り返されて、実データ(ストリーミングデータ)が、データ受信装置2に受信されてデータ出力先13に出力されるのである。
その後、メタデータフラグの信号レベルがローレベルからハイレベルに切り替わると、メタデータが来たとして、ステップS69においてYESであると判定され、処理はステップS70に進む。
ステップS70において、メタデータ解釈部32は、メタデータのメタデータ種別(図4参照)の内容を解釈し、その解釈結果が終了メタデータであるか否かを判定する。
終了メタデータ以外の解釈結果の場合、ステップS69の処理が誤判定であるとして、ステップS70においてNOであると判定され、処理はステップS67に戻され、それ以降の処理が繰り返される。なお、終了メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果が終了メタデータの場合、ステップS70においてYESであると判定され、処理はステップS71に進む。
ステップS71において、データ振り分け部33は、出力先にデータ終了を通知する。
これにより、図10の例のデータ受信処理は終了となる。
次に、第1乃至第4の条件がある場合のデータ送信処理とデータ受信処理との一例について説明する。第1の条件とは、データ源11とデータ源12がともに有効であるという条件である。第2の条件とは、データ送信装置1からデータ受信装置2に可変長データを送信するという条件である。第3の条件とは、データ源11が非優先データを出力し、データ源12が優先データを出力するという条件である。ここで、複数のデータ源に優先/非優先の区別があった場合に、優先のデータ源から出力された実データが、優先データと称されている。一方、非優先のデータ源から出力された実データが、非優先データと称されている。この場合、データ送信装置1は、優先データを非優先データよりも優先して出力するという優先制御を行うことができる。第4の条件とは、データ長が既知でない条件である。
データ源11とデータ源12とのうちの何れか一方にデータがない場合、データ送信装置1は、図3の例のフローチャートに従って、データ送信処理を実行する。この場合、データ受信装置2は、図6の例のフローチャートに従って、データ受信処理を実行する。データ源にデータがないことは、データ源が無効であることと等価に取り扱えるからである。
よって、以下、データ源11とデータ源12ともにデータがあることを前提とする。具体的には例えば、データ源11から出力された長いデータが、データ送信装置11から送信されている最中に、データ源12に短いデータがある場合の、データ送信処理とデータ受信処理との一例について説明する。
即ち、データ源11に実データaが図13のAのタイミングで発生し、データ源12に実データbが図13のCのタイミングで発生する場合について説明する。
図11および図12は、このような場合におけるデータ送信処理の一例を説明するフローチャートである。
ステップS81において、データ送信装置1の制御部21は、データ源11に実データaがあるか否かを判定する。
データ源11に実データaがない場合、ステップS81においてNOであると判定され、処理はステップS81に戻され、それ以降の処理が繰り返される。即ち、データ源11に実データaが存在する状態となるまで、ステップS81の判定処理が繰り返され、データ送信処理は待機状態となる。
これに対して、データ源11に実データaがある場合、ステップS81においてYESであると判定され、処理はステップS82に進む。
ステップS82において、メタデータ生成部22は、制御部21の制御に基づいて、データ源11についての開始メタデータを生成し、メタデータ/実データ重畳部23に出力する。即ち、ステップS81の処理でデータ源11にデータがあると判定した場合、制御部21は、データ源11用の開始メタデータの生成をメタデータ生成部22に対して指示する。そこで、メタデータ生成部22は、開始メタデータを生成し、メタデータ/実データ重畳部23に出力する。
ここで、開始メタデータとは、実データの開始を示すメタデータの1種である。この開始メタデータの構造としては、例えば本実施の形態では図4に示される構造が採用されているとする。即ち、開始メタデータは、メタデータ種別と、付帯情報としてのデータ源情報とから構成されている。メタデータ種別には、開始メタデータを示す情報が格納される。データ源情報には、実データを出力したデータ源の情報が格納される。即ち、図11の例では、その前提事項から、データ源11を示す情報がデータ源情報に格納されることになる。
ステップS83において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、データ源11についての開始メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、データ源11についての開始メタデータの出力の指示と、メタデータフラグの出力レベルをハイレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、データ源11についての開始メタデータをデータバス41を介してデータ受信装置2に出力するとともに、ハイレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
ステップS84において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、データ源11の実データaと、ローレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、実データaの出力の指示と、メタデータフラグの出力レベルをローレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、データ源11の実データaをデータバス41を介してデータ受信装置2に出力するとともに、ローレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
ステップS85において、データ送信装置1の制御部21は、データ源12に実データbがあるか否かを判定する。
データ源12に実データbがない場合、ステップS85においてNOであると判定され、処理はステップS84に戻され、それ以降の処理が繰り返される。即ち、データ源12に実データbが存在する状態となるまで、ステップS85の判定処理が繰り返される。即ち、データ源11の実データaが出力され続ける。
これに対して、データ源12に実データbがある場合、ステップS85においてYESであると判定され、処理はステップS86に進む。
ステップS86において、メタデータ生成部22は、制御部21の制御に基づいて、データ源11についての中断メタデータを生成し、メタデータ/実データ重畳部23に出力する。即ち、ステップS85の処理でデータ源12に実データbがあると判定した場合とは、データ源11が非優先であり、データ源12が優先であることから、データ源11の実データaの送信を中断し、データ源12の実データbの送信を開始する必要がある場合を意味する。そこで、制御部21は、データ源11の実データaの送信を中断すべく、データ源11用の中断メタデータの生成をメタデータ生成部22に対して指示する。メタデータ生成部22は、この指示を受けて、中断メタデータを生成して、メタデータ/実データ重畳部23に出力する。
ここで、中断メタデータとは、実データの送信の中断を示すメタデータの1種である。この中断メタデータの構造としては、例えば本実施の形態では図4に示される構造が採用されているとする。即ち、中断メタデータは、メタデータ種別と、付帯情報としてのデータ源情報とから構成されている。メタデータ種別には、中断メタデータを示す情報が格納される。データ源情報には、送信が中断される実データのデータ源情報が格納される。即ち、図11の例では、その前提事項から、データ源11を示す情報がデータ源情報に格納されることになる。
ステップS87において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、データ源11についての中断メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、データ源11についての中断メタデータの出力の指示と、メタデータフラグの出力レベルをハイレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、データ源11の実データaの送信を中断するとともに、メタデータフラグの信号レベルをローレベルからハイレベルに切り換える。そして、メタデータ/実データ重畳部23は、データ源11についての中断メタデータの送信を開始する。即ち、メタデータ/実データ重畳部23は、データ源11についての中断メタデータをデータバス41を介してデータ受信装置2に出力するとともに、ハイレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
ここで、図13のAの実データaのうち、送信中断までに送信された部分を、図13のBの記載にあわせて、実データa-1と称し、残りの部分を実データa−2と称する。
ステップS88において、メタデータ生成部22は、制御部21の制御に基づいて、データ源12についての開始メタデータを生成し、メタデータ/実データ重畳部23に出力する。即ち、制御部21は、データ源12用の開始メタデータの生成をメタデータ生成部22に対して指示する。そこで、メタデータ生成部22は、データ源12についての開始メタデータを生成し、メタデータ/実データ重畳部23に出力する。
ステップS89において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、データ源12についての開始メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、データ源12についての開始メタデータの出力の指示と、メタデータフラグの出力レベルをハイレベルのまま維持する指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、データ源12についての開始メタデータをデータバス41を介してデータ受信装置2に出力するとともに、ハイレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に引き続き出力する。
ステップS90において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、データ源12の実データbと、ローレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、実データbの出力の指示と、メタデータフラグの出力レベルをローレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、データ源12の実データbをデータバス41を介してデータ受信装置2に出力するとともに、ローレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
ステップS91において、データ送信装置1の制御部21は、データ源12の実データbが終了したか否かを判定する。
データ源12から実データbが出力されている限り、ステップS91においてNOであると判定されて、処理はステップS90に戻され、それ以降の処理が繰り返される。即ち、データ源12から実データbが出力されている限り、ステップS90,S91のループ処理が繰り返される。この間、データバス41からは、実データbが出力され続けるとともに、制御信号線42からは、ローレベル状態のメタデータフラグが出力され続ける。
データ源12についての実データbが終了すると、即ち、データ源12からの出力が停止すると、ステップS91においてYESであると判定されて、処理は図12のステップS92に進む。
ステップS92において、メタデータ生成部22は、制御部21の制御に基づいて、データ源12についての終了メタデータを生成し、メタデータ/実データ重畳部23に出力する。即ち、ステップS91の処理で実データが終了したと判定した場合、制御部21は、データ源12用の終了メタデータの生成をメタデータ生成部22に対して指示する。そこで、メタデータ生成部22は、データ源12についての終了メタデータを生成し、メタデータ/実データ重畳部23に出力する。
ステップS93において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、データ源12についての終了メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、データ源12についての終了メタデータの出力の指示と、メタデータフラグの出力レベルをハイレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、データ源12についての終了メタデータをデータバス41を介してデータ受信装置2に出力するとともに、ハイレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
ステップS94において、メタデータ生成部22は、制御部21の制御に基づいて、データ源11についての再開メタデータを生成し、メタデータ/実データ重畳部23に出力する。制御部21は、データ源11用の再開メタデータの生成をメタデータ生成部22に対して指示する。そこで、メタデータ生成部22は、データ源11についての再開メタデータを生成し、メタデータ/実データ重畳部23に出力する。
ここで、再開メタデータとは、実データの送信の再開を示すメタデータの1種である。この再開メタデータの構造としては、例えば本実施の形態では図4に示される構造が採用されているとする。即ち、再開メタデータは、メタデータ種別と、付帯情報としてのデータ源情報とから構成されている。メタデータ種別には、再開メタデータを示す情報が格納される。データ源情報には、送信が再開される実データのデータ源情報が格納される。即ち、図12の例では、その前提事項から、データ源11を示す情報がデータ源情報に格納されることになる。
ステップS95において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、データ源11についての再開メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、データ源11についての再開メタデータの出力の指示と、メタデータフラグの出力レベルをハイレベルのまま維持する指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、データ源11についての再開メタデータをデータバス41を介してデータ受信装置2に出力するとともに、ハイレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に引き続き出力する。
ステップS96において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、データ源11の残りの実データa−2と、ローレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、13図のBの実データa−2の出力の指示と、メタデータフラグの出力レベルをローレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、データ源11の残りの実データa−2をデータバス41を介してデータ受信装置2に出力するとともに、ローレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
ステップS97において、データ送信装置1の制御部21は、データ源11の実データが終了したか否かを判定する。
データ源11から実データa−2が出力されている限り、ステップS97においてNOであると判定されて、処理はステップS96に戻され、それ以降の処理が繰り返される。即ち、データ源11から実データa−2が出力されている限り、ステップS96,S97のループ処理が繰り返される。この間、データバス41からは、実データa−2が出力され続けるとともに、制御信号線42からは、ローレベル状態のメタデータフラグが出力され続ける。
データ源11からの実データa−2が終了すると、即ち、データ源11から実データa-2が全て出力されて、その出力が停止すると、ステップS97においてYESであると判定されて、処理はステップS98に進む。
ステップS98において、メタデータ生成部22は、制御部21の制御に基づいて、データ源11についての終了メタデータを生成し、メタデータ/実データ重畳部23に出力する。即ち、ステップS97の処理で実データが終了したと判定した場合、制御部21は、データ源11用の終了メタデータの生成をメタデータ生成部22に対して指示する。そこで、メタデータ生成部22は、データ源11についての終了メタデータを生成し、メタデータ/実データ重畳部23に出力する。
ステップS99において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、データ源11についての終了メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、制御部21は、メタデータ/実データ重畳部23に対して、データ源11についての終了メタデータの出力の指示と、メタデータフラグの出力レベルをハイレベルとする指示を出す。メタデータ/実データ重畳部23は、この指示を受けて、データ源11についての終了メタデータをデータバス41を介してデータ受信装置2に出力するとともに、ハイレベル状態のメタデータフラグを制御信号線42を介してデータ受信装置2に出力する。
これにより、図11および図12の例のデータ送信処理は終了となる。
このようにして、図11および図12の例のデータ送信処理が実行されると、その結果として、例えば、制御信号線42には、図14のAに示される波形のメタデータフラグが伝送されていくことになる。一方、データバス41には、図14のBに示される配置構成のメタデータ重畳実データが伝送されていくことになる。
次に、図15および図16のフローチャートを参照して、図11および図12のデータ送信処理に対するデータ受信処理の一例について説明する。即ち、図15の例とは、データ源11とデータ源12がともに有効であり、データ送信装置1からデータ受信装置2に可変長データを送信する場合であって、データ源11が非優先データを出力し、データ源12が優先データを出力し、データ長が既知でない場合であって、データ送信装置1がデータ源11から出力された長いデータを送信中に、データ源12に短いデータがある場合の、データ受信処理との一例について説明する。
ステップS101において、メタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。即ち、メタデータ/実データ分離部31は、データ受信処理が開始すると、制御信号線42を伝送してくるメタデータフラグの信号レベルを監視し始める。
メタデータフラグの信号レベルがローレベルの状態では、メタデータがまだ来ていないとして、ステップS101においてNOであると判定され、処理はステップS101に戻され、それ以降の処理が繰り返される。
その後、メタデータフラグの信号レベルがローレベルからハイレベルに切り替わると、メタデータが来たとして、ステップS101においてYESであると判定され、処理はステップS102に進む。
ステップS102において、メタデータ解釈部32は、メタデータのメタデータ種別(図4参照)の内容を解釈し、その解釈結果が開始メタデータであるか否かを判定する。
開始メタデータ以外の解釈結果の場合、ステップS101の処理が誤判定であるとして、ステップS102においてNOであると判定され、処理はステップS101に戻され、それ以降の処理が繰り返される。なお、開始メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果が開始メタデータの場合、ステップS102においてYESであると判定され、処理はステップS103に進む。
ステップS103において、データ振り分け部33は、出力先にデータ開始を通知する。
即ち、メタデータ解釈部32は、メタデータ種別の解釈結果が開始メタデータの場合、メタデータのデータ源情報(図4参照)の内容を解釈する。これにより、開始メタデータに続いて送信されてくるであろう実データa-1のデータ源が特定される。
具体的には例えば、図15および図16の例のデータ受信処理は、図11および図12の例のデータ送信処理に対応する受信側の処理である。よって、ステップS103では、データ源情報にはデータ源11を示す情報が格納されているはずである。従って、ステップS103では、実データa-1のデータ源は、データ源11であることが特定される。さらに、本実施の形態では、データ源11に対する出力先はデータ出力先13であることが前提とされている。よって、実データa-1の出力先は、データ先13であることが特定される。そこで、メタデータ解釈部32は、実データa-1の出力先がデータ出力先13であることを、データ振り分け部33に通知する。また、メタデータ解釈部32は、データ出力先13にデータ開始を通知する。
ステップS104において、メタデータ/実データ分離部31は、データ送信装置1から実データa-1を入力する。
即ち、図14のA,Bからもわかるように、メタデータフラグの出力レベルがハイレベルからローレベルに変化したタイミング以降、実データa-1がデータ受信装置2に到達するようになる。そこで、メタデータ/実データ分離部31は、データ送信装置1から実データa-1を入力し、データ振り分け部33に出力する。
ステップS105において、データ振り分け部33は、実データa-1をデータ出力先13に出力する。
ステップS106において、メタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。
メタデータフラグの信号レベルがローレベルの状態では、メタデータがまだ来ていないとして、ステップS106においてNOであると判定され、処理はステップS104に戻され、それ以降の処理が繰り返される。即ち、図14のA,Bからもわかるように、メタデータフラグの出力レベルがローレベルの状態を維持していることは、実データa-1がデータ受信装置2に到達し続けていることを意味する。よって、ステップS104乃至S106のループ処理が繰り返されて、実データa-1(ストリーミングデータ)が、データ受信装置2に受信されてデータ出力先13に出力されるのである。
その後、メタデータフラグの信号レベルがローレベルからハイレベルに切り替わると、メタデータが来たとして、ステップS106においてYESであると判定され、処理はステップS107に進む。
ステップS107において、メタデータ解釈部32は、メタデータのメタデータ種別(図4参照)の内容を解釈し、その解釈結果が中断メタデータであるか否かを判定する。
中断メタデータ以外の解釈結果の場合、ステップS106の処理が誤判定であるとして、ステップS107においてNOであると判定され、処理はステップS106に戻され、それ以降の処理が繰り返される。なお、中断メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果が中断メタデータの場合、ステップS107においてYESであると判定され、処理はステップS108に進む。
ステップS108において、データ振り分け部33は、出力先にデータ中断を通知する。
即ち、メタデータ解釈部32は、メタデータ種別の解釈結果が中断メタデータの場合、メタデータのデータ源情報(図4参照)の内容を解釈する。
具体的には例えば、図15および図16の例のデータ受信処理は、図11および図12の例のデータ送信処理に対応する受信側の処理である。よって、ステップS108では、データ源情報にはデータ源11を示す情報が格納されているはずである。従って、ステップS108では、実データa-1のデータ源は、データ源11であることが特定される。さらに、本実施の形態では、データ源11に対する出力先はデータ出力先13であることが前提とされている。よって、実データa-1の出力先は、データ先13であることが特定される。そこで、メタデータ解釈部32は、実データa-1の出力先がデータ出力先13であることを、データ振り分け部33に通知する。また、メタデータ解釈部32は、データ出力先13にデータ中断を通知する。
ステップS109において、メタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。
メタデータフラグの信号レベルが仮にハイレベルからローレベルに切り替わったとした場合、メタデータがまだ来ていないとして、ステップS109においてNOであると判定され、処理はステップS109に再び戻され、それ以降の処理が繰り返される。
これに対して、メタデータフラグの信号レベルがハイレベルの状態を維持している場合、または、ローレベルからハイレベルに切り替わった場合、何かしらのメタデータが来たとして、ステップS109においてYESであると判定されて、処理はステップS110に進む。
ステップS110において、メタデータ解釈部32は、メタデータのメタデータ種別(図4参照)の内容を解釈し、その解釈結果が開始メタデータであるか否かを判定する。
開始メタデータ以外の解釈結果の場合、ステップS109の処理が誤判定であるとして、ステップS110においてNOであると判定され、処理はステップS109に戻され、それ以降の処理が繰り返される。なお、開始メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果が開始メタデータの場合、ステップS110においてYESであると判定され、処理はステップS111に進む。
ステップS111において、データ振り分け部33は、出力先にデータ開始を通知する。
即ち、メタデータ解釈部32は、メタデータ種別の解釈結果が開始メタデータの場合、メタデータのデータ源情報(図4参照)の内容を解釈する。これにより、開始メタデータに続いて送信されてくるであろう実データbのデータ源が特定される。
具体的には例えば、図15および図16の例のデータ受信処理は、図11および図12の例のデータ送信処理に対応する受信側の処理である。よって、ステップS111では、データ源情報にはデータ源12を示す情報が格納されているはずである。従って、ステップS111では、実データbのデータ源は、データ源12であることが特定される。さらに、本実施の形態では、データ源12に対する出力先はデータ出力先14であることが前提とされている。よって、実データbの出力先は、データ先14であることが特定される。そこで、メタデータ解釈部32は、実データbの出力先がデータ出力先14であることを、データ振り分け部33に通知する。また、メタデータ解釈部32は、データ出力先14にデータ開始を通知する。
ステップS112において、メタデータ/実データ分離部31は、データ送信装置1から実データを入力する。
即ち、図14のA,Bからもわかるように、メタデータフラグの出力レベルがハイレベルからローレベルに変化したタイミング以降、実データbがデータ受信装置2に到達するようになる。そこで、メタデータ/実データ分離部31は、データ送信装置1から実データbを入力し、データ振り分け部33に出力する。
ステップS113において、データ振り分け部33は、実データbをデータ出力先14に出力する。
ステップS114において、メタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。
メタデータフラグの信号レベルがローレベルの状態では、メタデータがまだ来ていないとして、ステップS114においてNOであると判定され、処理はステップS112に戻され、それ以降の処理が繰り返される。即ち、図14のA,Bからもわかるように、メタデータフラグの出力レベルがローレベルの状態を維持していることは、実データがデータ受信装置2に到達し続けていることを意味する。よって、ステップS112乃至S114のループ処理が繰り返されて、実データb(ストリーミングデータ)が、データ受信装置2に受信されてデータ出力先14に出力されるのである。
その後、メタデータフラグの信号レベルがローレベルからハイレベルに切り替わると、メタデータが来たとして、ステップS114においてYESであると判定され、処理はステップS115に進む。
ステップS115において、メタデータ解釈部32は、メタデータのメタデータ種別(図4参照)の内容を解釈し、その解釈結果が終了メタデータであるか否かを判定する。
終了メタデータ以外の解釈結果の場合、ステップS114の処理が誤判定であるとして、ステップS115においてNOであると判定され、処理はステップS114に戻され、それ以降の処理が繰り返される。なお、終了メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果が終了メタデータの場合、ステップS115においてYESであると判定され、処理はステップS116に進む。
ステップS116において、データ振り分け部33は、出力先14にデータ終了を通知する。
図16のステップS117において、メタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。
メタデータフラグの信号レベルが仮にハイレベルからローレベルに切り替わったとした場合、メタデータがまだ来ていないとして、ステップS117においてNOであると判定され、処理はステップS117に再び戻され、それ以降の処理が繰り返される。
これに対して、メタデータフラグの信号レベルがハイレベルの状態を維持している場合、または、ローレベルからハイレベルに切り替わった場合、何かしらのメタデータが来たとして、ステップS117においてYESであると判定されて、処理はステップS118に進む。
ステップS118において、メタデータ解釈部32は、メタデータのメタデータ種別(図4参照)の内容を解釈し、その解釈結果が再開メタデータであるか否かを判定する。
再開メタデータ以外の解釈結果の場合、ステップS117の処理が誤判定であるとして、ステップS118においてNOであると判定され、処理はステップS117に戻され、それ以降の処理が繰り返される。なお、再開メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果が再開メタデータの場合、ステップS118においてYESであると判定され、処理はステップS119に進む。
ステップS119において、データ振り分け部33は、出力先にデータ再開を通知する。
即ち、メタデータ解釈部32は、メタデータ種別の解釈結果が再開メタデータの場合、メタデータのデータ源情報(図4参照)の内容を解釈する。これにより、再開メタデータに続いて送信されてくるであろう実データa−2のデータ源が特定される。
具体的には例えば、図15および図16の例のデータ受信処理は、図11および図12の例のデータ送信処理に対応する受信側の処理である。よって、ステップS119では、データ源情報にはデータ源11を示す情報が格納されているはずである。従って、ステップS119では、実データa−2のデータ源は、データ源11であることが特定される。さらに、本実施の形態では、データ源11に対する出力先はデータ出力先13であることが前提とされている。よって、実データa−2の出力先は、データ先13であることが特定される。そこで、メタデータ解釈部32は、実データa−2の出力先がデータ出力先13であることを、データ振り分け部33に通知する。また、メタデータ解釈部32は、データ出力先13にデータ再開を通知する。
ステップS120において、メタデータ/実データ分離部31は、データ送信装置1から実データを入力する。
即ち、図14のA,Bからもわかるように、メタデータフラグの出力レベルがハイレベルからローレベルに変化したタイミング以降、実データa−2がデータ受信装置2に到達するようになる。そこで、メタデータ/実データ分離部31は、データ送信装置1から実データa−2を入力し、データ振り分け部33に出力する。
ステップS121において、データ振り分け部33は、実データa−2をデータ出力先13に出力する。
ステップS122において、メタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。
メタデータフラグの信号レベルがローレベルの状態では、メタデータがまだ来ていないとして、ステップS122においてNOであると判定され、処理はステップS120に戻され、それ以降の処理が繰り返される。即ち、図14のA,Bからもわかるように、メタデータフラグの出力レベルがローレベルの状態を維持していることは、実データa−2がデータ受信装置2に到達し続けていることを意味する。よって、ステップS120乃至S122のループ処理が繰り返されて、実データa−2(ストリーミングデータ)が、データ受信装置2に受信されてデータ出力先13に出力されるのである。
その後、メタデータフラグの信号レベルがローレベルからハイレベルに切り替わると、メタデータが来たとして、ステップS122においてYESであると判定され、処理はステップS123に進む。
ステップS123において、メタデータ解釈部32は、メタデータのメタデータ種別(図4参照)の内容を解釈し、その解釈結果が終了メタデータであるか否かを判定する。
終了メタデータ以外の解釈結果の場合、ステップS122の処理が誤判定であるとして、ステップS123においてNOであると判定され、処理はステップS122に戻され、それ以降の処理が繰り返される。なお、終了メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果が終了メタデータの場合、ステップS123においてYESであると判定され、処理はステップS124に進む。
ステップS124において、データ振り分け部33は、出力先にデータ終了を通知する。
これにより、図15および図16の例のデータ受信処理は終了となる。
以上、図11および図12の例のデータ送信処理と、図15および図16の例のデータ受信処理とについて説明した。
次に、第1乃至第4の条件がある場合のデータ送信処理とデータ受信処理との一例について説明する。第1の条件とは、データ源11とデータ源12がともに有効であるという条件である。第2の条件とは、データ送信装置1からデータ受信装置2に可変長データを時分割で送信するという条件である。第3の条件とは、データ源11とデータ源12との優劣は対等であるという条件である。第4の条件とは、データ長が既知でない条件である。
データ源11とデータ源12とのうちの何れか一方にデータがない場合、データ送信装置1は、図3の例のフローチャートに従って、データ送信処理を実行する。この場合、データ受信装置2は、図6の例のフローチャートに従って、データ受信処理を実行する。データ源にデータがないことは、データ源が無効であることと等価に取り扱えるからである。
よって、以下、データ源11とデータ源12ともにデータがあることを前提とする。
図17は、このような場合におけるデータ送信処理の一例を説明するフローチャートである。
ステップS141において、データ送信装置1の制御部21は、処理対象データ源を設定する。
処理対象データ源の設定手法は特に限定されないが、ここでは、データ源11とデータ源12とが交互に処理対象データ源に設定されるとする。また、初期設定は、データ源11とデータ源12とのうち、最初にデータが発生した方が処理対象データ源に設定されるとする。
ステップS142において、制御部21は、処理対象データ源に実データがあるか否かを判定する。
処理対象データ源に実データがない場合、ステップS142においてNOであると判定され、処理はステップS142に戻され、それ以降の処理が繰り返される。即ち、処理対象データ源に実データが存在する状態となるまで、ステップS142の判定処理が繰り返され、データ送信処理は待機状態となる。ただし、本実施の形態では、時分割でデータが送信されるので、一定時間以上、処理対象データ源に実データが存在する状態とならない場合、処理対象データ源を強制的に切り換えてもよい。
これに対して、処理対象データ源に実データがある場合、ステップS142においてYESであると判定され、処理はステップS143に進む。
ステップS143において、処理対象データ源の実データの送信中断状態であるか否かを判定する。
ここで、「処理対象データ源の実データの送信中断状態」とは、処理対象データ源が、前回の処理対象データ源として設定されていた際に、後述するステップS151の処理で中断メタデータを出力した状態を指す。
このような状態でない場合、即ち、処理対象データ源が、前回の処理対象データ源として設定されていた際に、後述するステップS154の処理で終了メタデータを出力した状態の場合、ステップS143においてNOであると判定されて、処理はステップS144に進む。
ステップS144において、メタデータ生成部22は、制御部21の制御に基づいて、処理対象データ源についての開始メタデータを生成する。即ち、図4の構造のメタデータであって、メタデータ種別には、開始メタデータを示す情報が格納され、データ源情報には、処理対象データ源を示す情報が格納されたメタデータが生成される。生成された開始メタデータが、メタデータ/実データ重畳部23に出力されると、処理はステップS145に進む。
ステップS145において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、処理対象データ源についての開始メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、処理対象データ源についての開始メタデータは、データバス41を介してデータ受信装置2に出力されるともに、ハイレベル状態のメタデータフラグは、制御信号線42を介してデータ受信装置2に出力される。これにより、処理はステップS148に進む。ただし、ステップS148以降の処理については後述する。
これに対して、ステップS143において、「処理対象データ源の実データの送信中断状態」であると判定された場合、処理はステップS146に進む。
ステップS146において、メタデータ生成部22は、制御部21の制御に基づいて、処理対象データ源についての再開メタデータを生成する。即ち、図4の構造のメタデータであって、メタデータ種別には、再開メタデータを示す情報が格納され、データ源情報には、処理対象データ源を示す情報が格納されたメタデータが生成される。生成された再開メタデータが、メタデータ/実データ重畳部23に出力されると、処理はステップS147に進む。
ステップS147において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、処理対象データ源についての再開メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、処理対象データ源についての再開メタデータは、データバス41を介してデータ受信装置2に出力されるともに、ハイレベル状態のメタデータフラグは、制御信号線42を介してデータ受信装置2に出力される。これにより、処理はステップS148に進む。
ステップS148において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、処理対象データ源の実データと、ローレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、処理対象データ源の実データがデータバス41を介してデータ受信装置2に出力されるとともに、ローレベル状態のメタデータフラグが制御信号線42を介してデータ受信装置2に出力される。
ステップS149において、制御部21は、一定時間が経過したか否かを判定する。
まだ、一定時間が経過していない場合、ステップS149においてNOであると判定されて、処理はステップS152に進む。
ステップS152において、制御部21は、処理対象データ源のデータが終了したか否かを判定する。
まだ、処理対象データ源のデータが終了していない場合、ステップS152においてNOであると判定されて、処理はステップS148に戻され、それ以降の処理が繰り返される。即ち、一定時間が経過するか、或いは、処理対象データ源のデータが終了するまでの間、ステップS148,S149,S152のループ処理が繰り返され、処理対象データ源の実データと、ローレベル状態のメタデータフラグとがデータ受信装置2に出力され続ける。このように、ステップS149の処理でいう一定時間とは、時分割でデータが送信される期間を意味している。
その後、処理対象データ源のデータが終了していない状態で、一定時間が経過すると、ステップS149においてYESであると判定されて、処理はステップS150に進む。
ステップS150において、メタデータ生成部22は、制御部21の制御に基づいて、処理対象データ源についての中断メタデータを生成し、メタデータ/実データ重畳部23に出力する。即ち、図4の構造のメタデータであって、メタデータ種別には、中断メタデータを示す情報が格納され、データ源情報には、処理対象データ源を示す情報が格納されたメタデータが生成される。生成された中断メタデータが、メタデータ/実データ重畳部23に出力されると、処理はステップS150に進む。
ステップS151において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、処理対象データ源についての中断メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、処理対象データ源の実データの送信が中断されるとともに、メタデータフラグの信号レベルがローレベルからハイレベルに切り換わる。そして、中断メタデータの送信が開始される。
その後、処理はステップS141に戻され、それ以降の処理が繰り返される。即ち、データ源11とデータ源12とのうちの、これまで処理対象データ源とされていなかった方が、処理対象データ源に新たに設定される。そして、新たな処理対象データ源に対して、ステップS142以降の処理が施されることになる。
また、ステップS147の処理で再開メタデータが出力された後、ステップS148,S149,S152のループ処理が繰り返され、処理対象データ源の実データと、ローレベル状態のメタデータフラグとがデータ受信装置2に出力され続けた場合には、次のような処理となる。即ち、この場合には、処理対象データ源の実データが終了した段階で、ステップS152において、YESであると判定されて、処理はステップS153に進む。
ステップS153において、メタデータ生成部22は、制御部21の制御に基づいて、処理対象データ源についての終了メタデータを生成し、メタデータ/実データ重畳部23に出力する。即ち、図4の構造のメタデータであって、メタデータ種別には、終了メタデータを示す情報が格納され、データ源情報には、処理対象データ源を示す情報が格納されたメタデータが生成される。生成された中断メタデータが、メタデータ/実データ重畳部23に出力されると、処理はステップS154に進む。
ステップS154において、メタデータ/実データ重畳部23は、制御部21の制御に基づいて、処理対象データ源についての終了メタデータとハイレベル状態のメタデータフラグとをデータ受信装置2に出力する。即ち、処理対象データ源の実データの送信が終了するとともに、メタデータフラグの信号レベルがローレベルからハイレベルに切り換わる。そして、終了メタデータの送信が開始される。
その後、処理はステップS141に戻され、それ以降の処理が繰り返される。即ち、データ源11とデータ源12とうちの、これまで処理対象データ源とされていなかった方が、処理対象データ源に新たに設定される。そして、新たな処理対象データ源に対して、ステップS142以降の処理が施されることになる。
以下、図18と図19の具体例を用いつつ、図17の例のデータ送信処理についてさらに説明していく。
即ち、データ源11に実データaが図18のAのタイミングで発生し、データ源12に実データbが図18のCのタイミングで発生する場合における、図17の例のデータ送信処理についてさらに説明していく。
図18の例では、データ源11の方が、データ源12よりも先に実データaが発生している。よって、最初のステップS141の処理では、データ源11が処理対象データ源に設定されることになる。
この場合、ステップS142(YES),S143(NO)を経て、ステップS144の処理で、データ源11についての開始メタデータ(以下、開始メタデータAと称する)が生成される。そして、ステップS145の処理で、開始メタデータAは、図19のBに示されるように、データバス41を介してデータ受信装置2に出力されるともに、ハイレベル状態のメタデータフラグは、図19のAに示されるように、制御信号線42を介してデータ受信装置2に出力される。
その後、ステップS148,S149,S152のループ処理が繰り返されて、データ源11の実データaのうちの図18のBの実データa-1が、図19のBに示されるように、データバス41を介してデータ受信装置2に出力されるともに、ローレベル状態のメタデータフラグが、図19のAに示されるように、制御信号線42を介してデータ受信装置2に出力される。
その後一定時間が経過すると、ステップS149の処理でYESであると判定されて、ステップS150の処理で、データ源11についての中断メタデータ(以下、中断メタデータAと称する)が生成される。そして、ステップS151の処理で、中断メタデータAは、図19のBに示されるように、データバス41を介してデータ受信装置2に出力されるともに、ハイレベル状態のメタデータフラグは、図19のAに示されるように、制御信号線42を介してデータ受信装置2に出力される。
その後、処理はステップS141に戻されて、今度は、データ源12が処理対象データ源に設定されることになる。
この場合、ステップS142(YES),S143(NO)を経て、ステップS144の処理で、データ源12についての開始メタデータ(以下、開始メタデータBと称する)が生成される。そして、ステップS145の処理で、開始メタデータBは、図19のBに示されるように、データバス41を介してデータ受信装置2に出力されるともに、ハイレベル状態のメタデータフラグは、図19のBに示されるように、制御信号線42を介してデータ受信装置2に引き続き出力される。
その後、ステップS148,S149,S152のループ処理が繰り返されて、データ源12の実データbのうちの図18のDの実データb-1が、図19のBに示されるように、データバス41を介してデータ受信装置2に出力されるともに、ローレベル状態のメタデータフラグが、図19のAに示されるように、制御信号線42を介してデータ受信装置2に出力される。
その後一定時間が経過すると、ステップS149の処理でYESであると判定されて、ステップS150の処理で、データ源12についての中断メタデータ(以下、中断メタデータBと称する)が生成される。そして、ステップS151の処理で、中断メタデータBは、図19のBに示されるように、データバス41を介してデータ受信装置2に出力されるともに、ハイレベル状態のメタデータフラグは、図19のAに示されるように、制御信号線42を介してデータ受信装置2に出力される。
その後、処理はステップS141に戻されて、今度は、データ源11が処理対象データ源に設定されることになる。
この場合、ステップS142(YES),S143(YES)を経て、ステップS146の処理で、データ源11についての再開メタデータ(以下、再開メタデータAと称する)が生成される。そして、ステップS147の処理で、再開メタデータAは、図19のBに示されるように、データバス41を介してデータ受信装置2に出力されるともに、ハイレベル状態のメタデータフラグは、図19のBに示されるように、制御信号線42を介してデータ受信装置2に出力される。
その後、ステップS148,S149,S152のループ処理が繰り返されて、データ源11の実データaのうちの図18のBの実データa-2(実データa-1に対する残りの実データa-2)が、図19のBに示されるように、データバス41を介してデータ受信装置2に出力されるともに、ローレベル状態のメタデータフラグが、図19のAに示されるように、制御信号線42を介してデータ受信装置2に出力される。
その後実データa-2の送信が終了すると、ステップS152の処理でYESであると判定されて、ステップS153の処理で、データ源11についての終了メタデータ(以下、終了メタデータAと称する)が生成される。そして、ステップS154の処理で、終了メタデータAは、図19のBに示されるように、データバス41を介してデータ受信装置2に出力されるともに、ハイレベル状態のメタデータフラグは、図19のAに示されるように、制御信号線42を介してデータ受信装置2に出力される。
その後、処理はステップS141に戻されて、今度は、データ源12が処理対象データ源に設定されることになる。
この場合、ステップS142(YES),S143(YES)を経て、ステップS146の処理で、データ源12についての再開メタデータ(以下、再開メタデータBと称する)が生成される。そして、ステップS147の処理で、再開メタデータBは、図19のBに示されるように、データバス41を介してデータ受信装置2に出力されるともに、ハイレベル状態のメタデータフラグは、図19のBに示されるように、制御信号線42を介してデータ受信装置2に引き続き出力される。
その後、ステップS148,S149,S152のループ処理が繰り返されて、データ源11の実データbのうちの図18のDの実データb-2(実データb-1に対する残りの実データb-2)が、図19のBに示されるように、データバス41を介してデータ受信装置2に出力されるともに、ローレベル状態のメタデータフラグが、図19のAに示されるように、制御信号線42を介してデータ受信装置2に出力される。
その後実データb-2の送信が終了すると、ステップS152の処理でYESであると判定されて、ステップS153の処理で、データ源12についての終了メタデータ(以下、終了メタデータBと称する)が生成される。そして、ステップS154の処理で、終了メタデータBは、図19のBに示されるように、データバス41を介してデータ受信装置2に出力されるともに、ハイレベル状態のメタデータフラグは、図19のAに示されるように、制御信号線42を介してデータ受信装置2に出力される。
次に、図20のフローチャートを参照して、図17のデータ送信処理に対するデータ受信処理の一例について説明する。
ステップS161において、データ受信装置2のメタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。即ち、メタデータ/実データ分離部31は、データ受信処理が開始すると、制御信号線42を伝送してくるメタデータフラグの信号レベルを監視し始める。
メタデータフラグの信号レベルがローレベルの状態では、メタデータがまだ来ていないとして、ステップS161においてNOであると判定され、処理はステップS161に戻され、それ以降の処理が繰り返される。
その後、メタデータフラグの信号レベルがローレベルからハイレベルに切り替わると、メタデータが来たとして、ステップS161においてYESであると判定され、処理はステップS162に進む。
ステップS162において、メタデータ解釈部32は、メタデータのメタデータ種別(図4参照)の内容を解釈し、その解釈結果が開始メタデータまたは再開メタデータであるか否かを判定する。
開始メタデータまたは再開メタデータ以外の解釈結果の場合、ステップS161の処理が誤判定であるとして、ステップS162においてNOであると判定され、処理はステップS161に戻され、それ以降の処理が繰り返される。なお、開始メタデータまたは再開メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果が開始メタデータまたは再開メタデータの場合、ステップS162においてYESであると判定され、処理はステップS163に進む。
ステップS163において、メタデータ解釈部32は、メタデータのデータ源情報(図4参照)の内容を解釈することで、データ源を特定し、そのデータ源に対応する出力先を特定する。即ち、例えば本実施の形態では、データ源11が特定された場合には、出力先13が特定される。これに対して、データ源12が特定された場合には、出力先14が特定される。
ステップS164において、データ振り分け部33は、出力先にデータ開始またはデータ再開を通知する。即ち、開始メタデータが来た場合には、データ開始が出力先に通知される。これに対して、再開メタデータが来た場合には、データ再開が出力先に通知される。
ステップS165において、メタデータ/実データ分離部31は、データ送信装置1から実データを入力する。ステップS166において、データ振り分け部33は、実データをデータ出力先に出力する。
ステップS167において、メタデータ/実データ分離部31は、データ送信装置1からメタデータが来たか否かを判定する。
メタデータフラグの信号レベルがローレベルの状態では、メタデータがまだ来ていないとして、ステップS167においてNOであると判定され、処理はステップS165に戻され、それ以降の処理が繰り返される。即ち、メタデータが来るまでの間、ステップS165乃至S167のループ処理が繰り返されて、実データ(ストリーミングデータ)が、データ受信装置2に受信されてデータ出力先に出力されるのである。
その後、メタデータフラグの信号レベルがローレベルからハイレベルに切り替わると、メタデータが来たとして、ステップS167においてYESであると判定され、処理はステップS168に進む。
ステップS168において、メタデータ解釈部32は、メタデータのメタデータ種別(図4参照)の内容を解釈し、その解釈結果が中断メタデータまたは終了メタデータであるか否かを判定する。
中断メタデータまたは終了メタデータ以外の解釈結果の場合、ステップS167の処理が誤判定であるとして、ステップS168においてNOであると判定され、処理はステップS167に戻され、それ以降の処理が繰り返される。なお、中断メタデータまたは終了メタデータ以外の解釈結果の場合、図示はせぬが、例えば、データ受信装置2は、所定のエラー処理を実行して、データ受信処理を強制終了させてもよい。
これに対して、メタデータ種別の解釈結果が中断メタデータまたは終了メタデータの場合、ステップS168においてYESであると判定され、処理はステップS169に進む。
ステップS169において、メタデータ解釈部32は、メタデータのデータ源情報(図4参照)の内容を解釈することで、データ源を特定し、そのデータ源に対応する出力先を特定する。即ち、例えば本実施の形態では、データ源11が特定された場合には、出力先13が特定される。これに対して、データ源12が特定された場合には、出力先14が特定される。
ステップS170において、データ振り分け部33は、出力先にデータ中断またはデータ終了を通知する。即ち、中断メタデータが来た場合には、データ中断が出力先に通知される。これに対して、終了メタデータが来た場合には、データ終了が出力先に通知される。
その後、処理はステップS161に戻され、それ以降の処理が繰り返される。
以下、図19の具体例を用いつつ、図20の例のデータ受信処理についてさらに説明していく。即ち、以下、図19のAの波形のメタデータが、制御信号線42を介してデータ受信装置2に入力されるとともに、図19のBの配置構造のメタデータ重畳実データがシステムバス41を介してデータ受信装置2に入力されてくるとする。
時刻t1になると、メタデータの信号レベルはローレベルからハイレベルに切り替わる。よって、ステップS161の処理でYESであると判定されて、処理はステップS162に進む。時刻t1以降到達するメタデータは開始メタデータAである。よって、そのメタデータ種別(図4参照)の内容から、開始メタデータと特定されることになる。これにより、ステップS162の処理でYESであると判定されて、処理はステップS163に進む。ステップS163の処理で、開始メタデータAのデータ源情報(図4参照)の内容から、データ源11が特定され、その結果、出力先として出力先13が特定される。
これにより、出力先13にはデータ開始が通知されることになる。そして、ステップS165乃至S167のループ処理が繰り返されることで、時刻t2乃至時刻t3の期間にデータ受信装置12に順次伝送されてくる実データa-1は、出力先13に順次転送されることになる。なお、図19のAに示されるように、メタデータの信号レベルは、時刻t2になるとハイレベルからローレベルに切り替わり、ローレベルを維持する。
その後、時刻t3になると、メタデータの信号レベルはローレベルからハイレベルに切り替わる。よって、ステップS167の処理でYESであると判定されて、処理はステップS168に進む。時刻t3以降到達するメタデータは中断メタデータAである。よって、そのメタデータ種別(図4参照)の内容から、中断メタデータと特定されることになる。これにより、ステップS168の処理でYESであると判定されて、処理はステップS169に進む。ステップS169の処理で、中断メタデータAのデータ源情報(図4参照)の内容から、データ源11が特定され、その結果、出力先として出力先13が特定される。これにより、ステップS170の処理で、出力先13にはデータ中断が通知されることになる。
その後、処理は再びステップS161に戻される。図19のBに示されるように、中断メタデータAの後には引き続き開始メタデータBがデータ受信装置2に入力されてくる。よって、メタデータの信号レベルはハイレベルを維持している。よって、ステップS161の処理でYESであると判定されて、処理はステップS162に進む。上述したように、この段階で受信装置2に入力されてくるメタデータは、開始メタデータBである。よって、そのメタデータ種別(図4参照)の内容から、開始メタデータと特定されることになる。これにより、ステップS162の処理でYESであると判定されて、処理はステップS163に進む。ステップS163の処理で、開始メタデータBのデータ源情報(図4参照)の内容から、データ源12が特定され、その結果、出力先として出力先14が特定される。
これにより、出力先14にはデータ開始が通知されることになる。そして、ステップS165乃至S167のループ処理が繰り返されることで、時刻t4乃至時刻t5の期間にデータ受信装置12に順次伝送されてくる実データb-1は、出力先14に順次転送されることになる。なお、図19のAに示されるように、メタデータの信号レベルは、時刻t4になるとハイレベルからローレベルに切り替わり、ローレベルを維持する。
その後、時刻t5になると、メタデータの信号レベルはローレベルからハイレベルに切り替わる。よって、ステップS167の処理でYESであると判定されて、処理はステップS168に進む。時刻t5以降到達するメタデータは中断メタデータBである。よって、そのメタデータ種別(図4参照)の内容から、中断メタデータと特定されることになる。これにより、ステップS168の処理でYESであると判定されて、処理はステップS169に進む。ステップS169の処理で、中断メタデータBのデータ源情報(図4参照)の内容から、データ源12が特定され、その結果、出力先として出力先14が特定される。これにより、ステップS170の処理で、出力先14にはデータ中断が通知されることになる。
その後、処理は再びステップS161に戻される。図19のBに示されるように、中断メタデータBの後には引き続き再開メタデータAがデータ受信装置2に入力されてくる。よって、メタデータの信号レベルはハイレベルを維持している。よって、ステップS161の処理でYESであると判定されて、処理はステップS162に進む。上述したように、この段階で受信装置2に入力されてくるメタデータは、再開メタデータAである。よって、そのメタデータ種別(図4参照)の内容から、再開メタデータと特定されることになる。これにより、ステップS162の処理でYESであると判定されて、処理はステップS163に進む。ステップS163の処理で、再開メタデータAのデータ源情報(図4参照)の内容から、データ源11が特定され、その結果、出力先として出力先13が特定される。
これにより、出力先13にはデータ再開が通知されることになる。そして、ステップS165乃至S167のループ処理が繰り返されることで、時刻t6乃至時刻t7の期間にデータ受信装置12に順次伝送されてくる実データa-2は、出力先13に順次転送されることになる。なお、図19のAに示されるように、メタデータの信号レベルは、時刻t6になるとハイレベルからローレベルに切り替わり、ローレベルを維持する。
その後、時刻t7になると、メタデータの信号レベルはローレベルからハイレベルに切り替わる。よって、ステップS167の処理でYESであると判定されて、処理はステップS168に進む。時刻t7以降到達するメタデータは終了メタデータAである。よって、そのメタデータ種別(図4参照)の内容から、終了メタデータと特定されることになる。これにより、ステップS168の処理でYESであると判定されて、処理はステップS169に進む。ステップS169の処理で、終了メタデータAのデータ源情報(図4参照)の内容から、データ源11が特定され、その結果、出力先として出力先13が特定される。これにより、ステップS170の処理で、出力先13にはデータ終了が通知されることになる。
その後、処理は再びステップS161に戻される。図19のBに示されるように、終了メタデータAの後には引き続き再開メタデータBがデータ受信装置2に入力されてくる。よって、メタデータの信号レベルはハイレベルを維持している。よって、ステップS161の処理でYESであると判定されて、処理はステップS162に進む。上述したように、この段階でデータ受信装置2に入力されてくるメタデータは、再開メタデータBである。よって、そのメタデータ種別(図4参照)の内容から、再開メタデータと特定されることになる。これにより、ステップS162の処理でYESであると判定されて、処理はステップS163に進む。ステップS163の処理で、再開メタデータBのデータ源情報(図4参照)の内容から、データ源12が特定され、その結果、出力先として出力先14が特定される。
これにより、出力先14にはデータ再開が通知されることになる。そして、ステップS165乃至S167のループ処理が繰り返されることで、時刻t8乃至時刻t9の期間にデータ受信装置12に順次伝送されてくる実データb-2は、出力先14に順次転送されることになる。なお、図19のAに示されるように、メタデータの信号レベルは、時刻t8になるとハイレベルからローレベルに切り替わり、ローレベルを維持する。
その後、時刻t9になると、メタデータの信号レベルはローレベルからハイレベルに切り替わる。よって、ステップS167の処理でYESであると判定されて、処理はステップS168に進む。時刻t9以降到達するメタデータは終了メタデータBである。よって、そのメタデータ種別(図4参照)の内容から、終了メタデータと特定されることになる。これにより、ステップS168の処理でYESであると判定されて、処理はステップS169に進む。ステップS169の処理で、終了メタデータBのデータ源情報(図4参照)の内容から、データ源12が特定され、その結果、出力先として出力先14が特定される。これにより、ステップS170の処理で、出力先14にはデータ終了が通知されることになる。
以上、図17の例のデータ送信処理と、図20の例のデータ受信処理とについて説明した。
以上説明したように、図1の情報処理システムは、様々なデータ送信処理とデータ受信処理を実行できる。よって、図1の情報処理システムは、[発明が解決しようとする課題]の欄で上述した従来の問題点(以下、従来の第1の問題点と称する)を解決できる、という第1の効果を奏することが可能になる。
即ち、従来、連続した動画データのように実データのデータ長が不定である場合、データ送信装置側は、データ源から入力された実データをバッファリングしてデータ長を確定した上で、そのデータ長の情報含むヘッダを生成していた。即ち、従来、データ送信装置内にバッファが必要になるという問題があった。この問題こそが、従来の第1の問題点である。
これに対して、図1の情報処理システムのデータ送信装置1は、データ源11からの実データの送信タイミングを、上述した各種例のフローチャートに従って制御できるので、データ源11からの実データをバッファリングする必要がなくなる。即ち、従来必要であったバッファは、データ送信装置1の構成要素として特に不要である、という第1の効果を奏することが可能になる。
また、図1の情報処理システムのデータ送信装置1は、開始メタデータや終了メタデータの伝送タイミングを示す制御信号、即ち、メタデータフラグを用いて、実データの送信タイミングを制御することができる。このようなメタデータフラグは、制御信号線42という信号線1本のみで伝送することが可能である。また、このようなメタデータフラグは、CPUを用いなくても専用のハード基板等で処理することが可能な信号である。よって、次のような従来の第2の問題点も解決できる、という第2の効果をすることが可能になる。
即ち、連続した動画データのように実データのデータ長が不定である場合、実データの開始と終了を通知する必要がある。従来、開始と終了を通知する信号を用いる場合があった。しかしながら、このような場合には、データ送信装置からデータ受信装置の間の信号線が2本も増える、という問題が生じてしまう。また、データ送信装置とデータ受信装置の双方にCPUが搭載されていれば、両CPU間でこのような信号の授受が可能になる。しかしながら、この場合、CPUの処理負荷が増えるという問題が生じてしまう。さらに言えば、そもそも部品数削減等の理由からCPUが搭載されていないこともありえて、CPUに依存できる保証がないという問題も生じてしまう。このような問題点が、従来の第2の問題点である。
さらに、例えば、図1の情報処理システムは、データ送信処理として図11および図12の例を採用し、データ受信処理として図15および図16の例を採用することで、上述した第1の効果や第2の効果を奏することは勿論のこと、次のような第3の効果や第4の効果を奏することが可能になる。
従来から、データ送信装置に対してデータ源が複数あり、各データ源からのデータを時分割でデータバスにより送信する技術は存在した。しかしながら、この従来の技術を具現化するためには、データ源を識別する必要があり、従来、データ源を識別する識別信号を用いる場合があった。このような場合、かかる識別信号を伝送する信号線が複数本必要になり、信号線が増える、という問題点(以下、従来の第3の問題点と称する)があった。このような従来の第3の問題点を解決できる効果が、第3の効果である。
即ち、図1の情報処理システムのデータ送信装置1は、複数のデータ源を識別する識別情報についてはメタデータに格納した上で、このメタデータの伝送タイミングを示す制御信号、即ち、メタデータフラグのみを用いている。このメタデータフラグは、上述したように、制御信号線42という信号線1本のみで伝送することが可能である。よって、従来の第3の問題点も解決できる、という第3の効果をすることが可能になる。
また、従来でも、複数のデータ源に優先/非優先の区別があり、データ送信装置が非優先データ送信中に、優先データ源に優先データがあった場合、優先データを優先して送信するという優先制御を行っていた。このような優先制御を行うためには、非優先データの送信を中断した上で、優先データの送信を開始する必要がある。従って、データ送信装置からデータ受信装置に対して、非優先データから優先データに切り換えた旨の通知が必要になる。同様に、優先データから非優先データに切り換えた旨の通知も必要になる。よって、このような場合には、データ送信装置からデータ受信装置の間の信号線が2本も増える、という問題が生じてしまう。また、従来の第2の問題点で述べたように、CPUを用いる場合を考えると、従来の第2の問題点と同様の問題も生じてしまう。このような問題点を総称して、従来の第4の問題点と称する。この場合、従来の第4の問題点を解決できる効果が、第4の効果である。
即ち、図1の情報処理システムのデータ送信装置1は、このような優先/非優先の切替制御は、中断メタデータと再開メタデータを用いて行っている。そして、図1の情報処理システムのデータ送信装置1は、中断メタデータと再開メタデータの伝送タイミングを示す制御信号、即ち、メタデータフラグのみを用いている。このメタデータフラグは、上述したように、制御信号線42という信号線1本のみで伝送することが可能である。よって、従来の第4の問題点も解決できる、という第4の効果をすることが可能になる。
ところで、上述した一連の処理は、ハードウエアにより実行させることもできるが、ソフトウエアにより実行させることができる。
この場合、上述した情報処理システムの少なくとも一部として、例えば、図21に示されるパーソナルコンピュータを採用してもよい。
図21において、CPU(Central Processing Unit)101は、ROM(Read Only Memory)102に記録されているプログラム、または記憶部108からRAM(Random Access Memory)103にロードされたプログラムに従って各種の処理を実行する。RAM103にはまた、CPU101が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU101、ROM102、およびRAM103は、バス104を介して相互に接続されている。このバス104にはまた、入出力インタフェース105も接続されている。
入出力インタフェース105には、キーボード、マウスなどよりなる入力部106、ディスプレイなどよりなる出力部107、ハードディスクなどより構成される記憶部108、および、モデム、ターミナルアダプタなどより構成される通信部109が接続されている。通信部109は、インターネットを含むネットワークを介して他の装置(図示せず)との間で行う通信を制御する。
入出力インタフェース105にはまた、必要に応じてドライブ110が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどよりなるリムーバブルメディア111が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部108にインストールされる。
一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
このようなプログラムを含む記録媒体は、図21に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク(フロッピディスクを含む)、光ディスク(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク(MD(Mini-Disk)を含む)、もしくは半導体メモリなどよりなるリムーバブルメディア(パッケージメディア)111により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM102や、記憶部108に含まれるハードディスクなどで構成される。
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の処理装置や処理部により構成される装置全体を表すものである。
1 データ送信装置,2 データ受信装置,11,12 データ源,13,14 データ出力先,21 制御部,22 メタデータ生成部,23 メタデータ/実データ重畳部,31 メタデータ/実データ分離部,32 メタデータ解釈部,33 データ振り分け部,41 データバス,42 制御信号線, 101 CPU, 102 ROM, 103 RAM, 108 記録部, 109 通信部, 111 リムーバブルメディア