(57)【要約】【課題】フィルタグラフを用いた処理において、データストリームの処理時間を短縮する。【解決手段】データストリームのメディアタイプ、又は、データストリームに対する処理要求に対応した複数のフィルタグラフを、データストリームが入力される事前に全て生成するフィルタグラフ生成工程Ｓ１１と、入力されたデータストリームのメディアタイプ、又は、データストリームに対する処理要求に応じて、フィルタグラフ生成工程Ｓ１１によって生成された複数のフィルタグラフの中から適合するフィルタグラフを検索するフィルタグラフ検索工程Ｓ１２乃至Ｓ１８と、フィルタグラフ検索工程Ｓ１２乃至Ｓ１８によって検索されたフィルタグラフを用いて、入力されたデータストリームの処理をするフィルタグラフ処理工程Ｓ１９とを備えることで実現する。【選択図】  図３
2004312313.tif 000002
【特許請求の範囲】
【請求項１】
それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを用いるデータ処理装置であって、
上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応した複数のフィルタグラフを、上記データストリームが入力される事前に全て生成するフィルタグラフ生成手段と、
入力された上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成手段によって生成された複数のフィルタグラフの中から適合するフィルタグラフを検索するフィルタグラフ検索手段と、
上記フィルタグラフ検索手段によって検索されたフィルタグラフを用いて、上記入力されたデータストリームの処理をするフィルタグラフ処理手段とを備えること
を特徴とするデータ処理装置。
【請求項２】
上記フィルタグラフ検索手段によって検索された上記フィルタグラフを複製するフィルタグラフ複製手段を備え、
上記フィルタグラフ検索手段で検索されたフィルタグラフが、上記フィルタグラフ処理手段での上記データストリームの処理に既に使用されている場合、上記フィルタグラフ処理手段は、上記フィルタグラフ複製手段で複製された上記フィルタグラフを上記入力されたデータストリームの処理に用いること
を特徴とする請求項１記載のデータ処理装置。
【請求項３】
それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを用いるデータ処理装置と、上記データ処理装置に接続される外部装置とを備えるデータ処理システムであって、
上記外部装置は、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応した複数のフィルタグラフを、上記データストリームが、上記データ処理装置に入力される事前に全て生成するフィルタグラフ生成手段と、上記データ処理装置に入力された上記データストリームのメディアタイプ、又は上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成手段によって当該外部装置に生成された複数のフィルタグラフの中から適合するフィルタグラフを検索するフィルタグラフ検索手段とを有し、
上記データ処理装置は、上記フィルタグラフ検索手段で検索されたフィルタグラフを複製するフィルタグラフ複製手段と、上記フィルタグラフ複製手段によって複製されたフィルタグラフを用いて、上記入力されたデータストリームの処理をするフィルタグラフ処理手段とを有すること
を特徴とするデータ処理システム。
【請求項４】
それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを用いるデータ処理装置と、上記データ処理装置に接続される外部装置とを備えるデータ処理システムであって、
上記外部装置は、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応した複数のフィルタグラフを、上記データストリームが、上記データ処理装置に入力される事前に全て生成するフィルタグラフ生成手段とを有し、
上記データ処理装置は、入力された上記データストリームのメディアタイプ、又は上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成手段によって上記外部装置に生成された複数のフィルタグラフの中から適合するフィルタグラフを検索するフィルタグラフ検索手段と、上記フィルタグラフ検索手段で検索されたフィルタグラフを複製するフィルタグラフ複製手段と、上記フィルタグラフ複製手段によって複製されたフィルタグラフを用いて、上記入力されたデータストリームの処理をするフィルタグラフ処理手段とを備えること
を特徴とするデータ処理システム。
【請求項５】
それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応して、上記データストリームが入力される事前に全て生成するフィルタグラフ生成工程と、
入力された上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成工程によって生成された複数のフィルタグラフの中から適合するフィルタグラフを検索するフィルタグラフ検索工程と、
上記フィルタグラフ検索工程によって検索されたフィルタグラフを用いて、上記入力されたデータストリームの処理をするフィルタグラフ処理工程とを備えること
を特徴とするデータ処理方法。
【請求項６】
さらに、上記フィルタグラフ検索工程によって検索された上記フィルタグラフを複製するフィルタグラフ複製工程を備え、
上記フィルタグラフ処理工程は、上記フィルタグラフ検索工程で検索されたフィルタグラフが、上記フィルタグラフ処理工程での上記データストリームの処理に既に使用されている場合、上記フィルタグラフ複製工程で複製された上記フィルタグラフを上記入力されたデータストリームの処理に用いること
を特徴とする請求項５記載のデータ処理方法。
【請求項７】
それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応して、上記データストリームが第１の装置に入力される事前に、上記第１の装置に接続された第２の装置に全て生成させるフィルタグラフ生成工程と、
上記第１の装置に入力された上記データストリームのメディアタイプ、又は上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成工程によって生成された複数のフィルタグラフの中から適合するフィルタグラフを第２の装置に検索させるフィルタグラフ検索工程と、
上記フィルタグラフ検索工程で検索されたフィルタグラフを第１の装置で複製させるフィルタグラフ複製工程と、
上記フィルタグラフ複製工程によって複製されたフィルタグラフを用いて、上記第１の装置に入力されたデータストリームを上記第１の装置で処理させるフィルタグラフ処理工程とを備えること
を特徴とするデータ処理方法。
【請求項８】
それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応して、上記データストリームが第１の装置に入力される事前に、上記第１の装置に接続された第２の装置に全て生成させるフィルタグラフ生成工程と、
上記第１の装置に入力された上記データストリームのメディアタイプ、又は上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成工程によって生成された複数のフィルタグラフの中から適合するフィルタグラフを第１の装置に検索させるフィルタグラフ検索工程と、
上記フィルタグラフ検索工程で検索されたフィルタグラフを第１の装置で複製させるフィルタグラフ複製工程と、
上記フィルタグラフ複製工程によって複製されたフィルタグラフを用いて、上記第１の装置に入力されたデータストリームを上記第１の装置で処理させるフィルタグラフ処理工程とを備えること
を特徴とするデータ処理方法。
【請求項９】
それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応して、上記データストリームが入力される事前に全て生成するフィルタグラフ生成工程と、
入力された上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成工程によって生成された複数のフィルタグラフの中から適合するフィルタグラフを検索するフィルタグラフ検索工程と、
上記フィルタグラフ検索工程によって検索されたフィルタグラフを用いて、上記入力されたデータストリームの処理をするフィルタグラフ処理工程とをコンピュータに実行させるためのプログラム。
【請求項１０】
上記フィルタグラフ検索工程によって検索された上記フィルタグラフを複製するフィルタグラフ複製工程と、
上記フィルタグラフ検索工程で検索されたフィルタグラフが、上記フィルタグラフ処理工程での上記データストリームの処理に既に使用されている場合、上記フィルタグラフ複製工程で複製された上記フィルタグラフを上記入力されたデータストリームの処理に用いる上記フィルタグラフ処理工程とをコンピュータに実行させるための請求項９記載のプログラム。
【請求項１１】
それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応して、上記データストリームが第１の装置に入力される事前に、上記第１の装置に接続された第２の装置に全て生成させるフィルタグラフ生成工程と、
上記第１の装置に入力された上記データストリームのメディアタイプ、又は上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成工程によって生成された複数のフィルタグラフの中から適合するフィルタグラフを第２の装置に検索させるフィルタグラフ検索工程と、
上記フィルタグラフ検索工程で検索されたフィルタグラフを第１の装置で複製させるフィルタグラフ複製工程と、
上記フィルタグラフ複製工程によって複製されたフィルタグラフを用いて、上記第１の装置に入力されたデータストリームを上記第１の装置で処理させるフィルタグラフ処理工程とをコンピュータに実行させるためのプログラム。
【請求項１２】
それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応して、上記データストリームが第１の装置に入力される事前に、上記第１の装置に接続された第２の装置に全て生成させるフィルタグラフ生成工程と、
上記第１の装置に入力された上記データストリームのメディアタイプ、又は上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成工程によって生成された複数のフィルタグラフの中から適合するフィルタグラフを第１の装置に検索させるフィルタグラフ検索工程と、
上記フィルタグラフ検索工程で検索されたフィルタグラフを第１の装置で複製させるフィルタグラフ複製工程と、
上記フィルタグラフ複製工程によって複製されたフィルタグラフを用いて、上記第１の装置に入力されたデータストリームを上記第１の装置で処理させるフィルタグラフ処理工程とをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、フィルタグラフアーキテクチャに関するものであり、詳しくは、フィルタグラフアーキテクチャに基づいて、データストリームの処理をするデータ処理装置、データ処理システム、データ処理方法及びプログラムに関する。
【０００２】
【従来の技術】
ビデオデータや、オーディオデータといったマルチメディアデータの処理において、フィルタグラフアーキテクチャに基づいた処理が提案されている（例えば、特許文献１参照。）。
【０００３】
フィルタグラフアーキテクチャに基づいて、マルチメディアデータのデータストリームを何らかの手法で再生、記録、キャプチャ、ブロードキャストなどといった処理をする場合、各処理をステップに分割したフィルタと呼ばれる処理ステップを接続してフィルタグラフというを構成を構築し、構築されたフィルタグラフに基づいて処理ステップを実行することで、マルチメディアデータに対する所定の処理が実行できる。
【０００４】
フィルタグラフを用いると、様々なメディアフォーマットのマルチメディアデータの処理が処理ステップであるフィルタを入れ替えることで簡単に実現することができる。フィルタを具体的に示すと、例えば、ＴＶチューナフィルタは、ＴＶキャプチャカード上のチャンネルを変更し、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）−２スプリッタフィルタは、ＭＰＥＧストリームのオーディオデータ、ビデオデータをデコードできるように解析したりする。各フィルタは、他のフィルタと接続するための１つの入力ポートと、１つ以上の出力ポートを備えている。
【０００５】
上記特許文献１では、フィルタグラフアーキテクチャに基づいたマルチメディアデータの処理として、以下に示す４つの手法が提案されている。
【０００６】
１．処理をするデータストリームのメディアタイプに対して、適合するフィルタグラフができるまで、可能性のあるフィルタを順番に接続させ逐次的に試していくという手法。
【０００７】
２．“Ｍｅｒｉｔ  Ｆｉｇｕｒｅ”というグラフ理論で用いられる概念を用いて生成されたフィルタグラフから、与えられたメディアのメディアタイプに適切なフィルタグラフを選びこれによって接続するという手法。
【０００８】
３．フィルタをメディアタイプに適合するフィルタグラフのテーブルを生成し、そのテーブルをもとに、与えられたメディアに適合するフィルタグラフを接続し構築するという手法。
【０００９】
４．フィルタをメディアタイプに適合するフィルタグラフのリストを作り、そのリストをもとに与えられたメディアに適合するフィルタグラフを接続し、構築するという手法。
【００１０】
【特許文献１】
米国特許第５９１３０３８号明細書
【００１１】
【発明が解決しようとする課題】
しかし、上記特許文献１で提案された４つ手法は、いずれもマルチメディアデータのメディアタイプが識別されてから、フィルタを組み合わせてフィルタグラフが構築されているため、フィルタグラフ構築までに多くの時間が費やされてしまい、本来の目的であるデータストリームの処理が完了するまで非常に多くの処理時間がかかってしまうといった問題がある。
【００１２】
そこで、本発明は上述したような問題を解決するために案出されたものであり、フィルタグラフを用いた、データストリームの処理時間を短縮するデータ処理装置、データ処理システム、データ処理方法、及びプログラムを提供することを目的とする。
【００１３】
【課題を解決するための手段】
上述の目的を達成するために、本発明に係るデータ処理装置は、それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを用いるデータ処理装置であって、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応した複数のフィルタグラフを、上記データストリームが入力される事前に全て生成するフィルタグラフ生成手段と、入力された上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成手段によって生成された複数のフィルタグラフの中から適合するフィルタグラフを検索するフィルタグラフ検索手段と、上記フィルタグラフ検索手段によって検索されたフィルタグラフを用いて、上記入力されたデータストリームの処理をするフィルタグラフ処理手段とを備えることを特徴とする。
【００１４】
上述の目的を達成するために、本発明に係るデータ処理システムは、それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを用いるデータ処理装置と、上記データ処理装置に接続される外部装置とを備えるデータ処理システムであって、上記外部装置は、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応した複数のフィルタグラフを、上記データストリームが、上記データ処理装置に入力される事前に全て生成するフィルタグラフ生成手段と、上記データ処理装置に入力された上記データストリームのメディアタイプ、又は上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成手段によって当該外部装置に生成された複数のフィルタグラフの中から適合するフィルタグラフを検索するフィルタグラフ検索手段とを有し、上記データ処理装置は、上記フィルタグラフ検索手段で検索されたフィルタグラフを複製するフィルタグラフ複製手段と、上記フィルタグラフ複製手段によって複製されたフィルタグラフを用いて、上記入力されたデータストリームの処理をするフィルタグラフ処理手段とを有することを特徴とする。
【００１５】
上述の目的を達成するために、本発明に係るデータ処理システムは、それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを用いるデータ処理装置と、上記データ処理装置に接続される外部装置とを備えるデータ処理システムであって、上記外部装置は、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応した複数のフィルタグラフを、上記データストリームが、上記データ処理装置に入力される事前に全て生成するフィルタグラフ生成手段とを有し、上記データ処理装置は、入力された上記データストリームのメディアタイプ、又は上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成手段によって上記外部装置に生成された複数のフィルタグラフの中から適合するフィルタグラフを検索するフィルタグラフ検索手段と、上記フィルタグラフ検索手段で検索されたフィルタグラフを複製するフィルタグラフ複製手段と、上記フィルタグラフ複製手段によって複製されたフィルタグラフを用いて、上記入力されたデータストリームの処理をするフィルタグラフ処理手段とを備えることを特徴とする。
【００１６】
上述の目的を達成するために、本発明に係るデータ処理方法は、それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応して、上記データストリームが入力される事前に全て生成するフィルタグラフ生成工程と、入力された上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成工程によって生成された複数のフィルタグラフの中から適合するフィルタグラフを検索するフィルタグラフ検索工程と、上記フィルタグラフ検索工程によって検索されたフィルタグラフを用いて、上記入力されたデータストリームの処理をするフィルタグラフ処理工程とを備えることを特徴とする。
【００１７】
上述の目的を達成するために、本発明に係るデータ処理方法は、それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応して、上記データストリームが第１の装置に入力される事前に、上記第１の装置に接続された第２の装置に全て生成させるフィルタグラフ生成工程と、上記第１の装置に入力された上記データストリームのメディアタイプ、又は上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成工程によって生成された複数のフィルタグラフの中から適合するフィルタグラフを第２の装置に検索させるフィルタグラフ検索工程と、上記フィルタグラフ検索工程で検索されたフィルタグラフを第１の装置で複製させるフィルタグラフ複製工程と、上記フィルタグラフ複製工程によって複製されたフィルタグラフを用いて、上記第１の装置に入力されたデータストリームを上記第１の装置で処理させるフィルタグラフ処理工程とを備えることを特徴とする。
【００１８】
上述の目的を達成するために、本発明に係るデータ処理方法は、それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応して、上記データストリームが第１の装置に入力される事前に、上記第１の装置に接続された第２の装置に全て生成させるフィルタグラフ生成工程と、上記第１の装置に入力された上記データストリームのメディアタイプ、又は上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成工程によって生成された複数のフィルタグラフの中から適合するフィルタグラフを第１の装置に検索させるフィルタグラフ検索工程と、上記フィルタグラフ検索工程で検索されたフィルタグラフを第１の装置で複製させるフィルタグラフ複製工程と、上記フィルタグラフ複製工程によって複製されたフィルタグラフを用いて、上記第１の装置に入力されたデータストリームを上記第１の装置で処理させるフィルタグラフ処理工程とを備えることを特徴とする。
【００１９】
上述の目的を達成するために、本発明に係るプログラムは、それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応して、上記データストリームが入力される事前に全て生成するフィルタグラフ生成工程と、入力された上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成工程によって生成された複数のフィルタグラフの中から適合するフィルタグラフを検索するフィルタグラフ検索工程と、上記フィルタグラフ検索工程によって検索されたフィルタグラフを用いて、上記入力されたデータストリームの処理をするフィルタグラフ処理工程とをコンピュータに実行させる。
【００２０】
上述の目的を達成するために、本発明に係るプログラムは、それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応して、上記データストリームが第１の装置に入力される事前に、上記第１の装置に接続された第２の装置に全て生成させるフィルタグラフ生成工程と、上記第１の装置に入力された上記データストリームのメディアタイプ、又は上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成工程によって生成された複数のフィルタグラフの中から適合するフィルタグラフを第２の装置に検索させるフィルタグラフ検索工程と、上記フィルタグラフ検索工程で検索されたフィルタグラフを第１の装置で複製させるフィルタグラフ複製工程と、上記フィルタグラフ複製工程によって複製されたフィルタグラフを用いて、上記第１の装置に入力されたデータストリームを上記第１の装置で処理させるフィルタグラフ処理工程とをコンピュータに実行させる。
【００２１】
上述の目的を達成するために、本発明に係るプログラムは、それぞれが所定の処理を独立して実行するフィルタが複数接続されることでなり、データストリームに対して所定の処理を実行するフィルタグラフを、上記データストリームのメディアタイプ、又は、上記データストリームに対する処理要求に対応して、上記データストリームが第１の装置に入力される事前に、上記第１の装置に接続された第２の装置に全て生成させるフィルタグラフ生成工程と、上記第１の装置に入力された上記データストリームのメディアタイプ、又は上記データストリームに対する処理要求に応じて、上記フィルタグラフ生成工程によって生成された複数のフィルタグラフの中から適合するフィルタグラフを第１の装置に検索させるフィルタグラフ検索工程と、上記フィルタグラフ検索工程で検索されたフィルタグラフを第１の装置で複製させるフィルタグラフ複製工程と、上記フィルタグラフ複製工程によって複製されたフィルタグラフを用いて、上記第１の装置に入力されたデータストリームを上記第１の装置で処理させるフィルタグラフ処理工程とをコンピュータに実行させる。
【００２２】
【発明の実施の形態】
以下、本発明に係るデータ処理装置、データ処理システム、データ処理方法及びプログラムの実施の形態を図面を参照にして詳細に説明する。
【００２３】
図１を用いて、本発明の第１の実施の形態として示すデータ処理装置１について説明をする。データ処理装置１は、フィルタグラフアーキテクチャに基づいてビデオデータや、オーディオデータといったマルチメディアデータの処理が可能な装置である。
【００２４】
データ処理装置１は、クライアント処理部２と、フィルタグラフマネージャ３と、フィルタグラフマネージャ３によって生成されたフィルタグラフ１０ｎ（ｎは、自然数）とを備えている。
【００２５】
クライアント処理部２は、図示しないＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を備え、データ処理装置１を統括的に制御する。また、クライアント処理部２は、データストリームの入力、入力されたデータストリームのメディアタイプの判定処理、フィルタグラフマネージャ３の制御、入力されたデータストリームに対するユーザからの所定の処理命令の実行、入力されたデータストリームのフィルタグラフ１０ｎに基づく処理の制御などを実行する。
【００２６】
フィルタグラフマネージャ３は、データ処理装置１に入力されるデータストリームのメディアタイプに対応して所定の処理を実行するためのフィルタグラフ１０ｎ、又は、入力されるデータストリームへの処理種別に対応したフィルタグラフ１０ｎを生成する。
【００２７】
フィルタグラフマネージャ３は、データストリームのメディアタイプ、例えば、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）１，２，４，７のような動画像圧縮方式によって生成されたマルチメディアデータ、ＭＰ３（ＭＰＥＧ−１  ａｕｄｉｏ  ｌａｙｅｒ−３）のような音声圧縮方式によって生成されたマルチメディアデータというような違いに応じて、適切なフィルタを選択しフィルタグラフ１０ｎをあらかじめ生成する。フィルタグラフマネージャ３は、入力が想定されるメディアタイプのデータストリームに対応する全てのフィルタグラフを生成する。
【００２８】
また、フィルタグラフマネージャ３は、ユーザから要求される、例えば、記録処理、再生処理、キャプチャ処理、ブロードキャスト処理といった処理種別に応じて、適切なフィルタを選択してフィルタグラフをあらかじめ生成する。フィルタグラフマネージャ３は、ユーザからの要求が想定される全ての処理種別に対するフィルタグラフを生成する。
【００２９】
フィルタグラフ１０ｎを生成する場合、まず、入力が想定されるデータストリームのメディアタイプに応じて、フィルタが選択される。続く、フィルタには、直前で選択されたフィルタから出力されるデータストリームを入力可能なフィルタが選択される。このように、フィルタの入力と、出力とが対応するようにフィルタの組み合わが決定し、接続されることでフィルタグラフ１０ｎが生成される。
【００３０】
フィルタグラフ１０ｎの構成要素であるフィルタは、所定の処理を実行する独立したプログラム、又はデータ処理装置１に備えられたデバイスを制御するデバイスドライバである。このようなフィルタを構成要素とするフィルタグラフ１０ｎは、入力されるデータストリームに対して、上記プログラムによる処理をしたり、デバイスドライバによってデバイスを制御することで、所定の処理を実行することになる。
【００３１】
フィルタグラフ１０ｎの構成要素であるフィルタがデバイスドライバである場合、このデバイスドライバが制御するデバイスは、フィルタグラフ１０ｎ間で共通で使用する構成であってもかまわない。例えば、フィルタグラフ１０１に構成されているフィルタの１つがＴＶチューナのデバイスドライバであり、フィルタグラフ１０２にも同じＴＶチューナのデバイスドライバが構成されていても構わない。これによりＴＶチューナは、フィルタグラフ１０１と、フィルタグラフ１０２との間で共通に使用されることになる。
【００３２】
フィルタグラフマネージャ３によるフィルタグラフ１０ｎの生成は、データ処理装置１にデータストリームが入力される前に、あらかじめ行われる作業である。フィルタグラフマネージャ３によって生成されたフィルタグラフ１０ｎは、データ処理装置１に備えられている図示しない記憶装置に記憶されることになる。
【００３３】
続いて、図２に示すフローチャートを用いて、データ処理装置１に入力されるデータストリームの処理動作について説明をする。
【００３４】
ステップＳ１において、クライアント処理部２は、データ処理装置１に入力されたデータストリームのメディアタイプを判定する。
【００３５】
ステップＳ２において、フィルタグラフマネージャ３は、判定されたメディアタイプに適合するフィルタグラフ１０ｎを検索する。なお、フィルタグラフマネージャ３によるフィルタグラフ１０ｎの検索手法は、例えば、順番に適合するフィルタグラフ１０ｎを検索していく手法、二分検索木を用いてフィルタグラフ１０ｎを検索する手法、ハッシュマップを用いてフィルタグラフ１０ｎを検索する手法、連結リストを用いてフィルタグラフ１０ｎを検索する手法、テーブルを用いてフィルタグラフ１０ｎを検索する手法など、様々な検索手法が適用可能である。したがって、フィルタグラフ１０ｎの検索手法は、本発明を限定するものではない。
【００３６】
ステップＳ３において、フィルタグラフマネージャ３は、上記検索の結果、メディアタイプに適合するフィルタグラフ１０ｎを検索できた場合は工程をステップＳ４へと進め、適合するフィルタグラフ１０ｎを検索できなかった場合は工程をステップＳ２へと戻し再び検索を実行する。
【００３７】
ステップＳ４において、フィルタグラフマネージャ３は、適合するフィルタグラフ１０ｎをクライアント処理部２に通知する。これに応じて、クライアント処理部２は、適合するフィルタグラフ１０ｎに入力されたデータストリームの処理を実行させる。
【００３８】
なお、図２に示すフローチャートでは、入力されたデータストリームのメディアタイプをクライアント処理部２で判定処理をする場合について記載しているが、ユーザからデータ処理装置１に対して、なんらかの処理命令が入力された場合、クライアント処理部２で処理種別に応じて適切なフィルタグラフ１０ｎを検索させるようにしてもよい。
【００３９】
続いて、図３に示すタイミングチャートを用いて、データ処理装置１におけるデータストリームの処理動作について具体的に説明をする。なお、説明のため、ここでの処理動作は、ユーザからの処理命令が入力されず、データストリームが入力されたことに応じて、メディアタイプを判定する場合の処理動作とし、検索処理は、複数のフィルタグラフ１０ｎから順次、適切なフィルタグラフを検索していく検索手法を用いている。
【００４０】
ステップＳ１１において、フィルタグラフマネージャ３は、入力が予想されるデータストリームのメディアフォーマットに応じたフィルタグラフ１０ｎ、及び、ユーザから要求されるであろう処理種別に応じたフィルタグラフ１０ｎを全てを生成しておく。
【００４１】
ステップＳ１２において、クライアント処理部２は、入力されるデータストリームのメディアタイプを判定する。
【００４２】
ステップＳ１３において、クライアント処理部２は、フィルタグラフマネージャ３に対して、判定されたメディアタイプに適合するフィルタグラフ１０ｎを検索するよう指示する。
【００４３】
ステップＳ１４において、フィルタグラフマネージャ３は、フィルタグラフ１０１がデータストリームのメディアタイプに適合するかどうかを判定する。
【００４４】
ステップＳ１５において、フィルタグラフマネージャ３は、フィルタグラフ１０１がデータストリームのメディアタイプに適合しないと判定する。
【００４５】
ステップＳ１６において、フィルタグラフマネージャ３は、フィルタグラフ１０２がデータストリームのメディアタイプに適合するかどうかを判定する。
【００４６】
ステップＳ１７において、フィルタグラフマネージャ３は、フィルタグラフ１０２がデータストリームのメディアタイプに適合すると判定する。
【００４７】
ステップＳ１８において、フィルタグラフマネージャ３は、フィルタグラフ１０２がデータストリームのメディアタイプに適合するフィルタグラフであることをクライアント処理部２に通知する。
【００４８】
ステップＳ１９において、クライアント処理部２は、フィルタグラフ１０２を用いて、データ処理装置１に入力されたデータストリームの処理を実行する。
【００４９】
このように、データ処理装置１のフィルタグラフマネジャ３は、あらかじめフィルタグラフ１０ｎを生成しておき、入力されたデータストリームのメディアタイプ、又は、ユーザからの処理要求に応じて、適合するフィルタグラフ１０ｎを検索する。そして、データ処理装置１のクライアント処理部２は、フィルタグラフマネジャ３によって検索されらフィルタグラフを用いて、入力されたデータストリームに対して所定の処理を実行する。
【００５０】
続いて、データ処理装置１で、同時刻に同じフィルタグラフ１０ｎを用いた処理をする場合について考える。例えば、ＭＰＥＧ２の圧縮画像データを処理可能な、データ処理装置１において、モニタ画面上に同時に２つの動画像を表示させる場合がある。このような場合、ＭＰＥＧ２データを同時刻で処理するためには、同じフィルタグラフ１０ｎが２つ必要となる。
【００５１】
そこで、図４に示すフローチャートを用いて、同時刻に同じフィルタグラフ１０ｎを用いた処理をする場合のデータ処理装置１の動作について説明をする。
【００５２】
ステップＳ３１において、クライアント処理部２は、データ処理装置１に入力されるデータストリームのメディアタイプを判定する。
【００５３】
ステップＳ３２において、フィルタグラフマネージャ３は、メディアタイプに適合するフィルタグラフ１０ｎを検索する。なお、フィルタグラフマネージャ３によるフィルタグラフ１０ｎの検索手法は、例えば、順番に適合するフィルタグラフ１０ｎを検索していく手法、二分検索木を用いてフィルタグラフ１０ｎを検索する手法、ハッシュマップを用いてフィルタグラフ１０ｎを検索する手法、連結リストを用いてフィルタグラフ１０ｎを検索する手法、テーブルを用いてフィルタグラフ１０ｎを検索する手法など、様々な検索手法が適用可能である。したがって、フィルタグラフ１０ｎの検索手法は、本発明を限定するものではない。
【００５４】
ステップＳ３３において、フィルタグラフマネージャ３は、上記検索の結果、メディアタイプに適合するフィルタグラフ１０ｎを検索できた場合は工程をステップＳ３４へと進め、適合するフィルタグラフ１０ｎを検索できなかった場合は工程をステップＳ３２へと戻し再び検索を実行する。
【００５５】
ステップＳ３４において、フィルタグラフマネージャ３は、メディアタイプの適合したフィルタグラフ１０ｎが、当該データ処理装置１において既に使用中であるかどうかを判定する。使用中でない場合は工程をステップＳ３５へと進め、使用中である場合は工程をステップＳ３６へと進める。
【００５６】
ステップＳ３５において、フィルタグラフマネージャ３は、適合するフィルタグラフ１０ｎをクライアント処理部２に通知する。これに応じて、クライアント処理部２は、適合するフィルタグラフ１０ｎに入力されたデータストリームの処理を実行させる。
【００５７】
ステップＳ３６において、フィルタグラフマネージャ３は、適合するフィルタグラフ１０ｎを複製（コピー）する。
【００５８】
ステップＳ３７において、フィルタグラフマネージャ３は、複製したフィルタグラフ１０ｎを適合するフィルタグラフとしてクライアント処理部２に通知する。これに応じて、クライアント処理部２は、メディアタイプの適合するフィルタグラフ１０ｎの複製に、当該データ処理装置１に入力されたデータストリームの処理を実行させる。
【００５９】
なお、図４に示すフローチャートでは、入力されたデータストリームのメディアタイプをクライアント処理部２で判定処理をする場合について記載しているが、ユーザからデータ処理装置１に対して、なんらかの処理命令が入力された場合、クライアント処理部２で処理種別に応じて適切なフィルタグラフ１０ｎを検索させるようにしてもよい。
【００６０】
続いて、図５に示すタイミングチャートを用いて、同時刻に同じフィルタグラフ１０ｎが要求される場合のデータ処理装置１のデータストリームの処理動作について具体的に説明をする。なお、説明のため、ここでの処理動作は、ユーザからの処理命令が入力されず、データストリームが入力されたことに応じて、メディアタイプを判定する場合の処理動作とし、検索処理は、複数のフィルタグラフ１０ｎから順次、適切なフィルタグラフを検索していく検索手法を用いている。
【００６１】
ステップＳ４１において、フィルタグラフマネージャ３は、入力が予想されるデータストリームのメディアフォーマットに応じたフィルタグラフ１０ｎ、及び、ユーザから要求されるであろう処理種別に対応したフィルタグラフ１０ｎを全てを生成しておく。
【００６２】
ステップＳ４２において、クライアント処理部２は、入力されるデータストリームのメディアタイプを判定する。
【００６３】
ステップＳ４３において、クライアント処理部２は、フィルタグラフマネージャ３に対して、判定されたメディアタイプに適合するフィルタグラフ１０ｎを検索するよう指示する。
【００６４】
ステップＳ４４において、フィルタグラフマネージャ３は、フィルタグラフ１０１がデータストリームのメディアタイプに適合するかどうかを判定する。
【００６５】
ステップＳ４５において、フィルタグラフマネージャ３は、フィルタグラフ１０１がデータストリームのメディアタイプに適合しないと判定する。
【００６６】
ステップＳ４６において、フィルタグラフマネージャ３は、フィルタグラフ１０２がデータストリームのメディアタイプに適合するかどうかを判定する。
【００６７】
ステップＳ４７において、フィルタグラフマネージャ３は、フィルタグラフ１０２がデータストリームのメディアタイプに適合すると判定する。
【００６８】
ステップＳ４８において、フィルタマネージャ３は、フィルタグラフ１０２が、当該データ処理装置１で既に使用中であるかどうかを判定する。
【００６９】
ステップＳ４９において、フィルタマネージャ３は、ステップＳ４８における判定結果に応じて、フィルタグラフ１０２のコピー、フィルタグラフ１０２ｃを生成する。
【００７０】
ステップＳ５０において、フィルタグラフマネージャ３は、コピーされたフィルタグラフ１０２ｃをデータストリームのメディアタイプに適合するフィルタグラフとしてクライアント処理部２に通知する。
【００７１】
ステップＳ５１において、クライアント処理部２は、フィルタグラフ１０２ｃを用いて、データ処理装置１に入力されたデータストリームの処理を実行させる。
【００７２】
このように、データ処理装置１に入力されるデータストリームのメディアタイプに適合するフィルタグラフ１０ｎが既に使用されている場合、フィルタグラフマネージャ３は、適合するフィルタグラフ１０ｎをコピーして、データストリームの処理に用いる。
【００７３】
続いて、図６を用いて、本発明の第２の実施の形態として示す外部装置２１が接続されたデータ処理装置１１について説明をする。本発明の第２の実施の形態では、あらかじめ用意しておくフィルタグラフを当該データ処理装置１１に接続された外部装置２１に構築する。
【００７４】
データ処理装置１１に接続されている外部装置２１は、例えば、ネットワーク網上に接続されたサーバや、ＨＤ（Ｈａｒｄ  Ｄｉｓｋ）などである。外部装置２１がサーバである場合は、データ処理装置１１及び外部装置２１には、所定の図示しないネットワークインターフェースが備えられており、データ処理装置１１と、外部装置２１とは、ネットワーク網を介して接続されることになる。また、外部装置２１が、ＨＤである場合には、データ処理装置１１と、外部装置２１とは所定の接続インタフェースを介して接続される。
【００７５】
データ処理装置１１は、クライアント処理部１２と、フィルタグラフ・リポジトリクライアント１３とを備えている。
【００７６】
クライアント処理部１２は、図示しないＣＰＵを備え、データ処理装置１１を統括的に制御する。なお、クライアント処理部１２は、図１を用いて説明した本発明の第１の実施の形態として示すデータ処理装置１のクライアント処理部２と全く同様の機能であるため説明を省略をする。
【００７７】
フィルタグラフ・リポジトリクライアント１３は、外部装置２１が備える後述するフィルタグラフ・リポジトリサーバ２２を介して、データ処理装置１１に入力されるデータストリームのメディアタイプに適合したフィルタグラフ、又は、入力されるデータストリームへの処理種別に適合したフィルタグラフを取得する。
【００７８】
フィルタグラフ・リポジトリクライアント１３は、外部装置２１が、データ処理装置１１のクライアント処理部１２が備える図示しないＣＰＵに対して、独立した制御を実行できるＣＰＵを備えている場合、データ処理装置１１に入力されるデータストリームを処理するためのフィルタグラフの検索処理を外部装置２１に要求する。
【００７９】
また、外部装置２１が、上述したようなＣＰＵを備えていない場合、フィルタグラフ・リポジトクライアント１３は、データ処理装置１１に入力されるデータストリームを処理するためのフィルタグラフの検索処理を自らが実行する。
【００８０】
さらに、フィルタグラフ・リポジトクライアント１３は、後で詳細に述べるように、外部装置２１がフィルタグラフをシリアライズされたデータとして保持している場合、シリアライズされているフィルタグラフをデシリアライズして、ソフトウェアで扱える形式に変換する。
【００８１】
データ処理装置１１に接続される外部装置２１は、フィルタグラフ・リポジトリサーバ２２と、複数のフィルタグラフ２３ｎ（ｎは、自然数）とを備えている。
【００８２】
フィルタグラフ・リポジトリサーバ２２は、当該外部装置２１と接続されているデータ処理装置１１に入力されるデータストリームのメディアタイプに対応して所定の処理を実行するためのフィルタグラフ２３ｎ、又は、入力されるデータストリームへの処理種別に対応したフィルタグラフ２３ｎを生成する。フィルタグラフ・リポジトリサーバ２２における、フィルタグラフの生成に関しては、上述したデータ処理装置１に備えられたフィルタグラフマネージャ３と全く同様であるため説明を省略をする。
【００８３】
外部装置２１は、、データ処理装置１１のクライアント処理部１２が備えるＣＰＵとは別に、当該外部装置２１における動作を統括的に制御するＣＰＵなどを備えている場合がある。例えば、このような外部装置２１は、ネットワークを介してデータ処理装置１１と接続されるサーバ装置などである。サーバ装置などの外部装置２１が備えるフィルタグラフ・リポジトサーバ２２は、データ処理装置１１が備えるフィルタグラフ・リポジトリクライアント１３からのフィルタグラフ検索要求に応じて、適合するフィルタグラフ２３ｎを検索する。
【００８４】
また、外部装置２１が、上述したのとは逆に、当該外部装置２１を制御するＣＰＵを備えていない、例えば、ＨＤなどである場合には、フィルタグラフ２３ｎの検索処理は、データ処理装置１１のフィルタグラフク・リポジトリクライアント１３によって実行されることになる。このように外部装置２１がＨＤのような装置である場合には、データをファイルとして扱うために、構築されたフィルタグラフ２３ｎが、いわゆるシリアライズされて記憶媒体に記憶される。シリアライズされたデータは、そのままでは処理することができないため、上述したように、フィルタグラフ・リポジトリクライアント１３による検索処理の際にデシリアライズされる。
【００８５】
次に、本発明の第２の実施の形態として示すデータ処理装置に接続された外部装置２１が、当該情報処理装置１１に対して、独立した動作を可能とするＣＰＵが備えられている場合における、データストリームの処理動作について説明をする。
【００８６】
まず、図７に示すフローチャートを用いて、ＣＰＵを備えた外部装置２１が接続されたデータ処理装置１１の動作について説明をする。
【００８７】
ステップＳ６１において、クライアント処理部１２は、データ処理装置１１に入力されたデータストリームのメディアタイプを判定する。
【００８８】
ステップＳ６２において、フィルタグラフ・リポジトリクライアント１３は、外部装置２１が備えるフィルタグラフ・リポジトリサーバ２２に対して、メディアタイプに適合するフィルタグラフ２３ｎを検索するように指示する。
【００８９】
ステップＳ６３において、フィルタラフ・リポジトリクライアント１３は、フィルタグラフ・リポジトリサーバ２２で、メディアタイプに適合するフィルタグラフ２３ｎが検索されたことに応じて、検索されたフィルタグラフ２３ｎを複製（コピー）する。
【００９０】
ステップＳ６４において、フィルタグラフ・リポジトリクライアント１３は、複製したフィルタグラフ２３ｎを適合するフィルタグラフとしてクライアント処理部１２に通知する。これに応じて、クライアント処理部１２は、適合するフィルタグラフ２３ｎの複製に対して、入力されたデータストリームの処理を実行させる。
【００９１】
次に、図８に示すフローチャートを用いて、図７で示したデータ処理装置１１に接続された外部装置２１が備えるフィルタグラフ・リポジトリサーバ２２の動作について説明をする。
【００９２】
ステップＳ７１において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ・リポジトリクライアント１３からのフィルタグラフ検索命令の待機状態にある。
【００９３】
ステップＳ７２において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ・リポジトリクライアント１３からメディアタイプに適応するフィルタグラフ２３ｎを検索するよう指示された場合、工程をステップＳ７３へと進め、フィルタグラフ検索命令がこない場合は、ステップＳ７１の工程を継続する。
【００９４】
ステップＳ７３において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ検索命令に応じて、メディアタイプに適合するフィルタグラフ２３ｎを検索する。なお、フィルタグラフ２３ｎの検索手法は、例えば、順番に適合するフィルタグラフ２３ｎを検索していく手法、二分検索木を用いてフィルタグラフを検索する手法、ハッシュマップを用いてフィルタグラフ２３ｎを検索する手法、連結リストを用いてフィルタグラフ２３ｎを検索する手法、テーブルを用いてフィルタグラフ２３ｎを検索する手法など、様々な検索手法が適用可能である。したがって、フィルタグラフ２３ｎの検索手法は、本発明を限定するものではない。
【００９５】
ステップＳ７４において、フィルタグラフ・リポジトリサーバ２２は、上記検索の結果、メディアタイプに適合するフィルタグラフ２３ｎを検索できた場合は工程をステップＳ７５へと進め、適合するフィルタグラフ２３ｎを検索できなかった場合は工程をステップＳ７３へと戻し再び検索を実行する。
【００９６】
ステップＳ７５において、フィルタグラフ・リポジトリサーバ２２は、適合するフィルタグラフ２３ｎをフィルタグラフ・リポジトリクライアント１３に通知し、フィルタグラフ・リポジトリクライアント１３に検索したフィルタグラフ２３ｎを複製させる。
【００９７】
続いて、図９に示すタイミングチャートを用いて、データ処理装置１１と、データ処理装置１１に接続されたＣＰＵを備える外部装置２１とによるデータストリームの処理動作について具体的に説明をする。なお、説明のため、ここでの処理動作は、ユーザからの処理命令が入力されず、データストリームが入力されたことに応じてメディアタイプを判定する場合の処理動作とし、検索処理は、複数のフィルタグラフ２３ｎから順次、適切なフィルタグラフを検索していく検索手法を用いている。
【００９８】
ステップＳ８１において、フィルタグラフ・リポジトリサーバ２２は、入力が予想されるデータストリームのメディアフォーマットに応じたフィルタグラフ２３ｎ、及びユーザから要求されるであろう処理種別に応じたフィルタグラフ２３ｎを全て生成しておく。
【００９９】
ステップＳ８２において、クライアント処理部１２は、入力されるデータストリームのメディアタイプを判定する。
【０１００】
ステップＳ８３において、クライアント処理部１２は、フィルタグラフ・リポジトリクライアント１３に対して、メディアタイプに適合するフィルタグラフ２３ｎを検索するよう指示する。
【０１０１】
ステップＳ８４において、フィルタグラフ・リポジトリクライアント１３は、フィルタグラフ・リポジトリサーバ２２に対して、メディアタイプに適合するフィルタグラフ２３ｎを検索するよう指示をする。
【０１０２】
ステップＳ８５において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ２３１がデータストリームのメディアタイプに適合するかどうか判定をする。
【０１０３】
ステップＳ８６において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ２３１がデータストリームのメディアタイプに適合しないと判定する。
【０１０４】
ステップＳ８７において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ２３２がデータストリームのメディアタイプに適合するかどうか判定をする。
【０１０５】
ステップＳ８８において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ２３２がデータストリームのメディアタイプに適合すると判定する。
【０１０６】
ステップＳ８９において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ２３２が、データストリームのメディアタイプに適合することをフィルタグラフ・リポジトリクライアント１３に通知する。
【０１０７】
ステップＳ９０において、フィルタグラフ・リポジトリクライアント１３は、フィルタグラフ・リポジトリサーバ２２からフィルタグラフ２３２を複製して、フィルタグラフ２３２ｃを生成する。
【０１０８】
ステップＳ９１において、フィルタグラフ・リポジトリクライアント１３は、複製したフィルタグラフ２３２ｃをデータストリームのメディアタイプに適合するフィルタグラフとしてクライアント処理部１２に通知する。
【０１０９】
ステップＳ９２において、クライアント処理部１２は、フィルタグラフ２３２ｃを用いて、データ処理装置１１に入力されたデータストリームの処理を実行させる。
【０１１０】
このように、データ処理装置１１に接続される外部装置２１がＣＰＵを備えている場合は、データストリームの処理に適合するフィルタグラフが、外部装置２１に構築されたフィルタグラフ２３ｎから、外部装置２１が備えるフィルタグラフ・リポジトリサーバ２２によって検索される。
【０１１１】
続いて、本発明の第２の実施の形態として示すデータ処理装置に接続された外部装置２１にＣＰＵが備えられていない場合における、データストリームの処理動作について説明をする。
【０１１２】
まず、図１０に示すフローチャートを用いて、ＣＰＵを備えていない外部装置２１が接続されたデータ処理装置１１の動作について説明をする。
【０１１３】
ステップＳ１０１において、クライアント処理部１２は、データ処理装置１１に入力されたデータストリームのメディアタイプを判定する。
【０１１４】
ステップＳ１０２において、フィルタグラフ・リポジトリクライアント１３は、フィルタグラフ・リポジトリサーバ２２に対して、フィルタグラフ２３ｎの中からフィルタグラフを１つだけ取り出すように指示する。
【０１１５】
ステップＳ１０３において、フィルタグラフ・リポジトリクライアント１３は、フィルタグラフ・リポジトリサーバ２２を介して取り出されたフィルタグラフ２３ｎが、メディアタイプに適合するかどうかを判定する。メディアタイプに適合するフィルタグラフ２３ｎであった場合は、工程をステップＳ１０４へと進め、適合するフィルタグラフ２３ｎが検索できなかった場合は工程をステップＳ１０２へと戻し、新たにフィルタグラフ２３ｎを取り出すようフィルタグラフ・リポジトリサーバ２２に指示する。
【０１１６】
ステップＳ１０４において、フィルタグラフ・リポジトリクライアント１３は、メディアタイプに適合するフィルタグラフ２３ｎを検索したことに応じて、検索したフィルタグラフ２３ｎをフィルタグラフ・リポジトリサーバ２２から複製（コピー）する。また、フィルタグラフ・リポジトリクライアント１３は、シリアライズされたままの複製したフィルタグラフ２３ｎをデシリアライズする。
【０１１７】
ステップＳ１０５において、フィルタグラフ・リポジトリクライアント１３は、複製し、デシリアライズしたフィルタグラフ２３ｎを適合するフィルタグラフとしてクライアント処理部１２に通知する。これに応じて、クライアント処理部１２は、適合するフィルタグラフ２３ｎの複製に対して、入力されたデータストリームの処理を実行させる。
【０１１８】
次に、図１１に示すフローチャートを用いて、図１０で示したデータ処理装置１１に接続された外部装置２１が備えるフィルタグラフ・リポジトリサーバ２２の動作について説明をする。
【０１１９】
ステップＳ１１１において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ・リポジトリクライアント１３からのフィルタグラフ取り出し命令の待機状態にある。
【０１２０】
ステップＳ１１２において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ・リポジトリクライアント１３からのフィルタグラフ取り出し命令を受信した場合は、工程をステップＳ１１３へと進め、フィルタグラフ取り出し命令を受信できない場合は、ステップＳ１１１の工程を継続する。
【０１２１】
ステップＳ１１３において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ取り出し命令に応じて、フィルタグラフ２３ｎの中からフィルグラフを１つだけ取り出して、フィルタグラフ・リポジトリ・クライアント１３に渡す。
【０１２２】
ステップＳ１１４において、フィルタグラフ・リポジトリサーバ２２は、取り出していないフィルタグラフ２３ｎがあるかどうかを判断する。まだ、取り出していないフィルタグラフ２３ｎがある場合は、工程をステップＳ１１１へと戻し、すべてのフィルタグラフ２３ｎを取り出した場合は工程を終了する。
【０１２３】
続いて、図１２に示すタイミングチャートを用いて、データ処理装置１１と、データ処理装置１１に接続されたＣＰＵを備えていない外部装置２１とによるデータストリームの処理動作について具体的に説明をする。なお、説明のため、ここでの処理動作は、ユーザからの処理命令が入力されず、データストリームが入力されたことに応じてメディアタイプを判定する場合の処理動作とする。
【０１２４】
ステップＳ１２１において、フィルタグラフ・リポジトリサーバ２２は、入力が予想されるデータストリームのメディアフォーマットに対応フィルタグラフ２３ｎ、及び、ユーザから要求されるであろう処理種別に対応フィルタグラフ２３ｎを全て生成しておく。
【０１２５】
ステップＳ１２２において、クライアント処理部１２は、入力されるデータストリームのメディアタイプを判定する。
【０１２６】
ステップＳ１２３において、クライアント処理部１２は、フィルタグラフ・リポジトリクライアント１３に対して、メディアタイプに適合するフィルタグラフ２３ｎを検索するように指示をする。
【０１２７】
ステップＳ１２４において、フィルタグラフ・リポジトリクライアント１３は、フィルタグラフ・リポジトリサーバ２２に対して、フィルタグラフ２３ｎの中からフィルタグラフを１つだけ取り出させるフィルタグラフ取り出し命令を送信する。
【０１２８】
ステップＳ１２５において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ取り出し命令を受信したことに応じて、フィルタグラフ２３１を取り出す。
【０１２９】
ステップＳ１２６において、フィルタグラフ・リポジトリクライアント１３は、フィルタグラフ・リポジトリサーバ２２からフィルタグラフ２３１を取り出し、データストリームのメディアタイプに適合するかどうか判定をする。
【０１３０】
ステップＳ１２７において、フィルタグラフ・リポジトリクライアント１３は、フィルタグラフ２３１がデータストリームのメディアタイプに適合しないと判定をする。
【０１３１】
ステップＳ１２８において、フィルタグラフ・リポジトリクライアント１３は、フィルタグラフ・リポジトリサーバ２２に対して、フィルタグラフ２３ｎの中からフィルタグラフを１つだけ取り出させるフィルタグラフ取り出し命令を送信する。
【０１３２】
ステップＳ１２９において、フィルタグラフ・リポジトリサーバ２２は、フィルタグラフ取り出し命令を受信したことに応じて、まだ一度も取り出されていないフィルタグラフ２３２を取り出す。
【０１３３】
ステップＳ１３０において、フィルタグラフ・リポジトリクライアント１３は、フィルタグラフ・リポジトリサーバ２２からフィルタグラフ２３２を取り出し、データストリームのメディアタイプに適合するかどうか判定をする。
【０１３４】
ステップＳ１３１において、フィルタグラフ・リポジトクライアント１３は、フィルタグラフ２３１がデータストリームのメディアタイプにメディアタイプに適合すると判定する。
【０１３５】
ステップＳ１３２において、フィルタグラフ・リポジトリクライアント１３は、フィルタグラフ・リポジトリサーバ２２からフィルタグラフ２３２を複製し、さらにデシリアライズしてフィルタグラフ２３２ｃを生成する。
【０１３６】
ステップＳ１３３において、フィルタグラフ・リポジトリクライアント１３は、複製したフィルタグラフ２３２ｃをデータストリームのメディアタイプに適合するフィルタグラフとしてクライアント処理部１２に通知する。
【０１３７】
ステップＳ１３４において、クライアント処理部１２は、フィルタグラフ２３２ｃを用いて、データ処理装置１１に入力されたデータストリームの処理を実行させる。
【０１３８】
このように、データ処理装置１１に接続される外部装置２１がＣＰＵを備えていない場合は、データストリームの処理に適合するフィルタグラフが、外部装置２１に構築されたフィルタグラフ２３ｎから、データ処理装置１１が備えるフィルタグラフ・リポジトリクライアント１３によって検索される。
【０１３９】
【発明の効果】
以上の説明からも明らかなように、本発明は、データストリームのメディアタイプ、又は、データストリームに対する処理要求に対応した複数のフィルタグラフを、データストリームが入力される事前に全て生成し、データストリームが入力されたことに応じて、事前に生成された複数のフィルタグラフの中から適合するフィルタグラフを検索し、検索されたフィルタグラフを用いて、入力されたデータストリームの処理をする。
【０１４０】
これにより、データストリームが入力されてから始めてフィルターを個別に検索してフィルタグラフを構築するといった煩わしい作業が全く必要なくなるため、データストリームに対する処理時間を大幅に削減することが可能となる。
【０１４１】
また、同一のフィルタグラフが同時刻に必要になった場合でも、フィルタグラフを複製するという簡便な手法で対処することとが可能となる。
【０１４２】
さらに、また、外部装置に構築されたフィルタグラフも複製して取得できるため、新たなメディアタイプのデータストリームなどが入力された場合でも、フィルタグラフを取得することができるため、入力されるデータストリームを確実に処理することが可能となる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態として示すデータ処理装置の構成について説明するための図である。
【図２】同データ処理装置において、入力されるデータストリームを処理する際の動作について説明するためのフローチャートである。
【図３】同データ処理装置において、入力されるデータストリームを処理する際の動作について説明するためのタイミングチャートである。
【図４】同データ処理装置において、既に使用されているフィルタグラフを用いて、入力されるデータストリームを処理する際の動作について説明するためのフローチャートである。
【図５】同データ処理装置において、既に使用されているフィルタグラフを用いて、入力されるデータストリームを処理する際の動作について説明するためのタイミングチャートである。
【図６】本発明の第２の実施の形態として示すデータ処理装置及び外部装置の構成について説明するための図である。
【図７】同データ処理装置において、入力されるデータストリームを処理する際の動作について説明するためのフローチャートである。
【図８】同外部装置において、データストリームがデータ処理装置に入力された際の動作について説明するためのフローチャートである。
【図９】同データ処理装置及び外部装置において、入力されるデータストリームを処理する際の動作について説明するためのタイミングチャートである。
【図１０】同データ装置において、入力されるデータストリームを処理する際の動作について説明するめのフローチャートである。
【図１１】同外部装置において、データストリームがデータ処理装置に入力された際の動作について説明するためのフローチャートである。
【図１２】同データ処理装置及び外部装置において、入力されるデータストリームを処理する際の動作について説明するためのタイミングチャートである。
【符号の説明】
１，１１  データ処理装置、２，１２  クライアント処理部、３  フィルタグラフマネージャ、１０ｎ，２３ｎ（ｎは自然数）  フィルタグラフ、１３  フィルタグラフ・リポジトリクライアント、２１  外部装置、２２  フィルタグラフ・リポジトリサーバ
【図１】
2004312313.tif 000003
【図２】
2004312313.tif 000004
【図３】
2004312313.tif 000005
【図４】
2004312313.tif 000006
【図５】
2004312313.tif 000007
【図６】
2004312313.tif 000008
【図７】
2004312313.tif 000009
【図８】
2004312313.tif 000010
【図９】
2004312313.tif 000011
【図１０】
2004312313.tif 000012
【図１１】
2004312313.tif 000013
【図１２】
2004312313.tif 000014