JP2002351709A - 入力データの変換方法、入力データの変換プログラム、および入力データの変換システム - Google Patents
入力データの変換方法、入力データの変換プログラム、および入力データの変換システムInfo
- Publication number
- JP2002351709A JP2002351709A JP2001158607A JP2001158607A JP2002351709A JP 2002351709 A JP2002351709 A JP 2002351709A JP 2001158607 A JP2001158607 A JP 2001158607A JP 2001158607 A JP2001158607 A JP 2001158607A JP 2002351709 A JP2002351709 A JP 2002351709A
- Authority
- JP
- Japan
- Prior art keywords
- data
- module
- input
- data conversion
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
明しないような入力データの変換方法、入力データの変
換プログラム、および入力データの変換システムを提供
する。 【解決手段】入力モジュール30は、モジュールマネー
ジャー21に対して該モジュールの出力データ形式を通
知し、モジュールマネージャー21は、この通知に基づ
いて1番目のデータ変換モジュール31を生成してパイ
プラインの末尾に結合する。データ変換モジュール31
は、該モジュールの出力データ形式をモジュールマネー
ジャー21に通知し、モジュールマネージャー21は、
その通知に基づいて2番目のデータ変換モジュール32
を生成してパイプラインの末尾に結合する。以下、多重
化された入力データの多重化数分だけこの動作を繰り返
し、パイプラインの終端位置に出力モジュールを結合す
る。
Description
ィアデータの処理が可能な入力データの動的変換方法、
入力データの動的変換プログラム、および入力データの
動的変換システムに関する。
態、データの保存形態が多様化し、また、データの種類
がマルチメディア化してくると、データの受信側、復号
側においてデータ変換(デコード)の柔軟性が必要にな
ってくる。例えば、入力データが、「.zip」の拡張子で
表される圧縮データの場合には、データの受信側におい
ては、「.zip」の形式の圧縮ファイルを展開するための
データ変換モジュール(プログラム)が必要になる。ま
た、例えば、特定の形式で暗号化されている入力データ
を復号化する時には、データの受信側においては、その
特定形式に対応した復号化のためのデータ変換モジュー
ルが必要になる。この場合、多くの閉じたシステムで
は、入力データを固定のデータ変換形式に設計すること
が可能であるために、受信側においては、そのデータ変
換形式に対応する特定のデータ変換モジュールだけを用
意しておけばよい。しかし、インターネット等のオープ
ン状態のシステムや、複数種類のデータ変換形式を扱う
システムでは、データ変換モジュールを固定しておく
と、入力されてくる全てのデータに対応できなくなって
しまう。
の方式が採用されていた。
バイスからの入力データを、入力モジュール50に入力
し、さらにその出力をデータ変換モジュール51に入力
し、さらにその出力を出力モジュール52に入力して、
この出力モジュール52から出力デバイスに対してデー
タを出力する。
とのできるプラグインモジュールである。入力モジュー
ル50は、指定した入力デバイスから入力データを取り
込み、データ変換モジュール51は、入力モジュール5
1からの入力データを所定のデータ変換形式に変換す
る。また、出力モジュール52は、データ変換されたデ
ータを指定した出力デバイスに対して出力する。通常、
各モジュールはパイプライン接続され、各モジュールで
のデータ処理が並列的に行われるようにして、入力デー
タのストリーミング処理が可能となっている。
ルが多重化されていない場合、すなわち、一度だけのデ
ータ変換(エンコード)によって、目的の出力データが
得られるファイルの場合、たとえばデータが特定の形式
で圧縮されているだけの入力データの場合は、データ変
換モジュール51は、入力データを伸長するための1つ
のデータ変換モジュールからなる。また、入力データが
2重にエンコードされた多重ファイルとなっている場
合、たとえば、データが圧縮されてさらに暗号化されて
いる場合には、データ変換モジュール51は暗号化デー
タを復号化するためのデータ変換モジュールと、圧縮デ
ータを伸張するためのデータ変換モジュールとの2つか
らなる。このように、入力デバイスから入力されるデー
タの種類に応じて、すなわち、エンコードされた数と各
エンコードの形態に対応するデータ変換モジュール51
をプラグインモジュールとして任意に組み込むことによ
り、任意の入力データに対してデータ変換(デコード)
を実現することが可能である。
386号」に示されるシステムの構成図である。変換前
のソースデータは、方式変換制御器60によって、その
ソースデータ内に含まれている宛て先データフォーマッ
トを読み取られ、そのフォーマットにデータ変換するた
めに必要なストリーミング変換モジュール61〜63が
選択され、且つそれらが最適に配列される。ソースデー
タであるストリーミングデータはこの配列された変換モ
ジュールにより、パイプライン制御によってデータ変換
(デコード)される。
では、データ処理を行うパイプラインの処理ステージ
(プラグインモジュール)が一旦設定された段数に固定
されるために、データ処理の柔軟性に欠ける問題があ
る。すなわち、図11のデータ変換モジュール51を一
旦、決めてしまうと、その入力データ形式と出力データ
形式が決まってしまうため、他の形式の入力データが入
力したときには正しくデータ変換(デコード)すること
が出来ない。また上記(A)(B)のシステムとも、実
行時でないと出力データ形式が判明しない入力データに
対しては対応することができない問題がある。実行時で
ないと出力データ形式が判明しない入力データとは、デ
ータを複数の変換形式で多重にエンコードして多重ファ
イルとし、且つその変換形式が事前に分かっていない入
力データをいう。このような入力データでは、そのデー
タのデータ変換を実際に実行しなければ、少なくとも最
初にエンコードしたときのデータ変換形式を知ることが
できない。したがって、データ変換の実行前では、たと
えば図11においては、どうような変換モジュール51
を配置してよいか分からず、また図12では、どのよう
なストリーミング変換モジュールを選択していいかを判
断することができない。
と出力データ形式が判明しないような入力データに動的
に対応する入力データの変換方法、入力データの変換プ
ログラム、および入力データの変換システムを提供する
ことにある。
の変換方法は、次のように構成したものである。 デー
タを複数の変換方式で多重にエンコードして多重ファイ
ルとした入力データに対し、下記の(1)〜(3)のス
テップを実行する。
内の各ファイルのヘッダのみを参照して各ファイルの出
力データ形式を判定し、該形式への変換に必要なデータ
変換モジュールを選択する。
モジュールを選択された順に結合する。
タ変換モジュール群で入力データの変換処理を実行す
る。
き、データボディの変換(デコード)処理は行わない。
多重ファイルの極く一部のデータであるヘッダのみを参
照して各ファイルの出力データ形式を判定し、該形式へ
の変換に必要なデータ変換モジュールを選択する。この
ため、データ変換を実行するまでに、データ変換(デコ
ート)に必要なすべてのデータ変換モジュールを選択す
ることが出来る。そして、これらの選択されたデータ変
換モジュールを選択された順に結合する。このようにし
て結合したデータ変換モジュール群に対し、入力データ
の変換処理を実行する。したがって、たとえば、拡張子
「.zip」の圧縮ファイルを、さらに拡張子「.mrm」の暗
号化ファイル(「.mrm」は特定の暗号化拡張子)として
2重のファイルとした入力データをデータ変換処理する
場合、本発明では、最初に出力データ形式が「.mrm」で
あることを判定して、そのデータ変換形式に対応するデ
ータ変換モジュールを選択し、次に、出力データ形式が
「.zip」であることを判定して、そのデータ変換形式に
対応するデータ変換モジュールを選択し、この選択した
順にそれらのデータ変換モジュールを結合する。同様
に、たとえば、上記の拡張子「.mrm」のファイルを、さ
らに、暗号化して3重のファイルとした場合には、その
暗号化のデータ変換形式に対応するデータ変換モジュー
ルを最初の位置に結合する。
変換形式で多重にエンコードして多重ファイルとした入
力データに対し、各ファイルのヘッダの出力データ形式
を次々と読み込んでいって、その入力データを最終の出
力データに変換するまでに必要なデータ変換モジュール
を自動的に選択して結合することができる。これによ
り、入力データに対応して、動的にデータ変換モジュー
ルを結合することができる。
データ変換モジュール群をあらかじめ定義しておき、こ
の中から必要なデータ変換モジュールを選択する。この
ようにしておけば、あらかじめ、多数のデータ変換モジ
ュールをプラグインファイルとして用意しておき、その
中から自動的にデータ変換に必要なデータ変換モジュー
ルが選択されるようになる。
されたデータ変換モジュールの入力側に入力モジュール
を結合し、出力側に出力モジュールを結合する。入力モ
ジュールは、入力デバイスから入力データを入力する。
また、入力データのURL(Uniform Resource Locato
r) や、通信の際のプロトコルのレスポンスヘッダを参
照して(例えば、HTTPプロトコルにおけるレスポン
ドヘッダ中のコンテンツタイプヘッダを参照する)ファ
イルの出力データ形式を判定する。また、出力モジュー
ルは、結合されているモジュール分の最後段にあるデー
タ変換モジュールに結合して、最終の変換後のデータを
出力する。さらに、各モジュールを管理するモジュール
マネージャーに対して、この出力マネージャーが終端で
あることを通知する。
ることによって、入力データを取り込むための入力デバ
イスを任意のデバイスから選択することができる。たと
えば、ローカルファイル(コンピュータ内のファイルシ
ステムに存在するファイル)をソースとして指定するこ
ともできるし、URLによって、インターネットからダ
ウンロード可能なファイルをソースとして指定すること
もできる。また、出力モジュールを結合することによっ
て、出力デバイス適合するデータを出力することが可能
になる。
の動的変換方法が実施されるデータ処理装置の構成図で
ある。このデータ処理装置は、たとえば、パーソナルコ
ンピュータ、携帯電話などの携帯型データ処理装置から
なり、データ変換の対象となる入力データは、動画、静
止画、音声、文字などの多様なメディアデータを含むこ
とが可能である。データ処理装置本体1は、データ処理
を行うCPU10、メインメモリ11、ビデオコントロ
ーラ12、ネットワークコントローラ13、オーディオ
コントローラ14、ローカルストレージ15、I/Oデ
バイス16を含んでいる。メインメモリ11には、本発
明に係る入力データの動的変換プログラムが搭載され
る。ビデオコントローラ12には,ディスプレイモニタ
2が接続され、入力データを処理した結果としての画像
データを表示したり、ユーザとのインターフェイスをす
ることができる。ネットワークコントローラ13には、
インターネットなどのネットワーク3が接続されてい
る。オーディオコントローラ14には、スピーカー4が
接続され、入力データを処理した結果としての音声デー
タを出力することができる。I/Oデバイス16には、
キーボード、マウスなどを含むユーザインターフェイス
5が接続されている。
ータの動的変換プログラムは、HDD等のローカルスト
レージ15に保存しておくことが可能であり、ネットワ
ーク3を介して、任意のリソースからも取得することが
可能である。また、CD−ROMやフロッピィ(R)デ
ィスクなどの任意の記憶媒体を介して取得することも可
能である。このデータ処理装置では、ネットワーク3を
介して取得可能な入力データファイル、または、ローカ
ルストレージ15に記憶されているローカルファイルを
ソースとして、これを上記の動的変換プログラムによっ
て動的にデータ変換処理する。そして、その処理の結果
をディスプレイ2に映像、文字などとして出力し、また
は、スピーカー4に音声として出力する。後述のよう
に、動的変換プログラムによるデータ変換モジュールの
選択と結合は一瞬で行うことが出来、その後は、データ
変換処理がストリーミング処理される。
ラムを構成するモジュール(単位プログラム)群を示し
ている。
ジュール20、単位処理モジュールマネージャー(以
下、モジュールマネージャーという)21、一つ以上の
単位処理モジュール(以下、モジュールという)22と
で構成される。アプリケーションモジュール20は、ユ
ーザとのインターフェイスを行うユーザインターフェイ
スモジュールを含み、また、特定の入力データファイル
のデータ変換処理を行うことをモジュールマネージャー
21に対して通知する。このアプリケーションモジュー
ルは、たとえば、Windows(R) 98 などのOSにおいて
は、拡張子が「.exe」の実行モジュールとして表現され
る。
ル22を管理する。具体的には、プラグインモジュール
としてあらかじめ用意されている複数のモジュール22
の情報、すなわち、各モジュールが処理可能なデータ変
換形式(入力データと出力データの各々のデータ形式)
を収集してリスト上に各モジュールを定義し、アプリケ
ーションモジュール20で指定された入力データファイ
ルをデータ変換( デコード) するために必要なモジュー
ル22を結合する。なお、この実施形態では、結合され
たモジュール22は、図3に示すように順次結合されて
パイプラインとして構築され、入力データファイルのパ
イプライン処理が可能となっている。図3に示す例で
は、モジュール22内の入力モジュール30がまず選択
され、次いで、この後段に第1番目のデータ変換モジュ
ール31が結合され、次いで、この後段に第2番目のデ
ータ変換モジュール32が結合され、次いで、この後段
に第3番目のデータ変換モジュール33が結合され、最
後に出力モジュール34が結合される。このようにして
パイプラインが構築されると、次に、入力データが入力
モジュール30に入力されて入力データのデータ変換
(デコード)処理が行われる。このとき、パイプライン
により、実時間でストリーミング変換処理を行うことが
できる。
は、OSとしてWindows( R) 98などを採用した場合に、
拡張子「.dll」のモジュールとして表現され、モジュー
ル22は、プラグインフォルダーに拡張子「.dll」のモ
ジュールとして格納される。
る。図に示すように、入力データファイルは、3 重の多
重ファイルとなっている。ファイルF3は、元のデータ
であり、ファイルF2はF3のエンコードファイル、フ
ァイルF1はF2のエンコードファイルである。各ファ
イルのヘッダ(A1、A2、A3)に、そのファイルを
デコードしたときの出力データ形式が記憶されている。
例えば、ファイルF1のヘッダA1には、ファイルF2
の出力データ形式が記憶され、ファイルF2のヘッダA
2には、ファイルF3の出力データ形式が記憶されてい
る。同図に示す入力データをデータ変換(デコード)処
理するには、図3に示すように、入力モジュール30、
出力モジュール34と、その間に結合される3つのデー
タ変換モジュール31〜33が必要である。最初のデー
タ変換モジュール31は、入力モジュールにより通知さ
れた出力データ形式によるデータ変換処理を行い、2番
目のデータ変換モジュール32は、ヘッダA1に記憶さ
れている出力データ形式によるデータ変換処理を行い、
3番目のデータ変換モジュール33は、ヘッダA2に記
憶されている出力データ形式のデータ変換処理を行う。
なお、ヘッダA3に記憶されている情報は、ファイルF
3に固有なものであってデータボディの実質的な変換処
理は行われない。そして、実際のデータ変換処理を行う
前に、各ヘッダA1〜A3に記憶されている出力データ
形式が読み取られて、図3に示すようなパイプラインが
構築される。パイプラインが構築されると、入力データ
は入力モジュール30に読み込まれて、ストリーム処理
が行われていく。
合は、入力モジュール30と出力モジュール34間に入
力データをデータ変換(デコード)するのに必要な複数
のデータ変換モジュールを選択して結合することであ
る。これを図示すると図5のようになる。
ーク3またはローカルストレージ15のどちらから取得
するかを設定して入力データが適正に入力させるように
する入力モジュール30を選択する。次に、この入力モ
ジュール30によって入力データのURLやHTTPプ
ロトコルにおけるレスポンスヘッダ中のコンテンツタイ
プヘッダを参照して出力データ形式を判定し、これをモ
ジュールマネージャー21に通知する。モジュールマネ
ージャー21は、この最外郭のファイルの出力データ形
式を判定すると、その変換に必要な最初のデータ変換モ
ジュール31をプラグインフォルダーの中に記憶されて
いる複数のデータ変換モジュール群から選択する。且
つ、その選択したデータ変換モジュールを入力モジュー
ル30に結合する。次に、データ変換モジュール31
は、入力データのファイルのヘッダA1に記憶されてい
る出力データ形式を判定し、この出力データ形式をモジ
ュールマネージャー21に通知する。モジュールマネー
ジャー21は、この出力データ形式を判定して、そのデ
ータ変換に必要なデータ変換モジュール32をプラグイ
ンフォルダーの中に記憶されているデータ変換モジュー
ル群から選択し、且つ、データ変換モジュール31の末
尾に結合する。さらに同様にして、データ変換モジュー
ル32の末尾にデータ変換モジュール33を結合し、最
後に、出力デバイスに対してデータを出力するための出
力モジュール34をデータ変換モジュール33に結合す
る。そして、このようにして結合したパイプラインに対
し、モジュールマネージャー21は、入力データの入力
を開始し、データ変換(デコード)を実行する。
参照して説明する。
例では、入力データが3 重ファイルとなっている。元の
データのエンコード順は、拡張子「.zip」による圧縮
と、「.mrm」による暗号化の順である。元のデータはM
IDIデータである。したがって、この多重ファイル
は、MIDIファイルF3と、圧縮ファイルF2と暗号
化ファイルF1を多重化したものである。
力データ形式として拡張子「.zip」が指定されている。
また、圧縮ファイルF2のヘッダA2には、出力データ
形式として拡張子「.mid」が指定されている。また、M
IDIファイルF3のヘッダA3には、MIDIフォー
マットに関する情報が指定されている。なお、MIDI
ファイルF3はMIDIデータであるために、他のフォ
ーマットにデータ変換する必要は本来ないが、本実施形
態では、MIDIファイルをより扱い易い内部独自フォ
ーマットに変換し、最終段である出力モジュールに渡す
ようにしている関係上、その内部独自フォーマットの出
力データ形式をモジュールマネージャーに対して通知し
ている。
ージャーに対して出力データ形式を通知したり、モジュ
ールマネージャーから各モジュールに対して動作指定を
行う時に使う通知データ形式を示している。図7に示す
ように、この通知データ形式は、領域1〜領域5を備え
ており、領域1から順に、「タグ」、「URL」、「M
IME」、「EXT」、「付加情報」を記憶する。「タ
グ」は、モジュールマネージャーから各モジュールに対
する動作の種類を指定する。「URL」は、モジュール
マネージャーから入力モジュールに対してURLを指定
する。「MIME」は、MIME(Multipurpose Inter
net Mail Extensions)タイプを指定する。「EXT」は
拡張子を指定する。「付加情報」は、必要に応じて付け
る付加情報を指定する。このうち、「MIME」と「E
XT」でモジュールからモジュールマネージャーに対す
る出力データ形式の通知を行う。なお、出力データ形式
は、拡張子「EXT」かMIMEタイプ「MIME」に
よって行うことができる。通常、拡張子が指定されてい
る時には、MIMEタイプは不要であるが、拡張子は、
誤操作によって、または意図的に変更される可能性があ
るために、MIMEタイプの方が信頼性が高いとされ
る。モジュールマネージャーからは、「タグ」または
「URL」が各モジュールに対して通知される。入力モ
ジュールに対しては、「URL」が通知される。この
「URL」は、たとえば、「file://c:/test.mrm」であ
ったり、または、「http://...... 」であったりする。
前者は、ローカルストレージ15(図1参照)のファイ
ル格納場所を指定し、後者はネットワーク3に接続され
るファイル格納場所を示す。一般に、これらの「file」
や「http」あるいは「ftp 」はプロトコルと称され、こ
のプロトコルに「パス」と「ファイル名」が結合される
ことによって取得ファイルを指定することができる。
イプラインを構築するステップを説明する図である。
プリケーションモジュール20(図2参照)からファイ
ル(入力データ)オープン要求を受信する。
ル30を生成する。ここでは、プロトコルを「file」と
する。したがって、入力データ( ファイル) は、ローカ
ルストレージ15(図1参照)からロードされる。
知データD1により、ファイル「test.mrm」を指定し
て、入力モジュール30をオープンする。
ファイルの拡張子を参照して出力データ形式を判定す
る。指定されたファイルがコンテンツファイルそのもの
ではなく、HTTPプロトコルでコンテンツファイルを
送信するためのサーバサイドスクリプトである場合もあ
るので、拡張子で出力データを特定できない場合にはH
TTPプロトコルにおけるレスポンスヘッダ中のコンテ
ンツタイプヘッダを参照し、出力データ形式を判定す
る。この場合は、「test.mrm」の拡張子「.mrm」によ
り、出力データ形式が拡張子「.mrm」で表現される暗号
化データであることがわかるので、これをモジュールマ
ネージャー21に通知する。この通知は、通知データD
2の領域4において行う。
コード(変換)するためのデータ変換モジュール31を
生成する。
成したデータ変換モジュール31をパイプラインの末尾
に結合する(ここでは、入力マネージャー30に結合す
る)。
ータ変換モジュール31をオープンする。この動作は、
通知データD2の領域1によって指定する。
ンされることによって、パイプラインを介してこのデー
タ変換モジュール31にデータの一部が入力される。こ
の時、データ変換モジュール31は、暗号化ファイルF
1のヘッダA1を参照して、次にデコード(変換)すべ
き圧縮ファイルF2の出力データ形式を判定してモジュ
ールマネージャー21に通知する。この通知は、通知デ
ータD3の領域4によって行う。
記T8で通知された出力データ形式に対応するデータ変
換モジュール32を生成する。この時の出力データ形式
は拡張子「.zip」で表現されるものであるから、このデ
ータ変換モジュール32は、拡張子「.zip」の圧縮デー
タをデコード(変換)するものである。
データ変換モジュール32をパイプラインの末尾に結合
する。ここでは、データ変換モジュール32はその前段
のデータ変換モジュール31に結合される。
プンする。このオープン動作は、通知データD3の領域
1で指定される。
プンされることによって、パイプラインを介してこのデ
ータ変換モジュール32にデータの一部が入力される。
この時、データ変換モジュール32は、多重化されてい
る入力データの圧縮ファイルF2のヘッダA2を参照す
る。ヘッダA2にはデータ変換モジュール32でデコー
ド(変換)した時の出力データ形式が記憶されている。
この出力データ形式は、この例では、拡張子「.mid」で
表されるMIDIデータを表す。そして、このデータ変
換モジュール32は、その出力データ形式を通知データ
D4の領域4によってモジュールマネージャー21に通
知する。
上記T12での通知を受けると、拡張子「.mid」で表さ
れるMIDIデータをデコード(変換)するためのデー
タ変換モジュール33を生成する。
上記T13で生成したデータ変換モジュール33をパイ
プラインの末尾に結合する。この例では、データ変換モ
ジュール33をデータ変換モジュール32に結合する。
データ変換モジュール33をオープンする。
プンすることによって、入力データの一部がパイプライ
ンを通過してデータ変換モジュール33に入力される。
この時、データ変換モジュール33は、受け取ったMI
DIファイルをより扱い易い内部独自フォーマットに変
換する。ここでは、その出力データ形式は「applicatio
n/x-midi2 」で表されている。データ変換モジュール3
3は、このようにして判定した出力データ形式をモジュ
ールマネージャー21に通知する。なお、「applicatio
n/x-midi2 」の出力データ形式は、拡張子ではなくMI
MEタイプによって指定される。したがって、通知デー
タD5の領域3を使用してモジュールマネージャー21
に通知される。
上記T16の通知を受けると、出力モジュール34を生
成する。
出力モジュール34をパイプラインの末尾に結合する。
ここでは、出力モジュール34をデータ変換モジュール
33に結合する。
出力モジュール34をオープンする。このオープン動作
は、通知データD5の領域1によって行う。
れることによって、入力データの一部はパイプラインを
通過し、出力モジュール34において自らがパイプライ
ンの終端位置にあることを判定する。そこで、出力モジ
ュール34は、モジュールマネージャー21に対して通
知データD6の領域1により、自らが終端であることを
通知する。
ジュールが読み込むデータは、多重化された入力データ
のヘッダのデータだけである。このため、パイプライン
の構築に必要な処理時間は、一瞬である。また、この例
では、図6に示すように3重に多重化された入力データ
に対するパイプライン構築を示したが、4重に多重化さ
れた入力データであれば、入力モジュール30と出力モ
ジュール34間に、データ変換モジュールがもう1つ追
加されることになる。このように、本実施形態では、多
重化された入力データのエンコードと逆順に各ファイル
のヘッダのみを参照して各ファイルの出力データ形式を
判定し、該形式への変換(デコード)に必要なデータ変
換モジュールを選択してパイプラインを結合していくた
めに、入力データの多重化数やエンコード方式を知らな
くても、正しくデコード(変換)するためのパイプライ
ンを動的に構築することができる。なお、パイプライン
を構築した後は、入力モジュール30に入力データが入
力され、パイプラインによってストリーミング処理され
ていく。
のデコード(変換)処理が行われていく時の状態を示し
ている。入力モジュール30に入力された入力データ
は、データ変換モジュール31で復号化され、次のデー
タ変換モジュール32で伸長され、次のデータ変換モジ
ュール33で、特定のMIDIデータに変換され、最後
の出力モジュール34で、出力デバイスに出力される。
は、プラグインモジュールとして特定のプラグインフォ
ルダーに収納されている。モジュールマネージャー21
は、パイプラインを構築する前に、このプラグインフォ
ルダー内の各モジュールの情報を収集し、リストを作成
して各モジュールを定義しておく。モジュールの定義と
は、そのモジュールがどのような処理を行うことができ
るかなどの機能を判定してリスト上に記憶しておくこと
である。モジュールマネージャー21は、事前にこのよ
うにして定義したデータ変換モジュール群の中から適切
なものを選択し、パイプライン構築のために生成する。
ここで言う生成とは、オブジェクト指向言語において、
クラスの実体(インスタンス)を生成するという意味合
いである。たとえば、入力モジュール30を生成すると
は、メモリ上に入力モジュール30の実体が生成される
ことをいう。
インを構築するための手順を示すフローチャートであ
る。
ージャー21は、プラグインフォルダーに置かれている
全てのモジュールの情報を収集する。ST2では、モジ
ュールマネージャー21が、アプリケーションモジュー
ル20からファイル(入力データ)のオープン要求を受
信する。モジュールマネージャー21は、要求されたプ
ロトコルに適合する入力モジュール30をオープンしパ
イプラインの先頭に追加する(ST3)。さらに、モジ
ュールマネージャー21は、ST4において入力モジュ
ール30をオープンする。
郭のファイルの出力データ形式をURLやHTTPプロ
トコルにおけるレスポンスヘッダ中のコンテンツタプヘ
ッダから判定してモジュールマネージャー21に通知す
る。モジュールマネージャー21は、この通知を受けて
出力データ形式を得るとともに(ST5)、パイプライ
ンの終端でないことを判定して(ST6)、出力データ
形式に適合するモジュール(データ変換モジュールか出
力モジュール)を生成し、パイプラインの末尾に追加す
る(ST7)。また、そのモジュールをオープンして
(ST8)、ST5に戻る。モジュールマネージャー2
1は、パイプラインの終端であることを知ると、それ以
後のパイプライン構築動作を停止し、以下、続いてデー
タボディのデコード(変換)処理が行われる。
イプライン構築動作は、ヘッダのデータのみで処理され
る。したがって、入力データ全体を全て受け取っていな
くても、入力データを正しく変換(デコード)するのに
必要で十分なパイプラインの構築が出来る。そして、パ
イプラインによるデータボディの変換処理はストリーミ
ングにより可能である。
重ファイルの入力データに有効であるが、多重でない1
回のみエンコードした入力データであっても対応するこ
とが可能である。この場合は、入力モジュールと出力モ
ジュール間に1つのデータ変換モジュールが結合される
ことになる。また、各モジュールをパイプライン接続す
ることによって、入力データのストリーミング処理を可
能としたが、各モジュールを単にカスケード(従属)接
続して、各段階で1ファイル毎に、順にデコード(変
換)処理を行うようにしてもよい。
ールの前後に入力モジュールと出力モジュールを結合し
てパイプラインを構築したが、入力モジュールと出力モ
ジューは必ずしもなくてもよく、これらの機能をデータ
変換モジュールに持たせることも可能である。
ド)を実行する時でないと最終出力データ形式が判明し
ないような入力データ、すなわち、データのエンコード
処理が多重化された多重ファイルを扱うことができる。
また、データ変換モジュールの段数は固定されずに動的
に作成されるために、多様なデータフォーマットに対応
することができる。
図
プログラムのモジュール群を示す図
て作成した多重ファイルの概念構成図
デコード(変換)処理される状態を示す図
ト
成図
Claims (7)
- 【請求項1】 データを複数の変換方式で多重にエンコ
ードして多重ファイルとした入力データに対し、下記の
(1)〜(3)のステップによりデータ変換を行う入力
データの変換方法。 (1)エンコード順と逆順に多重ファイル内の各ファイ
ルのヘッダのみを参照して各ファイルの出力データ形式
を判定し、該形式への変換に必要なデータ変換モジュー
ルを選択する。 (2)上記(1)で選択されたデータ変換モジュールを
選択された順に結合する。 (3)上記(2)によって結合されたデータ変換モジュ
ール群で入力データの変換処理を実行する。 - 【請求項2】 エンコード順と逆順に多重ファイル内の
各ファイルのヘッダのみを参照して各ファイルの出力デ
ータ形式を判定し、該形式への変換に必要なデータ変換
モジュールを選択する上記ステップにおいて、該ステッ
プの前に、選択可能な全てのデータ変換モジュール群を
定義し、この判定したデータ変換モジュール群の中から
前記データ変換モジュールを選択する、請求項1記載の
入力データの変換方法。 - 【請求項3】 前記データ変換モジュール群の先頭に入
力データを入力デバイスから入力する入力モジュールを
結合し、前記結合されたデータ変換モジュール群の最終
段に出力データをデバイスに出力する出力モジュールを
結合し、このようにして結合されたデータ変換モジュー
ル群の先頭に入力データを入力してデータ変換を行い、
出力モジュールから変換後のデータを出力する、請求項
1または2記載の入力データの変換方法。 - 【請求項4】 データを複数の変換方式で多重にエンコ
ードして多重ファイルとした入力データに対し、下記の
(1)〜(3)のステップをCPUに実行させる入力デ
ータの変換プログラム。 (1)エンコード順と逆順に多重ファイル内の各ファイ
ルのヘッダのみを参照して各ファイルの出力データ形式
を判定し、該形式への変換に必要なデータ変換モジュー
ルを選択する。 (2)上記(1)で選択されたデータ変換モジュールを
選択された順に結合する。 (3)上記(2)によって結合されたデータ変換モジュ
ール群で入力データの変換処理を実行する。 - 【請求項5】 エンコード順と逆順に多重ファイル内の
各ファイルのヘッダのみを参照して各ファイルの出力デ
ータ形式を判定し、該形式への変換に必要なデータ変換
モジュールを選択する上記ステップをCPUに実行させ
る前に、選択可能な全てのデータ変換モジュール群を定
義するステップをCPUに実行させ、この定義したデー
タ変換モジュール群の中から前記データ変換モジュール
を選択する、請求項4記載の入力データの変換プログラ
ム。 - 【請求項6】 前記データ変換モジュール群の先頭に入
力データを入力デバイスから入力する入力モジュールを
結合し、前記結合されたデータ変換モジュール群の最終
段に出力データをデバイスに出力する出力モジュールを
結合し、このようにして結合されたデータ変換モジュー
ル群の先頭に入力データを入力してデータ変換を行い、
出力モジュールから変換後のデータを出力するステップ
をCPUに実行させる、請求項4または5記載の入力デ
ータの変換プログラム。 - 【請求項7】データを複数の変換方式で多重にエンコー
ドして多重ファイルとした入力データを入力デバイスか
ら入力する処理を行う入力モジュールと、 入力されたデータを変換処理する一つ以上のデータ変換
モジュールと、 前記変換モジュールで変換処理されたデータを出力デバ
イスに出力する出力モジュールと、 前記入力モジュール、前記データ変換モジュール、前記
出力モジュールの順に各モジュールを結合し、結合した
モジュール群の先頭の入力モジュールに入力データを入
力してデータ変換処理を行わせるモジュールマネージャ
ーとを備え、 各モジュールは、データ変換モジュール結合時に、その
モジュールで処理するファイルのヘッダのみを参照して
各ファイルの出力データ形式を判定してモジュールマネ
ージャーに通知し、 前記モジュールマネージャーは、モジュール結合時に、
各モジュールから通知される出力データ形式に対応した
データ変換モジュールを選択して前のモジュールに結合
する処理を行うことを特徴とする、入力データの変換シ
ステム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001158607A JP4752137B2 (ja) | 2001-05-28 | 2001-05-28 | 入力データの変換方法、入力データの変換プログラム、および入力データの変換システム |
US10/155,498 US6844832B2 (en) | 2001-05-28 | 2002-05-24 | Input data conversion method, input data conversion program, and input data conversion system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001158607A JP4752137B2 (ja) | 2001-05-28 | 2001-05-28 | 入力データの変換方法、入力データの変換プログラム、および入力データの変換システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002351709A true JP2002351709A (ja) | 2002-12-06 |
JP4752137B2 JP4752137B2 (ja) | 2011-08-17 |
Family
ID=19002296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001158607A Expired - Fee Related JP4752137B2 (ja) | 2001-05-28 | 2001-05-28 | 入力データの変換方法、入力データの変換プログラム、および入力データの変換システム |
Country Status (2)
Country | Link |
---|---|
US (1) | US6844832B2 (ja) |
JP (1) | JP4752137B2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006244471A (ja) * | 2005-03-04 | 2006-09-14 | Microsoft Corp | コマンドラインデータ型の検出および変換 |
JP2007509411A (ja) * | 2003-10-24 | 2007-04-12 | マイクロソフト コーポレーション | データ駆動型コマンドライン出力を提供する機構 |
JP2010282505A (ja) * | 2009-06-05 | 2010-12-16 | Ricoh Co Ltd | プリンタドライバプログラム、記憶媒体および情報処理装置 |
EP2458496A2 (en) | 2010-11-25 | 2012-05-30 | Canon Kabushiki Kaisha | Document processing apparatus, method for processing document, and program therefor |
JP2019021310A (ja) * | 2017-07-20 | 2019-02-07 | Line株式会社 | 実行可能な圧縮ファイルを保護するためのファイル保護方法およびシステム |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8259121B2 (en) * | 2002-10-22 | 2012-09-04 | Broadcom Corporation | System and method for processing data using a network |
US7523221B2 (en) * | 2003-05-17 | 2009-04-21 | Microsoft Corporation | Mechanism for applying transforms to multi-part files |
JP4652090B2 (ja) * | 2005-03-15 | 2011-03-16 | 富士通株式会社 | 事象通知管理プログラム、事象通知管理装置及び事象通知管理方法 |
ITTV20090017A1 (it) * | 2009-02-17 | 2010-08-18 | B & B Holding S R L | Metodo e sistema per lo scambio di documenti digitali. |
CN102129443A (zh) * | 2010-12-30 | 2011-07-20 | 中国民航信息网络股份有限公司 | 基于usas主机的实时数据传输通道及其实时数据传输方法 |
JP5348166B2 (ja) * | 2011-03-30 | 2013-11-20 | ブラザー工業株式会社 | 中継装置、通信方法、および通信システム |
JP5927950B2 (ja) | 2012-02-03 | 2016-06-01 | ブラザー工業株式会社 | 制御装置 |
JP5935515B2 (ja) | 2012-05-31 | 2016-06-15 | ブラザー工業株式会社 | 制御装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06251073A (ja) * | 1993-02-24 | 1994-09-09 | Nippon Telegr & Teleph Corp <Ntt> | データ流通装置 |
JPH08305618A (ja) * | 1995-04-20 | 1996-11-22 | Ncr Internatl Inc | コンピュータファイル生成手段及び処理方法 |
JPH0969059A (ja) * | 1995-08-31 | 1997-03-11 | Nec Corp | ファイル形態変換システム |
JP2001103386A (ja) * | 1999-09-28 | 2001-04-13 | Sanyo Electric Co Ltd | デジタル放送受信装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL8500841A (nl) * | 1985-03-22 | 1986-10-16 | Philips Nv | Kodeer- of dekodeerschakeling voor tijdmultiplex en simultane signalen. |
-
2001
- 2001-05-28 JP JP2001158607A patent/JP4752137B2/ja not_active Expired - Fee Related
-
2002
- 2002-05-24 US US10/155,498 patent/US6844832B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06251073A (ja) * | 1993-02-24 | 1994-09-09 | Nippon Telegr & Teleph Corp <Ntt> | データ流通装置 |
JPH08305618A (ja) * | 1995-04-20 | 1996-11-22 | Ncr Internatl Inc | コンピュータファイル生成手段及び処理方法 |
JPH0969059A (ja) * | 1995-08-31 | 1997-03-11 | Nec Corp | ファイル形態変換システム |
JP2001103386A (ja) * | 1999-09-28 | 2001-04-13 | Sanyo Electric Co Ltd | デジタル放送受信装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007509411A (ja) * | 2003-10-24 | 2007-04-12 | マイクロソフト コーポレーション | データ駆動型コマンドライン出力を提供する機構 |
JP2006244471A (ja) * | 2005-03-04 | 2006-09-14 | Microsoft Corp | コマンドラインデータ型の検出および変換 |
US8566806B2 (en) | 2005-03-04 | 2013-10-22 | Microsoft Corporation | Command-line data-type discovery and conversion |
JP2010282505A (ja) * | 2009-06-05 | 2010-12-16 | Ricoh Co Ltd | プリンタドライバプログラム、記憶媒体および情報処理装置 |
EP2458496A2 (en) | 2010-11-25 | 2012-05-30 | Canon Kabushiki Kaisha | Document processing apparatus, method for processing document, and program therefor |
JP2019021310A (ja) * | 2017-07-20 | 2019-02-07 | Line株式会社 | 実行可能な圧縮ファイルを保護するためのファイル保護方法およびシステム |
JP7140581B2 (ja) | 2017-07-20 | 2022-09-21 | Line株式会社 | 実行可能な圧縮ファイルを保護するためのファイル保護方法およびシステム |
Also Published As
Publication number | Publication date |
---|---|
US6844832B2 (en) | 2005-01-18 |
US20020175841A1 (en) | 2002-11-28 |
US20030146857A9 (en) | 2003-08-07 |
JP4752137B2 (ja) | 2011-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7613767B2 (en) | Resolving a distributed topology to stream data | |
JP4752137B2 (ja) | 入力データの変換方法、入力データの変換プログラム、および入力データの変換システム | |
JP4363847B2 (ja) | インタラクティブ・テレビ用のデジタル・テレビ・アプリケーション・プロトコル | |
US20060188096A1 (en) | Systems and methods for remotely controlling computer applications | |
WO2004068353A1 (ja) | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム | |
WO2004068843A1 (ja) | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム | |
KR20110007114A (ko) | 원격 세션에서의 멀티미디어 동작을 관리하는 시스템 및 방법 | |
JP6396021B2 (ja) | カメラの画像データ圧縮方法及びこれを支援する端末 | |
JP2010539742A (ja) | マルチメディアメッセージングサービス(mms)の動画への適合のための方法およびシステム | |
KR101942269B1 (ko) | 웹 브라우저에서 미디어를 재생하고 탐색하는 장치 및 방법 | |
JP2006339855A (ja) | ネットワーク制御装置、符号化方式変換装置、及びコンテンツデータ再生システム | |
US9445142B2 (en) | Information processing apparatus and control method thereof | |
EP2566177B1 (en) | Electronic apparatus and method for transferring contents on cloud system to device connected to DLNA | |
TW200828109A (en) | Apparatus for operating multimedia streaming and method for transmitting multimedia streaming | |
US20140141875A1 (en) | Temporary modification for extending functionality of computer games and software applications. | |
US20080155113A1 (en) | Device, system and method for remotely processing multimedia stream | |
JP2008040347A (ja) | 画像表示装置、画像表示方法および画像表示プログラム | |
US7539292B2 (en) | Contents distribution system, contents server, contents receiving apparatus, contents distribution method, program and storage media | |
AU2005272636A1 (en) | Systems and methods for remotely controlling computer applications | |
KR100960164B1 (ko) | 표시 목적으로 네트워크를 통해 통신되는 콘텐츠를처리하기 위한 멀티그래픽 프로세서 시스템 및 방법 | |
JP2005110024A (ja) | データ送信装置、データ送受信システム、及びデータ送受信方法 | |
JP2005275643A (ja) | コンテンツデータ処理装置及び方法 | |
JP2003271406A (ja) | データ処理装置およびデータ処理方法ならびにそのプログラム | |
Gangadhara | Distributed video encoding for wireless low-power surveillance network | |
Lohse et al. | Extended Format Definition and Quality-driven Format Negotiation in Multimedia Systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080321 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101005 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101130 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20101130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110215 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110317 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110426 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110509 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140603 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |