JP3178378B2 - 電子情報処理システム及び方法並びに記録媒体 - Google Patents

電子情報処理システム及び方法並びに記録媒体

Info

Publication number
JP3178378B2
JP3178378B2 JP19312897A JP19312897A JP3178378B2 JP 3178378 B2 JP3178378 B2 JP 3178378B2 JP 19312897 A JP19312897 A JP 19312897A JP 19312897 A JP19312897 A JP 19312897A JP 3178378 B2 JP3178378 B2 JP 3178378B2
Authority
JP
Japan
Prior art keywords
information
data
event data
inputting
distributed
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.)
Expired - Fee Related
Application number
JP19312897A
Other languages
English (en)
Other versions
JPH1139796A (ja
Inventor
秀昭 樽口
重雄 角田
好成 寺田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP19312897A priority Critical patent/JP3178378B2/ja
Publication of JPH1139796A publication Critical patent/JPH1139796A/ja
Application granted granted Critical
Publication of JP3178378B2 publication Critical patent/JP3178378B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、楽音制御情報
(MIDIデータ)などの主要情報の中にそれに関連し
た付属情報を組み込んで記憶する電子情報処理システム
及び方法に関し、また、そのように付属情報を組み込ん
で記憶した主要情報から付属情報を検出(再生)する電
子情報処理システム及び方法に関し、更に、この電子情
報処理システム及び方法を実現するためのソフトウェア
プログラムを記憶した記憶媒体に関し、更に、これらの
システム及び方法に従って主要情報内に付属情報を組み
込んだ状態のデータ構成からなるデータを記憶してなる
記憶媒体に関する。
【0002】
【従来の技術】最近では、パーソナルコンピュータを使
用して、ユーザ自身が音楽データ、映像データ及び波形
データなどを作成したり、それらに種々の変更を加えた
りすることが容易にできるようになった。従って、パー
ソナルコンピュータを使用することによって、市販のF
D、CD−ROM、LDなどの記憶媒体に記録された音
楽データ、映像データ及び波形データなども自由に読み
出して、それらに種々の変更処理を加えたりすることが
できる。市販のCD−ROMやLDなどに記録されてい
るデータは、その販売者や製作者などに著作権があるた
め、本来それらを自由に改変することは、著作権侵害の
観点から許されるものではない。従って、現在では、C
D−ROMやLDなどの主データ記憶部に記録されてい
る音楽データ、映像データ又は波形データなど、主デー
タの著作権がだれに属するものなのかを示すための著作
権表示データを、主データ記憶部とは別のヘッダ部に付
属情報として付加的に記録することによって、著作権者
を明示し、著作権侵害の未然防止を図っているのが現状
である。また、付属情報には、このような著作権表示デ
ータの他にも、その音楽データ、映像データ及び波形デ
ータの題名などを示す情報、又はその映像データや波形
データなどがどのようなデータ圧縮技術で圧縮されてい
るのかなどのデータ記録形式を示す情報などがある。
【0003】
【発明が解決しようとする課題】しかしながら、現在で
は、パーソナルコンピュータなどを使って自由にデータ
を書き換えたり変更したりすることができるので、故意
又は過失によって、著作権表示データや種々の付属情報
が削除されたり、書き換えられたりするという問題があ
る。特に、これらの付属情報がヘッダ部にまとまってス
トアされている場合は、削除や改竄が容易になされてし
まう、という問題がある。また、最近ではネットワーク
通信の発達に伴って、このように著作権表示データの削
除や改竄のなされた音楽データ、映像データ又は波形デ
ータなどがネットワークを通じて不正に広く流通してし
まうという問題も起き易い。また、データ記録形式に関
する付属情報が削除されると、その映像データや波形デ
ータなどを再生することができなくなるという問題もあ
る。本発明は、上述の点に鑑みてなされたものであり、
音楽データ、映像データ又は波形データなどのような主
要情報に付属して付属情報を記憶し流通させる場合にお
いて、付属情報の不正な削除や改変がしにくい形態でこ
れらの情報を記憶させるようにし、また、仮に情報の部
分的削除や改変がなされた場合でも付属情報を適確に再
現することができるようにした、電子情報処理システム
及び方法並びに記憶媒体を提供することを目的とする。
【0004】
【課題を解決するための手段】 請求項1に係る電子情
報処理方法は、複数のイベントデータで構成される第1
の情報を入力するステップと、第2の情報を入力するス
テップと、前記イベントデータのうち少なくとも一部の
イベントデータの内容を前記第2の情報に基づいて変更
することにより前記第1の情報に前記第2の情報を分散
して配置するステップと、前記第2の情報が分散して配
置された第1の情報を出力するステップとからなる。
求項2に係る電子情報処理方法は、それぞれ所定のパラ
メータを含む複数のイベントデータで構成される第1の
情報を入力するステップと、第2の情報を入力するステ
ップと、前記イベントデータのうち少なくとも一部のイ
ベントデータに含まれるパラメータを前記第2の情報に
基づいて変更することにより前記第1の情報に前記第2
の情報を分散して配置するステップと、前記第2の情報
が分散して配置された第1の情報を出力するステップと
からなる。 請求項3に係る電子情報処理方法は、それぞ
れ2以上のパラメータを含む複数のイベントデータで構
成される第1の情報を入力するステップと、第2の情報
を入力するステップと、前記イベントデータのうち少な
くとも一部のイベントデータに含まれる2以上のパラメ
ータの内容と前記第2の情報に基づいて前記2以上のパ
ラメータのうち少なくとも一部を変更することにより前
記第1の情報に前記第2の情報を分散して配置するステ
ップと、前記第2の情報が分散して配置された第1の情
報を出力するステップとからなる。 請求項4に係る電子
情報処理方法は、それぞれ順序関係を有する複数のイベ
ントデータで構成される第1の情報を入力するステップ
と、第2の情報を入力するステップと、前記イベントデ
ータのうちの所定の順序関係にある複数のイベントデー
タの関係と前記第2の情報に基づいて前記所定の順序関
係にある複数のイベントデータのうちいずれかの内容を
変更することにより前記第1の情報に前記第2の情報を
分散して配置するステップと、前記第2の情報が分散し
て配置された第1の情報を出力するステップとからな
る。 請求項5乃至8に係る電子情報処理方法は、上記請
求項1乃至4に係るいずれかの方法で第2の情報が分散
して配置された第1の情報を入力し、この第1の情 報か
ら、分散して配置された第2の情報を抽出し、出力する
ことで、第2の情報をデコードするものである。 請求項
9に係る電子情報処理方法は、複数のイベントデータで
構成される第1の情報を入力するステップと、前記イベ
ントデータのうち少なくとも一部のイベントデータに分
散して配置された第2の情報を検出するとともに当該分
散して配置された第2の情報を抽出するステップと、前
記抽出した第2の情報の有意性を判断するステップと、
前記有意性の判断結果に応じて第1の情報の利用を許可
するか否かを制御するステップとからなる。 請求項10
に係る記憶媒体は、請求項1乃至9のいずれかに係る方
法をコンピュータに実行させるためのプログラムを記憶
した機械読み取り可能な記憶媒体に係るものである。
求項11乃至19に係る電子情報処理装置は、請求項1
乃至9のいずれかに係る方法を実施するよう構成された
電子情報処理装置に係るものである。 以下述べる実施例
における電子情報処理システムは、主要情報とそれに関
する付属情報とを適宜の記憶装置又は回路あるいは媒体
に記録するものである。例えば、主要情報としては、M
IDIデータのキーオンイベントデータ、プログラムチ
ェンジデータ又はコントロールチェンジデータなど複数
のイベントデータで構成される任意の種類の情報を採用
してよい。付属情報としては、著作者名、曲の題名、画
像/映像の題名などに関する文字データや波形データの
圧縮方法などのデータ形式に関するデータやその他の種
々のデータ(暗号文、鍵情報、ID、パスワード、ニュ
ース文)など、任意の種類の情報を採用してよい。この
電子情報付与装置は、主要情報を構成するデータ群の中
の所定のデータ群として、MIDIデータの場合にはキ
ーオンイベントデータ群を用い、このキーオンイベント
データ群の中の単位データとして、ベロシティデータの
一部(例えば最下位ビット)を、その付属情報のデータ
に基づいて変更する。従って、付属情報のデータに応じ
て、そのベロシティデータの一部(例えば最下位ビッ
ト)の値が変更されるか又は変更されない、といった制
御がなされる。これによって、付属情報のデータがMI
DIデータ群の中に分散して記録されるようになる。な
お、主要情報がMIDIデータの場合には、変更される
単位データはベロシティデータやデュレーションタイム
データが望ましい。なぜなら、これらのデータはさほど
厳密性を要求されないデータだからである。すなわち、
これらの情報が多少変更されても音声データの場合聴感
ではほとんど感知(知覚)されないからである。
【0005】別の観点では、この発明に係る電子情報処
理システムは、主要情報を構成するデータ群の中のデー
タ特性に応じて分類された少なくとも2以上のデータ群
の中の各単位データの一部を、付属情報の一部又は全部
のデータに基づいて、前記分類に対応したアルゴリズム
に従って変更することによって、前記付属情報の一部又
は全部のデータを前記主要情報を構成するデータ群に分
散して記録するように構成されたものである。この電子
情報処理システムにおいては、付属情報の分散記録され
る主要情報をそのデータ特性に応じて分類し、各分類に
対応したアルゴリズムで単位データの一部を変更してい
る。すなわち、主要情報がMIDIデータの場合には、
チャンネル情報がそのまま入れ替えられたり、キーコー
ドがシフトされたりすると、もはや付属情報を主要情報
の中から検出することができなくなることがある。そこ
で、チャンネル毎、プログラムチェンジデータの出現タ
イミング毎、又はMIDIデータを構成するベロシティ
の差分値の大きさ毎等に応じて主要情報を分類し、それ
ぞれの分類に対応したアルゴリズムで単位データの一部
を変更するようにした。これによって、チャンネル情報
がそのまま入れ替えられたりしてデータが書き換えられ
たとしてもいずれかのアルゴリズムに応じて付属情報が
検出されるようになる。
【0006】更に別の観点では、この発明に係る電子情
報処理システムは、上記のように付属情報を組み込んで
記憶された主要情報を構成するデータ群から、付属情報
の一部又は全部のデータを検出(再生)する機能を具備
している。なお、主要情報として上述のように最下位ビ
ットのデータ変更によっては実用上大きな影響を受けな
い種類の情報を採用した場合は、付属情報を組み込んだ
主要情報を読み出して、これを再生利用するとき、該主
要情報から付属情報のデータ片を取り除くことなく、こ
れをそのままにして再生してもよい。勿論、これに限ら
ず、主要情報から付属情報のデータ片を取り除いて、正
確な主要情報を再生するようにしてもよい。更に別の観
点では、この発明に係る電子情報処理システムは、上記
のように付属情報を組み込んで記憶された主要情報を構
成するデータ群を、電子的記憶媒体又は通信ネットワー
クを介して配信し、配信されたデータ群から前記付属情
報の一部又は全部のデータを検出(再生)する機能を具
備するものである。
【0007】更に別の観点では、この発明に係る電子情
報処理システムは、上記のように付属情報を組み込んで
記憶された主要情報を構成するデータ群から、付属情報
の一部又は全部のデータを検出(再生)し、この検出
(再生)した付属情報を画面上に表示する表示手段を有
するものである。例えば、付属情報として、文字情報や
波形データ圧縮方法などのデータ記録形式に関する情
報、あるいはその他の種々の情報(暗号文、鍵情報、I
D、パスワード、ニュース文などの情報)を採用して、
これを任意の主要情報に組み込んで記憶する。そして、
主要情報から付属情報を取り出して再生し、これを画面
上に表示する。その場合、通信ネットワークを介して時
々刻々と配信されてくる主要情報からそこに組み込まれ
ている付属情報を取り出して時々刻々と再生し、この再
生情報をストリーミングに表示することができる。更に
別の観点では、この発明に係る電子的記憶媒体は、上記
の電子情報処理システムを実現するためのソフトウェア
プログラムを記憶したものである。更に別の観点では、
この発明に係る電子的記憶媒体は、主要情報とそれに関
する付属情報とが記録された電子的記憶媒体であって、
前記主要情報を構成するデータ群の中の所定の複数デー
タの各単位データの一部が前記付属情報の一部又は全部
のデータに基づいて変更されることによって、前記付属
情報の一部又は全部のデータが前記主要情報を構成する
データ群に分散して記録されているものである。この電
子的記憶媒体としては、フロッピーディスクやCD−R
OMあるいは光磁気ディスクなどの可搬式媒体であって
もよく、また、ハードディスク装置のような固定式媒体
であってもよい。
【0008】更に別の観点に従えば、上記の目的の達成
のために、この発明に係る方法は、第1の情報を構成す
るデータと共に第2の情報を構成するデータを記憶する
方法であって、前記第1の情報を構成するデータは複数
のデータ単位の集まりからなっており、前記第2の情報
を構成するデータの少なくとも一部を、複数の小サイズ
のデータ片に分けるステップと、前記第1の情報の複数
のデータ単位のうちの特定のデータ単位の各々の値を、
前記各データ片の値に応じて変更するもしくは変更しな
い制御を行なうステップと、制御された前記特定のデー
タ単位を含む前記第1の情報のデータを記憶するステッ
プとを具え、前記第2の情報を構成するデータの少なく
とも一部が前記第1の情報のデータ内に組み込んだ状態
で記憶されるようにしたことを特徴とするものである。
前記第1の情報は主要情報に相当するものであり、例え
ば、MIDI形式の音楽演奏情報であってよく、全体と
して大きな情報量を持ち、メモリにおいては所定の主デ
ータ記憶領域に記憶されるようなものである。前記第2
の情報は付属情報に相当するものであり、例えば、その
ような主データ記憶領域に記憶された音楽演奏情報つま
り第1の情報の、著作権表示に関する情報であってよ
く、音楽演奏情報つまり第1の情報に比べて小規模な情
報量からなるであってよい。例えば、この発明によれ
ば、第1の情報つまり主要情報は所定の主データ記憶領
域に記憶され、第2の情報つまり付属情報は、ヘッダ領
域ではなく、主データ記憶領域内で、第1の情報を構成
するデータに組み込まれて記憶されるようになっていて
よい。この場合、第2の情報つまり付属情報の全てが、
第1の情報を構成するデータに組み込まれて記憶される
ようになっていてもよいし、あるいは、第2の情報つま
り付属情報の一部が、第1の情報を構成するデータに組
み込まれて記憶されるようになっていてもよい。
【0009】この発明によれば、第2の情報を構成する
データの全部又は一部が、複数の小サイズのデータ片
(例えば1つのデータ片が1ビットまたは数ビットから
なっていてよい)に分けられる。第1の情報を構成する
データは、複数のデータ単位の集まりからなっている。
1つの特定のデータ単位の値を1つのデータ片に応じて
変調することにより、該データ片の値を特定のデータ単
位の値の中に組み込むようにしているので、換言すれ
ば、第1の情報の“データ単位”とは、1つのデータ片
の値を組み込もうとする単位に相当している。従って、
“データ単位”のサイズは、本発明の実施にあたって設
計上任意に定めてよく、例えば、1バイトあるいは数バ
イトのような単位であってよい。第1の情報を構成する
複数のデータ単位のうち特定のデータ単位に対して、第
2の情報の各データ片の値を組み込む。例えば、第2の
情報のデータ片の数が16個とすると、第1の情報を構
成する複数のデータ単位のうち特定の16個のデータ単
位に対して、第2の情報の各データ片の値をそれぞれ組
み込む。この組み込みは、所定のアルゴリズムに従っ
て、特定のデータ単位の値を、データ片の値に応じて変
調する(すなわち、該特定のデータ単位の値を変更しな
い/あるいは或る値だけ変更する)演算を行なうことに
よって行なう。こうして、第1の情報のデータの中に、
第2の情報の各データ片が分散的に組み込まれることに
なり、このように第2の情報の各データ片を分散的に組
み込んだ第1の情報のデータが適宜のメモリにストアさ
れる。
【0010】第2の情報の各データ片を分散的に組み込
んだ第1の情報のデータから、該第2の情報を再生する
ために、更に、記憶された前記第1の情報のデータを読
み出すステップと、読み出された前記第1の情報のデー
タのうちの前記特定のデータ単位から、前記複数の小サ
イズのデータ片をそれぞれ再現するステップとを更に具
えるようにしてよい。第1の情報の複数のデータ単位の
うちの特定のデータ単位の各々の値を、前記各データ片
の値に応じて変更するもしくは変更しない制御を行なう
ステップは、該データ片の値をパラメータとする所定の
アルゴリズムに従って該制御を行なうようにしてよい。
例えば、このアルゴリズムは、前記データ片の値に対応
する第1の変数を求めることと、少なくとも1つの前記
特定のデータ単位を含む前記第1の情報の所定数のデー
タ単位を加算又は減算することに基づいて第2の変数を
求めることと、前記第1の変数と第2の変数の相互関係
に基づき演算値を生成することと、生成された演算値を
前記特定のデータ単位の値に演算することとを含んでい
てよい。一例として、前記第1の変数は、1ビットの前
記データ片の値を反転した第1のフラグであり、前記第
2の変数は、少なくとも1つの前記特定のデータ単位を
含む前記第1の情報の所定数のデータ単位を加算又は減
算した値(例えば特定のデータ単位の値のみであっても
よい)の偶数又は奇数に応じた第2のフラグであり、前
記第1の変数と第2の変数の相互関係に基づき演算値を
生成することは、両フラグを比較してその一致/不一致
に応じて0又は1の演算値を生成することである。これ
により、特定のデータ単位の値に0又は1が演算され、
該特定のデータ単位の値が変調される(すなわち、変更
されないか、または或る値だけ変更される)。このよう
にした場合は、読み出された第1の情報における前記特
定のデータ単位の値の偶数又は奇数に応じた数値に基づ
き、第2の情報のデータ片の値を容易に再生することが
できる。
【0011】更に別の観点に従えば、上記の目的の達成
のために、この発明に係る方法は、第1の情報を構成す
るデータと共に第2の情報を構成するデータを記憶する
方法であって、前記第1の情報を構成するデータは複数
のデータ単位の集まりからなっており、前記第2の情報
を構成するデータの少なくとも一部を、複数の小サイズ
のデータ片に分けるステップと、前記第1の情報を構成
するデータを少なくとも2つのグループに分け、各グル
ープ毎に、その中の複数のデータ単位のうちの特定のデ
ータ単位の各々の値を、前記各データ片の値に応じて変
更するもしくは変更しない制御をそれぞれ行なうステッ
プと、各グループ毎に制御された前記特定のデータ単位
を含む前記第1の情報のデータを記憶するステップとを
具え、前記第2の情報を構成するデータの少なくとも一
部が前記第1の情報の前記各グループ毎のデータ内にそ
れぞれ組み込まれた状態で記憶されることを特徴とする
ものである。これによれば、第1の情報における複数の
グループの各々において、データ片に分割された第2の
情報が、それぞれ分散的に組み込まれて、重複して、ス
トアされる。データ再生にあたっては、少なくとも1つ
の前記グループについての前記特定のデータ単位から、
前記複数の小サイズのデータ片を再現すればよい。すな
わち、各グループにおいて、重複して、第2の情報が分
散的に組み込まれていめので、いずれか1つのグループ
に組み込まれた第2の情報を再生すればよい。従って、
この第2の観点に従えば、仮に、不正なデータ改竄によ
って、第1の情報における1つのグループのデータ内容
が改竄され、そのグループにおいて組み込まれた第2の
情報が再生不可能となったとしても、第1の情報におけ
る(改竄されていない)別のグループにおいて組み込ま
れた第2の情報を再生することができる。
【0012】第1の情報におけるグループ分けの仕方
は、第1の情報のデータ特性に従うとよい。例えば、第
1の情報がMIDIデータの場合は、MIDIチャンネ
ル毎にグループ分けするとよい。例えば、MIDIの第
1チャンネルに属する第1の情報のデータ群において第
2の情報のデータ片を分散して組み込み、また、第2チ
ャンネルに属する第1の情報のデータ群において同じ第
2の情報のデータ片を分散して組み込むようにする。そ
うすれば、不正使用ユーザーによって、チャンネル単位
でMIDIデータの改竄や入れ替えが行なわれた場合で
も、改竄されていない別チャンネルのMIDIデータの
中に組み込まれた第2の情報のデータ片から該第2の情
報を再生することができる。この場合、第2の情報のデ
ータ片を第1の情報に組み込むためのアルゴリズムを、
各グループ毎に、適宜異ならせてもよい。このように、
第1の情報(主要情報)をそのデータ特性に応じてグル
ープ化し、各グループ毎に第2の情報(付属情報)を組
み込むようにしている。例えば、第1の情報(主要情
報)がMIDIデータの場合には、チャンネル毎、プロ
グラムチェンジデータの出現タイミング毎、又はMID
Iデータを構成するベロシティの差分値の大きさ毎、等
に応じて第1の情報(主要情報)をグループ化し、それ
ぞれのグループに対応したアルゴリズムで単位データの
一部を変更制御する。これによって、チャンネル情報が
そのまま入れ替えられたりすることによって或るグルー
プのデータが書き換えられたとしても、別のグループの
データから第2の情報(付属情報)を検出することによ
り、その再生を行なうことができるようになる。
【0013】更に別の観点に従えば、上記の目的の達成
のために、この発明に係る方法は、第1の情報を構成す
るデータと共に第2の情報を構成するデータを記憶する
方法であって、前記第1の情報を構成するデータは複数
のデータ単位の集まりからなっており、前記第2の情報
を構成するデータの少なくとも一部を、複数の小サイズ
のデータ片に分けるステップと、前記第1の情報の複数
のデータ単位のうちの特定のデータ単位の各々の値を、
前記各データ片の値に応じて変更するもしくは変更しな
い制御を行なうステップであって、1つの前記特定のデ
ータ単位と別の前記特定のデータ単位との差分値を求め
ることと、この差分値と1つの前記データ片の値とに応
じて該差分値を引き出した前記特定のデータ単位の一方
の値を変更するもしくは変更しない制御を行なうことと
を含むものと、制御された前記特定のデータ単位を含む
前記第1の情報のデータを記憶するステップとを具え、
前記第2の情報を構成するデータの少なくとも一部が前
記第1の情報のデータ内に組み込まれた状態で記憶され
るようにしたことを特徴とするものである。更に、記憶
された前記第1の情報のデータを読み出すステップと、
読み出された前記第1の情報のデータのうちの前記特定
のデータ単位から、前記複数の小サイズのデータ片を再
現するステップであって、1つの前記特定のデータ単位
と別の前記特定のデータ単位との差分値を求めること
と、この差分値から1つの前記データ片の値を再現する
こととを含むものとを具え、再現された各データ片によ
って前記第2の情報を再生するようにしてもよい。これ
によれば、第1の情報の特定のデータ単位の値を、第2
の情報のデータ片の値に応じて変更するもしくは変更し
ない制御を行なうときに、前記特定のデータ単位と別の
特定のデータ単位との差分値を求め、この差分値と1つ
の前記データ片の値とに応じて該差分値を引き出した前
記特定のデータ単位の一方の値を変更するもしくは変更
しない制御を行なうことを特徴としている。これによ
り、第1の情報を構成する各データ単位毎のデータ値を
一律にシフトするようなデータ改変が行なわれたとして
も、それらの差分値は変化しないので、第2の情報を再
生するときの再現性が向上する。
【0014】上述の各観点に従う方法において、記憶さ
れた第1の情報のデータを読み出し、読み出したデータ
を通信ネットワークを介して伝送するようにしてもよ
い。更に、通信ネットワークを介して伝送されたデータ
を受信し、受信したデータにおける前記第1の情報のデ
ータのうちの前記特定のデータ単位から、前記複数の小
サイズのデータ片を再現するようにしてもよい。第2の
情報は、必ずしも第1の情報に関連性を有していなくて
もよい。例えば、第1の情報が通信ネットワークを介し
て伝送される或る番組の内容であるとすると、第2の情
報は、その番組とは無関係のニュース文等であってもよ
い。さらに、再生した第2の情報の内容を表示するため
の適宜の表示手段を具備していてもよい。この発明は、
上述の各観点に従う方法を実施するための回路もしくは
装置を具備する電子情報処理装置として実施することが
できる。更に、この発明は、上述の各観点に従う方法を
実行させるためのプログラムを記録したコンピュータ読
み取り可能な記録媒体としての形態で実施することがで
きる。更に、この発明は、上述の各観点に従う方法に従
って前記第2の情報を構成するデータの少なくとも一部
を前記第1の情報のデータ内に組み込んだ状態のデータ
構成からなるデータを記録してなるコンピュータ読み取
り可能な記録媒体としての形態で実施することができ
る。
【0015】
【発明の実施の形態】以下、この発明の実施の形態を添
付図面に従って詳細に説明する。図2は、この発明に係
る電子情報処理システムとしての機能を具備する電子楽
器の全体構成を示すブロック図である。電子楽器1は、
CPU21、ROM22、RAM23、音源24、フロ
ッピーディスクドライブ25、鍵盤26、パネルスイッ
チ27及び表示回路28から構成される。CPU21は
ROM22及びRAM23内の各種プログラムや各種デ
ータ、及びフロッピーディスクドライブ25を介して取
り込まれた楽音制御情報(MIDIデータ)に基づいて
電子楽器1全体の動作を制御すると共に取り込まれたM
IDIデータ内に付属情報を分散して記憶したり、付属
情報の分散記憶されたMIDIデータをフロッピーディ
スクから取り込み、それから付属情報を検出したりす
る。この実施の形態では、フロッピーディスクドライブ
25を例に説明するが、これ以外のMOドライブ、PD
ドライブ、CD−ROMドライブなどでもよい。CPU
21は、フロッピーディスクドライブ25を介して取り
込まれたMIDIデータや鍵盤26の押鍵操作に基づい
て生成したMIDIデータを音源24に供給する。な
お、外部に接続された音源を用いて発音処理を行うよう
にしてもよい。また、CPU21には図示したものの他
にも、データ及びアドレスバス29を介してタイマ、表
示手段、サウンドシステム等の周辺機器が接続される
が、ここでは省略する。
【0016】ROM22はCPU21の各種プログラム
(システムプログラムや、この発明を実施するための動
作プログラムなど)や各種データを格納するものであ
り、リードオンリーメモリ(ROM)で構成されてい
る。RAM23は、CPU21がプログラムを実行する
際に発生する各種データを一時的に記憶するものであ
り、ランダムアクセスメモリ(RAM)の所定のアドレ
ス領域がそれぞれ割り当てられ、レジスタ、フラグ、バ
ッファ、テーブル等として利用される。また、CPU2
1には、ハードディスク装置11を接続して、そこに自
動演奏データやコード進行データ等の各種データを記憶
していてもよく、更に、この発明を実施するための動作
プログラムを記憶しておくようにしてもよい。また、前
記ROM22に動作プログラムを記憶せずに、ハードデ
ィスク装置11にこれらの動作プログラムを記憶させて
おき、それをRAM23に読み込むことにより、ROM
22に動作プログラムを記憶したときと同様の動作をC
PU21に行わせることができる。このようにすると、
動作プログラムの追加やバージョンアップ等が容易に行
える。着脱自在な外部記憶媒体の1つとして、CD−R
OM(コンパクトディスク・リードオンリーメモリ)を
使用してもよい。このCD−ROMには、上述のような
自動演奏データやコード進行データや楽音波形データや
映像データなどの各種データ及び動作プログラムやその
他プログラムを記憶していてもよい。CD−ROMに記
憶されている動作プログラムや各種データは、CD−R
OMドライブ12によって、読み出され、ハードディス
ク装置11に転送記憶させることができる。これによ
り、動作プログラムの新規のインストールやバージョン
アップを容易に行うことができる。勿論、可搬式の記録
媒体としては、上記CD−ROMに限らず、フロッピー
ディスクや光磁気ディスク(MO)など、その他の媒体
も使用可能である。これらの各種記録媒体は、本発明を
実施するためののコンピュータプログラムを記録する用
途だけではなく、本発明に従って主要情報内に付属情報
を分散して組み込んでなるデータ構造からなるデータを
記録する用途にも使用できる。
【0017】また、通信インターフェイス13をデータ
及びアドレスバス29に接続し、この通信インターフェ
イス13を介してLAN(ローカルエリアネットワー
ク)やインターネットなどの種々の通信ネットワーク上
に接続可能とし、他のサーバコンピュータとの間でデー
タのやりとりを行うようにしてもよい。これにより、ハ
ードディスク装置11内に動作プログラムや各種データ
が記憶されていないような場合や、記憶済の動作プログ
ラムや各種データの内容を更新するような場合におい
て、サーバコンピュータから新しい動作プログラムや各
種データをダウンロードすることができる。この場合、
クライアントとなる楽音生成装置である電子楽器1か
ら、通信インターフェイス13及び通信ネットワークを
介してサーバコンピュータに動作プログラムや各種デー
タのダウンロードを要求するコマンドを送信する。サー
バコンピュータは、このコマンドに応じて、所定の動作
プログラムやデータを、通信ネットワークを介して電子
楽器1に送信する。電子楽器1では、通信インターフェ
イス13を介してこれらの動作プログラムやデータを受
信して、ハードディスク装置11にこれらを蓄積する。
これによって、動作プログラム及び各種データのダウン
ロードが完了する。
【0018】音源24は、複数のチャンネルで楽音信号
の同時発生が可能であり、CPU21から与えられた楽
音制御情報(ノートオン、ノートオフ、ベロシティ、ピ
ッチデータ、音色番号等のMIDIデータ)を入力し、
これらのデータに基づいた楽音信号を発生して図示して
いないサウンドシステムに供給する。音源24において
複数チャンネルで楽音信号を同時に発音させる構成とし
ては、1つの回路を時分割で使用することによって複数
の発音チャンネルを形成するようなものや、1つの発音
チャンネルが1つの回路で構成されるような形式のもの
であってもよい。また、音源24における楽音信号発生
方式はいかなるものを用いてもよい。例えば、発生すべ
き楽音の音高に対応して変化するアドレスデータに応じ
て波形メモリに記憶した楽音波形サンプル値データを順
次読み出すメモリ読み出し方式(波形メモリ方式)、又
は上記アドレスデータを位相角パラメータデータとして
所定の周波数変調演算を実行して楽音波形サンプル値デ
ータを求めるFM方式、あるいは上記アドレスデータを
位相角パラメータデータとして所定の振幅変調演算を実
行して楽音波形サンプル値データを求めるAM方式等の
公知の方式を適宜採用してもよい。また、これらの方式
以外にも、自然楽器の発音原理を模したアルゴリズムに
より楽音波形を合成する物理モデル方式、基本波に複数
の高調波を加算することで楽音波形を合成する高調波合
成方式、特定のスペクトル分布を有するフォルマント波
形を用いて楽音波形を合成するフォルマント合成方式、
VCO、VCF及びVCAを用いたアナログシンセサイ
ザ方式等を採用してもよい。また、専用のハードウェア
を用いて音源を構成するものに限らず、DSPとマイク
ロプログラムを用いて音源を構成するようにしてもよい
し、CPUとソフトウェアのプログラムで音源を構成す
るようにしてもよい。音源24から発生された楽音信号
は、図示しないアンプ及びスピーカからなるサウンドシ
ステムによって発音される。なお、音源24とサウンド
システムとの間にエフェクタが設けてあってもよい。
【0019】鍵盤26は、発音すべき楽音の音高を選択
するための複数の鍵を備えており、各鍵に対応してキー
スイッチを有しており、新たな鍵が押圧されたときは、
その鍵に対応したキーコードを含むキーオンイベント情
報を出力し、鍵が離鍵されたときはその離鍵された鍵に
対応したキーコードを含むキーオフイベント情報を出力
する。また、鍵盤26は、鍵押し下げ時の押鍵操作速度
又は押圧力等を判別してタッチデータを生成し、それを
ベロシティデータとして出力する。鍵盤26は音楽演奏
のための基本的な操作子であり、これ以外の演奏操作子
でもよいことはいうまでもない。パネルスイッチ27
は、電子楽器1の各種動作内容を選択・設定・制御する
ための複数の操作子を備えたものである。表示回路28
はCPU21の制御状態、設定データの内容等の各種の
情報を図示していないモニタ上に表示するものである。
この実施の形態では、著作権表示データ、曲名、作曲者
情報、作成年月日、歌詞、ニュース文、機種名(ハード
名)、IDなどのテキストデータなどを表示する。な
お、電子楽器1は、楽器専用機器として構成されている
必要はなく、例えば、汎用電子機器であるパーソナルコ
ンピュータを使用し、これに本発明に係るソフトウェア
を搭載して、楽器機能を実現するようにしたものであっ
てもよい。勿論、本発明は電子楽器としての実施形態に
限らず、その他の適宜の電子機器システムとしての実施
形態をとってもよいものである。その場合においても、
汎用電子機器であるパーソナルコンピュータに本発明に
係るソフトウェアを搭載して、発明を実施することがで
きる。
【0020】次に、この発明に係る電子情報処理システ
ムが電子情報付与装置として動作する場合の一例につい
て説明する。図3は、電子楽器1が電子情報付与装置と
して動作する場合の電子署名付与処理の一例を示すフロ
ーチャート図である。まず、この場合には、電子楽器1
は、フロッピーディスクドライブ25から読み出したM
IDIデータにそのヘッダ情報の一部である電子署名す
なわち著作権表示データを分散する場合について説明す
る。なお、このようにしてできたMIDIデータを再び
フロッピーディスクに記録したり、他の記憶媒体に記憶
したり、転送したりしてもよい。まず、ステップ31で
は、MIDIデータ列内に分散して書き込まれるべき電
子署名(著作権表示データ)の内容を決定する。例え
ば、著作権表示データとして『COPYRIGHT△Y
MH△1996』のような文字をMIDIデータ列内に
分散して書き込む場合には、これらの文字列をパネルス
イッチ27を用いて決定する。ここで、△は空白を意味
するものとする。ステップ31で書き込むべき電子署名
すなわち文字列が決定したので、今度はステップ32
で、その電子署名に関するデータ列を得る。例えば、パ
ネルスイッチ27によって『COPYRIGHT△YM
H△1996』が入力された場合には、それをASCI
Iの文字符号のデータ列に変換する。この場合は、
『C』=『43H』、『O』=『4FH』、『P』=
『50H』、『Y』=『59H』、『R』=『52
H』、『I』=『49H』、『G』=『47H』、
『H』=『48H』、『T』=『54H』、『△』=
『20H』、『Y』=『59H』、『M』=『4D
H』、『H』=『48H』、『△』=『20H』、
『1』=『31H』、『9』=『39H』、『9』=
『39H』、『6』=『36H』からなる一連のASC
IIのデータ列が得られることになる。
【0021】次に、ステップ33では、電子署名として
付与する情報すなわち、ステップ32で得られたASC
IIのデータ列の1バイト分をバイトレジスタBRに格
納する。そして、ステップ34では、このバイトレジス
タBRに格納されたASCIIの各ビットデータを反転
して、別の8ビット構成のビット列を作成する。例え
ば、『Y』=『59H』(数字の後のHは16進数表現
であることを示す)をバイトレジスタBRに格納する
と、それは図1(F)に示すように『01011001
B』(数字の後のBは2進数表現であることを示す)=
『89D』(数字の後のDは10進数表現であることを
示す)のようなビット列になる。このビット列がステッ
プ34のデータ変換すなわちビット反転によって、図1
(E)のようなビット列、すなわち『10100110
B』=『166D』のようなビット列になる。次に、ス
テップ35では、MIDIデータ列(Standard
MIDIFile:SMF)の中からキーオンイベン
トデータやプログラムチェンジデータやコントロールチ
ェンジデータなどの各種のMIDIデータを順次取り出
す。すなわち、MIDIデータ列は基本的にはキーオン
ステータスバイト、キーコードバイト、ベロシティバイ
トからなるキーオンイベントデータやこれ以外のプログ
ラムチェンジイベントデータやコントロールチェンジイ
ベントデータなどから構成されているので、ステップ3
5では、このようなMIDIデータを順番に取り出す。
ステップ36では、取り出されたMIDIデータがキー
オンイベントデータKONであるかどうかを判定し、キ
ーオンイベントデータ(YES)の場合は次のステップ
37に進み、そうでない(NO)の場合はステップ3D
に進む。従って、ステップ35で取り出されたMIDI
データがキーオンイベントデータの場合には、図1
(A)のようなキーオンイベントデータからなるMID
Iデータ列SMF1が得られることになる。このキーオ
ンイベントデータのMIDIデータ列SMF1はデュレ
ーションタイムDと、キーオンイベントデータとの組合
せで構成される。ステップ37では、キーオンイベント
データの中の各バイトのデータをそれぞれ対応するレジ
スタa,b,cに格納する。すなわち、キーオンイベン
トデータの中のキーオンステータスバイトの中のチャン
ネル番号をレジスタaに、次の第1のデータバイト(キ
ーコードバイト)の中のキーコードをレジスタbに、第
2のデータバイト(ベロシティバイト)の中のベロシテ
ィをレジスタcにそれぞれ格納する。
【0022】ステップ38では、ステップ34で作成さ
れたビット列の先頭から順に1ビット取り出して、それ
を第1のビットフラグBF1に格納する。次のステップ
39では、ステップ37の各レジスタa,b,cの格納
値を所定の関数に従って演算し、その演算結果によって
得られたビットデータを反転して、第2のビットフラグ
BF2に格納する。この実施の形態では、各レジスタ
a,b,cの値の合計値のモジュロ2を所定の関数とす
る。すなわち、関数f1(a,b,c,)=(a+b+
c)mod2とする。例えば、図1(A)のようなキー
オンイベントMIDIデータ列SMF1の場合には、8
つのキーオンイベントデータで1つの文字データに相当
するデータが作成される。まず、各キーオンイベントデ
ータの所定の関数f1(a,b,c)で演算すると、図
1(B)のようになる。すなわち、(a+b+c)の値
が偶数なら『0』、奇数なら『1』となる。そして、こ
れらの反転ビットが第2のビットフラグBF2に格納さ
れ、図1(C)のようになる。
【0023】ステップ3Aでは、ステップ38及びステ
ップ39で得られた第1のビットフラグBF1と第2の
ビットフラグBF2とが等しいかどうかを判定し、等し
い(YES)場合には次のステップ3B及びステップ3
Cの処理を行い、等しくない(NO)場合はステップ3
Eにジャンプする。ステップ3Bでは、第1のビットフ
ラグBF1と第2のビットフラグBF2とが等しいと判
定されたので、レジスタcの値すなわちベロシティデー
タの最下位ビットに『1』を加算する。そして、ステッ
プ3Cで、そのレジスタcの値に基づいてMIDIデー
タ列中のキーオンイベントデータを構成するベロシティ
の値を更新する。すなわち、ベロシティの値を1だけ増
加する。例えば、図1の場合には、第1のビットフラグ
BF1と第2のビットフラグBF2との3番目、5番
目、6番目及び7番目がそれぞれ等しいと、ステップ3
Aで判定されるので、MIDIデータ列中の3番目、5
番目、6番目及び7番目のキーオンイベントデータのベ
ロシティの値が『1』だけ増加する。すなわち、3番目
のキーオンイベントデータのベロシティ値『63』が
『64』になり、5番目のキーオンイベントデータのベ
ロシティ値『78』が『79』になり、6番目のキーオ
ンイベントデータのベロシティ値『91』が『92』に
なり、7番目のキーオンイベントデータのベロシティ値
『42』が『43』になる。
【0024】ステップ3Dでは、ステップ36でMID
Iデータ列から取り出されたデータがキーオンイベント
データでない(NO)と判定された場合に行われる処理
であり、取り出されたMIDIデータが今度はプログラ
ムチェンジイベントPCMであるかどうかを判定し、プ
ログラムチェンジイベントPCM(YES)の場合に
は、ステップ3Hに進み、そうでない(NO)場合はス
テップ3Eに進む。ステップ3Eでは、ステップ3A又
はステップ3DでNOと判定された場合又はステップ3
Cの処理を終えた場合に行われる処理であって、ステッ
プ36で取り出されたMIDIデータの次のデータがデ
ータ終了を示すデータかどうかの判定を行う。このステ
ップ3Eでの判定結果がデータ終了(YES)の場合に
は、電子情報付与処理を終了し、データ終了でない(N
O)場合には、次のステップ3Fに進む。ステップ3F
では、ステップ35〜ステップ3Eまでの処理を1巡回
処理とした場合にその1巡回処理が8回分すなわち8ビ
ット分行われたかどうかを判定し、8回分行われた(Y
ES)場合には、次のステップ3Gに進み、そうでない
(NO)の場合は、ステップ35にリターンし、レジス
タBR内の次の1ビットに対してステップ35〜ステッ
プ3Eの処理を行う。ステップ3Gでは、ステップ33
〜ステップ3Fまでの処理を1巡回処理とした場合にそ
の1巡回処理が電子署名データを構成するバイト数だけ
行われたかどうかを判定し、行われた(YES)場合に
は、次のステップ3Hに進み、そうでない(NO)の場
合は、ステップ33にリターンし、電子署名データの次
の1バイトに対してステップ33〜ステップ3Eの処理
を行う。ステップ3Hでは、ステップ3Gで電子署名デ
ータの全バイトに対してステップ33からステップ3F
までの処理が行われたことが判定されたので、再び電子
署名データの書込み処理を行うために、電子署名バイト
のポインタをその先頭にセットし、ステップ33にリタ
ーンする。こうして、署名データの各ビットを所定のア
ルゴリズムで変換したデータが、分散されて、MIDI
データ中のキーオンイベントデータ内のベロシティバイ
ト部分に埋め込まれる。また、このステップ3Hでは、
ステップ3DでYESと判定された場合すなわち取り出
されたMIDIデータがプログラムチェンジイベントP
CMだった場合にも行われる。従って、電子署名データ
はプログラムチェンジイベントPCMが出現する度に、
電子署名データの先頭に復帰することになる。何故、プ
ログラムチェンジイベントで復帰するようにしたかとい
うと、プログラムチェンジイベントは電子署名を付与す
るノートオンイベントなどに比べて、比較的低頻度で発
生し、プログラムチェンジ後は、楽器が変わることを意
味するので、その位置を始点としてエディットされる可
能性の高い単位ということが言えるからである。
【0025】次に、図3の電子情報付与処理によって付
与された電子情報すなわち電子署名データの検出処理に
ついて説明する。図4は、電子楽器1が電子情報検出装
置として動作する場合の一例を示すフローチャート図で
ある。この場合には、フロッピーディスクドライブ25
から読み出されたMIDIデータのベロシティバイト部
分にそのヘッダ情報の一部である電子署名すなわち著作
権表示データが分散記録されているものとする。以下の
実施の形態では、この著作権表示データを検出して、そ
れをモニタなどに表示するまでの動作を説明する。ま
ず、ステップ41では、署名データ格納レジスタSIG
Nにナルデータを格納する。すなわち、署名データ格納
レジスタSIGNの内容をリセットする。ステップ42
では、電子署名を検出するべきMIDIデータ列、すな
わち図3の電子情報付与処理によって電子署名の付与さ
れたMIDIデータ列を取り出す。そして、次のステッ
プ43で、バイトレジスタBRとビットカウンタBCN
の値をリセットする。
【0026】次に、ステップ44では、MIDIデータ
列(Standard MIDIFile:SMF)の
中から順次キーオンイベントデータやプログラムチェン
ジデータやコントロールチェンジデータなどのデータを
取り出す。ステップ45では、取り出されたMIDIデ
ータがキーオンイベントデータKONであるかどうかを
判定し、キーオンイベントデータ(YES)の場合は次
のステップ46に進み、そうでない(NO)場合はステ
ップ4Cに進む。従って、ステップ44で取り出された
MIDIデータがキーオンイベントデータの場合には、
図1(G)のようなキーオンイベントMIDIデータ列
SMF2が作成されることになる。なお、図1(G)の
キーオンイベントデータ列は先に電子署名の付与された
図1(D)のキーオンイベントデータ列と同じものであ
る。ステップ46では、キーオンイベントデータの中の
各バイトのデータをそれぞれ対応するレジスタa,b,
cに格納する。すなわち、キーオンイベントデータの中
のキーオンステータスバイトの中のチャンネル番号をレ
ジスタaに、次の第1のデータバイト(キーコードバイ
ト)の中のキーコードをレジスタbに、第2のデータバ
イト(ベロシティバイト)の中のベロシティをレジスタ
cにそれぞれ格納する。
【0027】ステップ47では、バイトレジスタBRの
値を2倍(左シフト)して、その最下位ビットに関数f
1(a,b,c,)=(a+b+c)mod2の反転値
を加算する。ステップ48では、ビットカウンタBCN
の値を1だけインクリメントする。ステップ49では、
ビットカウンタBCNの値が『8』になったかどうかを
判定し、YESの場合は次のステップ4Aに進み、NO
の場合はステップ4Fにジャンプする。例えば、図1
(G)のようなキーオンイベントのMIDIデータ列S
MF2の場合には、8つのキーオンイベントデータで1
つの文字データに相当するデータが作成される。まず、
各キーオンイベントデータの所定の関数f1(a,b,
c)で演算すると、図1(H)のようになる。すなわ
ち、(a+b+c)の値が偶数なら『0』、奇数なら
『1』となる。そして、これらの反転ビットは図1
(J)のようになり、その値がバイトレジスタBRを順
次シフトしていき、最終的にはバイトレジスタBRの格
納値は、図1(J)のようになる。このようにして、得
られた図1(J)のデータは図1(F)と同じである。
すなわち、MIDIデータのベロシティバイト部分に分
散して書き込まれた著作権表示データすなわち図1
(F)のようなデータが図1(J)のように再現された
ことになる。ステップ4Aでは、バイトレジスタBRの
格納値をASCIIの文字データに変換して、署名デー
タ格納レジスタSIGNに追加記憶する。ステップ4B
で、バイトレジスタBRとビットカウンタBCNの値を
リセットする。ステップ4Cでは、ステップ45でMI
DIデータ列から取り出されたデータがキーオンイベン
トデータでない(NO)と判定された場合に行われる処
理であり、取り出されたMIDIデータが今度はプログ
ラムチェンジイベントPCMであるかどうかを判定し、
プログラムチェンジイベントPCM(YES)の場合に
は、次のステップ4D及びステップ4Eに進み、そうで
ない(NO)場合はステップ4Fに進む。ステップ4D
では、バイトレジスタBRの値をリセットし、ステップ
4EではビットカウンタBCNの値をリセットする。ス
テップ4Fでは、ステップ49又はステップ4CでNO
と判定された場合、又はステップ4B又はステップ4E
の処理を終えた場合に行われる処理であって、ステップ
46で取り出されたMIDIデータの次のデータがデー
タ終了を示すデータかどうかの判定を行う。このステッ
プ4Fの判定結果がデータ終了(YES)の場合には、
次のステップ4Gに進み、データ終了でない(NO)場
合にはステップ44にリターンする。ステップ4Gで
は、署名データ格納レジスタSIGNの内容に基づいて
検出された電子署名情報を図示していない表示装置など
に表示する。
【0028】なお、上述の実施の形態では、MIDIデ
ータ列からキーオンイベントデータを順番に取り出し
て、それに対して順番に電子署名データを格納する場合
について説明したが、エディットされる可能性の高い単
位として、チャンネル単位があるので、それに対応して
電子署名データを格納する場合について説明する。図5
は、電子楽器1が電子情報付与装置として動作する場合
の電子署名付与処理の別の一例を示すフローチャート図
である。この場合も、図3の場合と同様に、電子楽器1
は、フロッピーディスクドライブ25から読み出したM
IDIデータにそのヘッダ情報の一部である電子署名す
なわち著作権表示データを分散記録する。まず、ステッ
プ51及びステップ52は、図3のステップ31及びス
テップ32と同じであり、ステップ51でMIDIデー
タ列内に分散して書き込まれるべき電子署名(著作権表
示データ)の内容を決定し、ステップ52でその文字列
に係るデータ列を得る。そして、次のステップ53で
は、図3のステップ33〜ステップ3Hの処理をそのチ
ャンネル毎に行う。そのとき、ステップ39の所定の関
数に従った演算処理をそのチャンネル毎に異ならせるよ
うにする。例えば、ステップ39では、関数f1(a,
b,c,)=(a+b+c)mod2を第2のビットフ
ラグBF2に格納しているが、これを第1の関数処理と
し、次の第2、第3及び第4の関数処理の中から、適当
なものを各チャンネル毎に使い分けるようにする。第2
の関数処理はf2(a,b,c)=(a+c)mod2
とする。第3の関数処理はf3(a,b,c)=(b+
c)mod2とする。第4の関数処理はf4(a,b,
c)=(c)mod2とする。ステップ53では、これ
らの第1から第4までの関数処理をMIDIチャンネル
毎に選択的に切り換えて、図3のステップ33〜ステッ
プ3Hまでの処理に従ってそれぞれのチャンネル毎にそ
の関数処理に従って変換された電子署名データを付与す
る。このように、チャンネル毎に関数処理の内容を変更
することによって、それぞれの情報を一度に変更するよ
うなエディット処理、例えばチャンネル情報の入れ替え
やキーコードのシフトなどといったものが行われた場合
でも、エディットによって変更されるデータに関係しな
い関数を利用するチャネルから電子署名データを復元す
ることができるという効果がある。
【0029】次に、図5の電子情報付与処理2によって
付与された電子情報すなわち電子署名データを検出する
電子情報検出処理2について説明する。図6は、電子楽
器1が電子情報検出装置として動作する場合の電子情報
検出処理の別の一例を示すフローチャート図である。こ
の場合には、フロッピーディスクドライブ25から読み
出されたMIDIデータの各チャンネル毎に所定の関数
処理(第1から第4までのいずれかの関数処理)によっ
て、ベロシティバイト部分にそのヘッダ情報の一部であ
る電子署名すなわち著作権表示データが分散記録されて
いるものとする。以下の実施の形態では、所定の関数処
理によって分散記録された著作権表示データをチャンネ
ル毎に検出して、それをモニタなどに表示するまでの動
作を説明する。まず、ステップ61では、電子署名を検
出するべきMIDIデータ列、すなわち図5の電子情報
付与処理によって各チャンネル毎に所定の関数処理に応
じて電子署名データの付与されたMIDIデータ列を取
り出す。そして、次のステップ62で、チャンネルカウ
ンタをリセットし、ステップ63で関数カウンタをリセ
ットする。このチャンネルカウンタと関数カウンタは、
後の処理で、各チャンネルに対して各関数処理を施すた
めに利用されるものである。例えば、MIDIチャンネ
ルが16チャンネル相当の場合には、チャンネルカウン
タは0から15までを巡回的にカウントするように処理
される。また、関数カウンタは、前述のように関数処理
が4種類の場合には、0〜3までも巡回的にカウントす
るように処理される。関数カウンタが『0』の場合は第
1の関数処理f1(a,b,c,)=(a+b+c)m
od2を、『1』の場合は第2の関数処理f2(a,
b,c)=(a+c)mod2を、『2』の場合は第3
の関数処理f3(a,b,c)=(b+c)mod2
を、『3』の場合は第4の関数処理f4(a,b,c)
=(c)mod2を意味する。
【0030】ステップ64では、チャンネルカウンタの
値に該当するチャンネルについて、関数カウンタの値に
該当する関数処理を用いて図4のステップ41からステ
ップ4Fまでと同様の電子署名検出処理を行う。ステッ
プ65では、検出されたデータ列に有意な部分があるか
どうかの判定を行う。ここで有意な部分とは、ASCI
Iの文字データによって構成される『COPYRIGH
T』なる署名データの一部分である。従って、ステップ
65では、図4の処理によって署名データ格納レジスタ
SIGNに順次追加されたASCIIの文字データによ
って構成された文字列の中に『COPYRIGHT』な
る文字列データが存在するかどうかを判定することにな
る。ステップ65の判定の結果、署名データ格納レジス
タSIGN内に有意な部分が存在しない(NO)と判定
された場合には、次のステップ66に進み、関数カウン
タを1だけインクリメントする。そして、次のステップ
67で、全ての関数処理に対してステップ64及びステ
ップ65の処理すなわち署名データの抽出処理が行われ
たかどうかの判定を行い、行われた(YES)場合には
次のステップ68に進み、そうでない(NO)場合はス
テップ64にリターンし、次の関数処理についてステッ
プ64及びステップ65の処理を行う。逆に、ステップ
65の判定の結果、署名データ格納レジスタSIGN内
に有意な部分が存在した場合には、ステップ6Bに進
み、その検出された電子署名データをモニタ上に表示し
て終了する。
【0031】ステップ68では、チャンネルカウンタを
1だけインクリメントする。そして、次のステップ69
で全てのチャンネルに対してステップ64及びステップ
65の処理すなわち署名データの抽出処理が行われたか
どうかの判定を行い、行われた(YES)場合には次の
ステップ6Aに進み、そうでない(NO)場合はステッ
プ63にリターンし、次のMIDIチャンネルについて
ステップ63〜ステップ65の処理を行う。ステップ6
9でYESと判定されたということは、全てのMIDI
チャンネルに対して、全ての関数処理を用いて署名デー
タの抽出処理を行った結果、データ列に有意な部分が存
在しなかったということだから、ステップ6Aでは、そ
の結果として『電子署名なし』又は『電子署名検出失
敗』などの文字をモニタ上に表示する。
【0032】なお、MIDIデータに基づく楽音再生演
奏においては、上記のように一部データ変更されたベロ
シティデータはそのまま再生に利用してよい。ベロシテ
ィデータの最下位1ビットの値が1増加又は減少するこ
とは、楽音の再生精度にそれほど深刻な影響を与えな
い。勿論、そうせずに、一部データ変更されたベロシテ
ィデータから署名データによる誤差を取り除いて、正確
なベロシティデータを再生するみとも可能であるから、
そのように実施してもよい。なお、上述の実施の形態で
は、付属情報として署名データを、主要情報としてのM
IDIデータのベロシティ部分に分散させて記録する場
合について説明したが、これは一例にすぎず、これ以外
の著作者名、曲の題名、画像/映像の題名などに関する
文字データやデータ形式に関するデータやその他の種々
のデータからなる適宜の付属情報を、所要の主要情報の
中に分散させて記録するようにしてもよいことはいうま
でもない。また、付属情報を分散させて記憶する対象と
なる主要情報の種類は、ベロシティ情報に限らず、ベロ
シティ情報以外の適宜の情報、例えばデュレーションタ
イム(待ち時間)データの情報であってもよい。また、
1つの付属情報を、異なる複数種類の主要情報(例えば
とベロシティ情報とデュレーションタイム情報)にわた
って分散させて記録するようにしてもよい。両方に分散
記録する場合、その厳密性すなわち分散記録することに
よってそのデータの内容が変更される度合いに応じて、
分散記録する箇所を適宜切り換えるようにしてもよい。
すなわち、デュレーションタイムデータの短い領域で、
そのデュレーションタイムデータに分散記録すると、そ
れによる変動の割合(厳密性)が大きくなるので、好ま
しくないが、デュレーションタイムデータが比較的大き
い領域では、逆の関係にあるので、分散記録しても影響
は少ない。同じく、ベロシティ部分に記録する場合で
も、ベロシティの値の小さい領域て、そのベロシティ部
分に分散記録すると、それによる変動の割合(厳密性)
が大きくなるので、好ましくないが、ベロシティの値の
大きい領域では、分散記録しても影響は少ない。従っ
て、これらを適宜考慮して種々のデータを分散記録する
ようにしてもよい。
【0033】また、上述の実施の形態では、MIDIデ
ータを主要情報として、このMIDIデータ内に付属情
報を分散記録する場合について説明したが、これに限ら
ず、波形サンプルデータやシーケンスデータ、ディジタ
ル記録音声データ、画像データ、動画データ、レジスト
レーション(電子楽器の設定記録)データなど、適宜の
データを主要情報としてもよく、これらの適宜の主要情
報内に所要の付属情報を分散記録するようにしてもよ
い。波形データ(波形サンプルデータ)を主要情報とし
てそこに適宜の付属情報を分散記録する場合には、所定
の関数処理としてその波形データ(wave_dat
a)そのもののモジュロ2、すなわち、f1(wave
_data)=wave_data mod2としても
よい。また、波形データの値とそのサンプルポイントデ
ータとを用いて、両データの和のモジュロ2、すなわ
ち、f2(wave_data,sample_poi
nt)=(wave_data+sample_poi
nt) mod2としてもよい。図5及び図6の実施の
形態では、各(論理)チャンネル毎に関数処理の種類を
変更して、署名データを検出する場合について説明した
が、図3及び図4のようにプログラムチェンジデータの
検出タイミング毎に関数処理の種類を変更するようにし
てもよい。この場合には、検出されたデータ列に有意な
部分が存在するかどうかの判定処理も各プログラムチェ
ンジデータの検出タイミング毎に行う必要がある。
【0034】上述の実施の形態では、検出された電子署
名情報(すなわち付属情報)をモニタ上に表示する場合
について説明したが、検出側において、署名情報(すな
わち付属情報)がない場合や署名情報が完全に復旧でき
ない場合(各論理チャンネルにおいて、署名情報が検出
できるチャンネルと検出できないチャンネルが混在する
場合)には、データの再生を中止するようにしてもよ
い。また、その検出側の電子楽器やコンピュータなどが
ネットワークに接続されている場合には、そのネットワ
ーク上に不正にエディットされたデータが存在すること
を送信し、それをホストコンピュータ側で検出すること
ができるようにしてもよい。上述の実施の形態では、電
子楽器がこの発明に係る方法又は装置もしくはシステム
を採用した電子署名付与装置又は電子署名検出装置とし
て動作する場合について説明したが、この発明に係る方
法又は装置もしくはシステムは、電子楽器に限らず、ど
のような機器若しくは装置においても適用することがで
きる。この発明に係る方法又は装置もしくはシステムを
採用した電子署名(すなわち付属情報)付与及び/又は
検出装置は、ディスクリートタイプハードウェア装置で
構成してもよいし、ソフトウェアあるいはDSP(デジ
タル・シグナル・プロセッサ)とマイクロプログラムな
どで構成するようにしてもよい。また、このような電子
署名(すなわち付属情報)付与及び/又は検出装置をフ
ロッピーディスクドライブや通信インターフェイスなど
に予め内蔵しておいて、データの入出力の段階で強制的
に電子署名データ(すなわち付属情報)を付与したり、
検出したりするようにしてもよい。上述の実施の形態で
は、電子署名データ(すなわち付属情報)を主要情報の
間に分散記録する(付与する)ことと、それから、これ
を読み出して電子署名データ(すなわち付属情報)を再
生する(検出する)ことについて説明した。しかし、記
録する(付与する)ことと再生する(検出する)ことの
どちらか一方のみを実施することも本発明の範囲に含ま
れる。例えば、電子署名データ(すなわち付属情報)の
分散記録された(付与された)データ(すなわち主要情
報)を、フロッピーディスクやコンパクトディスクなど
で供給するようにしてもよいし、ネットワークを通じて
電子的に供給するようなデータ形態を採用してもよい。
【0035】図3のステップ3Bでは、ベロシティデー
タの値を1だけインクリメント処理する場合について説
明したが、デクリメント処理してもよいし、これらの処
理を適当なタイミング(所定データ数毎とか)で交互に
行うようにしてもよい。上述の実施の形態では、所定の
関数処理の後にビット反転処理を行う場合について説明
したが、これは行わなくてもよい。また、ビット反転処
理の他にも、上位ビットと下位ビットを入れ替えると
か、AND(論理積)、OR(論理和)、XOR(排他
的論理和)などの論理演算処理を施すとか、種々の処理
を加えるようにしてもよいことはいうまでもない。ま
た、適宜の暗号化処理を施すようにしてもよい。例え
ば、上述の第1から第4までの関数処理の結果を適宜組
み合わせてもよいし、前回の関数処理の結果を次の関数
処理に組み合わせて演算するようにしてもよい。なお、
これらの各処理はある程度高速に行うことができ、変換
後、逆変換によりもとに戻せるものであれば、これ以外
の方法でもよいことはいうまでもない。上述の実施の形
態では、プログラムチェンジデータの検出タイミング毎
に新たに署名データの付与処理を行う場合について説明
したが、これに限らず、小節単位(例えば8小節毎な
ど)データの検出タイミング毎に行うようにしてもよ
い。また、波形データに分散記録する場合には、所定の
サンプル数毎や所定のゼロクロス毎に新たに署名データ
の付与処理を行うようにしてもよい。ゼロクロス(波形
の値の符号が変わるタイミング)は波形エディットの際
の基準地点と考えられるからである。また、上述の実施
の形態では、署名データや題名などのような付属情報を
記録する場合について説明したが、MIDIデータと波
形データを合わせて記録する場合に、MIDIデータに
その波形データの一部を記録するようにしてもよいし、
波形データにMIDIデータの一部を合わせて記録する
ようにしてもよい。
【0036】なお、上述の実施の形態では、著作権に関
する署名データを付属情報として、これをMIDIデー
タのベロシティ部分に分散記録する場合について説明し
たが、これは一例であり、これ以外の著作者名、曲の題
名(曲名)、画像/映像の題名などに関するテキスト情
報や、そのデータ形式に関する情報やその他の種々の電
子情報(曲の解説、著作者に関する情報、著作年、歌
詞、ニュース、ハードID(機種名、使用OS)などの
各種情報)を付属情報として、これを適宜の主要情報に
おいて分散記録するようにしてもよいことはいうまでも
ない。この場合には、図3から図6までの各処理におけ
る電子署名をこれらの各種電子情報に置き換えて処理す
ればよい。このようにして処理された電子情報(すなわ
ち付属情報)は、図7のように画面上に表示されるよう
になる。なお、このとき、付属情報を一連の纏まったフ
ァイル情報として検出してもよいし、自動演奏中にMI
DIデータから検出される電子情報の流れとして認識
し、それをリアルタイムに画面表示したりしてもよい。
この場合、付属情報が画像情報の場合には、MIDIデ
ータによってリアルタイムに画像が描画されるようにな
り、テキスト情報の場合には、ニュース配信などのよう
なリアルタイムな情報表示を行うことが可能となる。ま
た、付属情報を分散記録するための技術がシンプルであ
るため、オンデマンドなどで適宜の電子情報(すなわち
付属情報)を所要の主要情報内に埋め込むことができる
ので、TV放送などのようなリアルタイムな描画が可能
となる。また、インターネットや電子メールなどのID
やパスワードの配信にも利用することができる。
【0037】上述の実施の形態では、各種電子情報(す
なわち付属情報)をMIDIデータのベロシティ部分
(すなわち主要情報)に分散記録する場合について説明
したが、この場合だと、MIDIデータ(すなわち主要
情報)自身が書き換えられてデータ値すなわちベロシテ
ィの値が全体的にシフトされたような場合、その付属情
報自体が消えてしまい再現することができなくなるとい
うおそれがある。そこで、MIDIデータ(すなわち主
要情報)自体が書き換えられたりしても、付属情報を抽
出することのできる実施の形態について、図8及び図9
に基づき、以下、説明する。この実施の形態では、MI
DIデータ(すなわち主要情報)における各データ単位
間の差分値をパラメータとして、付属情報を埋め込むた
めの演算アルゴリズムを実行することを特徴としてい
る。このように各データ単位間の差分値をパラメータと
することにより、各データ単位の値がシフト変更された
場合でも、その差分値には変化が生じないことになるの
で、埋め込まれた付属情報を適確に再生することができ
る。図8は、この実施の形態に係る差分アルゴリズムを
用いた情報記憶処理(付属情報付与処理)の一例を示す
フローチャートである。図9は、この差分アルゴリズム
を用いた情報記憶処理に従うデータ変換形態の具体例
と、変換されたデータから付属情報を再生する処理(検
出処理)に従うデータ再生形態の具体例を示す図、であ
る。付属情報を再生する処理(検出処理)のフローチャ
ート例については図示を省略するが、基本的には、上記
各実施例と同様に、記憶処理(付与処理)時の演算アル
ゴリズムに準じた所定の再生演算を行なうことによっ
て、付属情報の各ビットの抽出と再生を行なうことがで
きる。
【0038】図8において、ステップ81では、付属情
報(この例では電子署名情報)を埋め込むべき主要情報
(この例ではMIDIデータ)のキーオンイベントデー
タ列SMF1を得る。これは、付属情報を埋め込む対象
となる主要情報の種類を、前述実施例と同様にベロシテ
ィバイト部分としたためである。すなわち、前述と同様
に、MIDIデータ列(Standard MIDI
File:SMF)の中からキーオンイベントデータや
プログラムチェンジデータやコントロールチェンジデー
タなどの各種のMIDIデータを順次取り出し、取り出
されたMIDIデータがキーオンイベントデータKON
であるかどうかを判定し、キーオンイベントデータから
なるMIDIデータ列SMF1を得る。すなわち、MI
DIデータ列は、基本的には、キーオンステータスバイ
ト、キーコードバイト、ベロシティバイトからなるキー
オンイベントデータや、これ以外のプログラムチェンジ
イベントデータやコントロールチェンジイベントデータ
などから構成されているが、この中から、キーオンイベ
ントデータのMIDIデータ列SMF1を取り出すので
ある。このキーオンイベントデータのMIDIデータ列
SMF1はデュレーションタイムDと3バイトのキーオ
ンイベントデータとの組合せで構成される。このキーオ
ンイベントデータ列SMF1の具体例は図9(A)のよ
うである。
【0039】次に、ステップ82では、このキーオンイ
ベントデータ列SMF1内に分散して書き込まれるべき
付属情報(この例では電子署名すなわち前述の著作権表
示データ)に関するデータ列を得る。次に、ステップ8
3では、上記付属情報データ列(電子署名として付与す
る情報)から、ASCIIのデータ列の1バイト分をバ
イトレジスタBRに格納する。例えば、『Y』=『59
H』をバイトレジスタBRに格納すると、それは図9
(E)に示すように『01011001B』=『89
D』のようなビット列になる。また、レジスタjにバイ
トレジスタBRのビット長を示すデータ(例えば『8
D』)をストアする。ステップ84では、レジスタjの
値から1減少した値をレジスタkにストアする。ステッ
プ85では、相前後するキーオンイベントデータ同士の
キーコードバイトのキーコード同士の差分値を求め、そ
れをキー差分値レジスタdkeyに格納するとともにベ
ロシティバイトのベロシティ同士の差分値を求め、それ
をベロシティ差分値レジスタdvelに格納する。ここ
では、後ろのキーオンイベントデータの値から前のキー
オンイベントデータの値を減算して求めている。すなわ
ち、nはイベントの順序を示す順序数であり、イベント
順序nのベロシティデータVELnを、その次のイベン
ト順序n+1のベロシティデータVELn+1から引き算し、
その結果の差分値をベロシティ差分値レジスタdvel
に格納する。また、イベント順序nのキーコードデータ
NOTEnを、その次のイベント順序n+1のキーコードデ
ータNOTEn+1から引き算し、その結果の差分値をキ
ー差分値レジスタdkeyに格納する。これによって図
9(B)のような差分値データ対(dkey,dve
l)が作成される。
【0040】ステップ86では、この差分値データ対
(dkey,dvel)に所定の関数f(dkey,d
vel)の処理を施して、その最下位ビットLSBの値
と、レジスタBR内のk番目のビットの値とを比較す
る。例えば、この関数f(dkey,dvel)は、キ
ー差分値dkeyとベロシティ差分値dvelとの合計
(dkey+dvel)を求めることからなっている。
図9(C)は、各差分値データ対(dkey,dve
l)毎のキー差分値dkeyとベロシティ差分値dve
lとの合計値(dkey+dvel)を例示するもので
ある。図9(D)は、各合計値(dkey+dvel)
の最下位ビットLSBの値を示す。なお、バイトレジス
タBRの格納値の順位kは、最上位ビットをk=7と
し、最下位ビットをk=0とする。図9(E)に示され
たバイトレジスタBRの格納値『01011001B』
の例では、最初はk=7によって最も左側(最上位)の
ビットの「0」が、合計値(dkey+dvel)(図
9(C)では『24D』)のLSB(図9(D)では
「0」)と比較される。
【0041】ステップ86がNOであれば、ステップ8
7の処理の後にステップ88に行くが、ステップ86が
YESであれば、ステップ87を飛び越してステップ8
8に行く。ステップ87では、イベント順序n+1のベロ
シティデータVELn+1の値に所定の奇数m(例えばm
=1)を加算し、該イベント順序n+1のベロシティデー
タVELn+1の値を変更する。すなわち、ステップ86
での比較結果が不一致であればステップ87でベロシテ
ィデータVELn+1の変更(mの加算)を行なうが、ス
テップ86での比較結果が一致であればベロシティデー
タVELn+1は変更しない。このようにして、キーオン
イベントデータ列SMF1におけるベロシティデータV
ELの変更又は不変更が上記所定のアルゴリズムに従っ
て制御され、図9(F)に例示するような、変更制御さ
れたキーオンイベントデータ列SMF2が得られる。な
お、奇数mを加算することは、最下位ビットLSBの値
を反転することを意味する。すなわち、不一致のときに
最下位ビットLSBの値を反転することにより、一致す
る状態に変更されることになる。こうして、変更制御さ
れたキーオンイベントデータ列SMF2における差分値
データ対毎の合計値(dkey+dvel)の各最下位
ビットLSBは、付属情報の各ビットの値に一致してい
るものとなる。ステップ88ではレジスタkの値を1減
少する。ステップ89ではイベント順序nを1増加して
更新する。次に、ステップ90では、更新されたイベン
ト順序nに基づき、用意されたキーオンイベントデータ
列SMF1の処理が終了したかを判定する。NOであれ
ば、ステップ91に行き、k<0であるかを調べる。N
Oであれば、ステップ85に戻り、更新されたnとkに
関して、上述のステップ85〜90の処理を繰り返す。
【0042】上述のステップ85〜90の処理の繰り返
しによって、バイトレジスタBR内の1バイト分の付属
情報(例えば図9(E)の『01011001B』)の
埋込処理が、次のようにして行われる。まず、図9
(A)のデータ列SMF1の場合、各差分値データ対
(dkey,dvel)毎の合計値(dkey+dve
l)のデータ列としては、図9(C)に示すようなデー
タ列『24,22,21,28,9,41,22,−1
5』が順次得られる。ここで、イベント順序の若い差分
値データ対(dkey,dvel)の合計値(dkey
+dvel)の最下位ビットLSB(図9(D))とバ
イトレジスタBRの左側から順番にビット同士が比較さ
れ、等しい(YES)場合にはキーオンイベントデータ
のベロシティ値を変更せずに、次の右側のビット同士の
比較に移る。等しくない(NO)場合にはそのビットに
関係する2つのキーオンイベントデータの中の後ろ側の
キーオンイベントデータのベロシティに奇数m(例えば
m=1)を加算して該ベロシティ値を変更し、次の右側
のビット同士を比較に移る。こうして、nとkを更新し
て順次比較されることになり、結局、図9のデータ例の
場合には、2番目の差分値データ対の合計値の最下位ビ
ットLSBとバイトレジスタBRの左から2番目のビッ
ト同士が等しくないので、それに関係するMIDIデー
タ列SMF1中の3番目のキーオンイベントデータのベ
ロシティ『45』に『1』を加算して、『46』に変更
する。ここで、3番目のキーオンイベントデータのベロ
シティの値が『46』に変更されると、それによって3
番目の差分値データ(dkey,dvel)は(14,
6)となり、その合計値(dkey+dvel)は『2
0』となる。その結果、3番目の差分値データ対の合計
値の最下位ビットLSBは『0』に変更される。次はこ
の変更された3番目の最下位ビットLSBと3番目のバ
イトレジスタBRのビット同士が比較される。この結
果、両者は等しいと判断されるので、4番目のビット同
士の比較処理に移る。このようにして、順番に比較処理
とベロシティへの『1』の加算処理を行うと、5番目と
6番目のベロシティにも『1』が加算されることにな
る。以上の処理の結果、MIDIデータ列SMF1の3
番目のベロシティ『45』、5番目のベロシティ『6
7』及び6番目のベロシティ『73』にそれぞれ『1』
が加算されて、MIDIデータ列SMF1がMIDIデ
ータ列SMF2(図9(F))のように変更される。
【0043】ステップ92では、未処理の付属情報が有
るか否かを調べ、有れば、ステップ83に戻り、次の付
属情報の1バイトをレジスタBRにセットする。そし
て、前述と同様のステップ83〜91の処理を繰り返
す。主要情報内に埋め込むべきすべての付属情報につい
て、上述の埋め込み処理を終了すると、ステップ92は
NOとなり、図8の処理を終了する。なお、主要情報内
に埋め込むべきすべての付属情報について上述の埋め込
み処理を終了する前に、ステップ90がYESとなった
場合は、未処理の付属情報を処理するために適切な処理
ステップ(図示せず)を付加してもよい。例えば、無発
音の擬似的なキーオンイベントデータ群を設定し、そこ
に未処理の付属情報を埋め込み処理するようにしてよ
い。
【0044】以上のようにして付属情報を付加する処理
(埋め込み処理)の施されたMIDIデータ列SMF2
は、適宜の記憶装置又はバッファ回路に記憶される。こ
のように付属情報を付加済(埋め込み済)のMIDIデ
ータ列SMF2から付属情報の各ビットを抽出し再生す
るには、記憶装置又はバッファ回路からMIDIデータ
列SMF2を読み出して、上述のアルゴリズムに準じた
所定の再生演算を行なえばよい。そのための再生処理手
順は、例えば図10のような手順で行なうことができ
る。すなわち、まず、記憶装置又はバッファ回路からM
IDIデータ列SMF2を読み出して、電子署名(すな
わち付属情報)を検出すべきデータ列SMF2を得る
(ステップ93)。次に、読み出したMIDIデータ列
SMF2から、イベント順序レジスタnの値によって指
示されるイベント順に、差分値データ対(dkey,d
vel)を求め(ステップ94)、その差分値データ対
毎に所定の関数f(dkey,dvel)の演算処理つ
まり合計処理(dkey+dvel)を施し(ステップ
95)、その各合計値の最下位ビットLSBを抽出し
て、所定の再生バッファメモリに順次ストアする(ステ
ップ96)。次に、レジスタnの値を1増加し、ステッ
プ98のNOを経由してステップ94に戻り、ステップ
94,95,96の処理を繰り返す。付属情報のすべて
を検出し終えると、ステップ98がYESとなり、処理
を終了する。前述の通り、変更制御されたキーオンイベ
ントデータ列SMF2における差分値データ対毎の合計
値(dkey+dvel)の各最下位ビットLSBは、
付属情報の各ビットの値に一致しているものとなってい
るので、抽出した各合計値の最下位ビットLSBのデー
タ値を、イベント順に再生バッファメモリに順次ストア
することにより、再生バッファメモリにおいて付属情報
を配列させて再生することができる。
【0045】以上の処理によって、例えば、図9(F)
のMIDIデータ列SMF2に基づいて、図9(G)の
ような差分値データ対(dkey,dvel)のデータ
列が求められ、その差分値データ対毎に所定の関数f
(dkey,dvel)の処理つまり合計処理(dke
y+dvel)を施して図9(H)のような合計値デー
タ列を求める。このようにして求められた各合計値の最
下位ビットLSBが埋め込まれていた電子署名(つまり
付属情報)であり、図9(E)と同じものが抽出・再生
されることが理解できる。なお、上記例では、キーコー
ドの差分値とベロシティの差分値を夫々求め、両者の合
計値のLSBと付属情報との比較結果に応じてのベロシ
ティの変更演算を行なっているが、これに限らず、ベロ
シティの差分値のみを求め、この差分値のLSBと付属
情報との比較結果に応じてのベロシティの変更演算を行
なうようにしてもよい。以上のように、この実施例によ
れば、ベロシティデータの差分値をパラメータとして該
ベロシティデータに対する付属情報の埋め込み演算を行
なうようにしたので、ベロシティデータ全体をシフトす
るようなデータ改変がなされたような場合において、差
分値情報が維持されることにより、埋め込んだ付属情報
の改変を防止することができる。なお、この実施の形態
では、図9(D)の関数処理データの最下位ビットLS
Bと図9(E)のバイトレジスタBRの内容とを比較す
る場合に、左側から順番にビット同士を比較し、等しい
(YES)場合には次の右側のビット同士を比較し、等
しくない(NO)場合にはそのビットに関係する2つの
キーオンイベントデータの中の後ろ側のキーオンイベン
トデータのベロシティに奇数m(例えばm=1)を加算
して、次の右側のビット同士を比較するという一連の処
理で行っている。ここで、加算する奇数mの値は、
『1』に限らず、『3』や『5』などであってもよい。
また、奇数mを加算することに限らず、減算するように
してもよい。また、加算又は減算する奇数mの値を定数
とせずに、適宜、変化させてもよい。また、比較の順序
は、右側のビットから順番に比較するようにしてもよ
い。要するに、上記実施例に限定されるものではなく、
結果として、上記と同等の処理を行なうことができるよ
うに、種々のソフト的な処理をMIDIデータ列SMF
1に施すようにすればよい。
【0046】なお、図5の電子署名付与処理2では、チ
ャンネル毎に関数処理の内容を変更することによって、
それぞれの情報を一度に変更するようなエディット処
理、例えばチャンネル情報の入れ替えやキーコードのシ
フトなどといったものが行われた場合でも、エディット
によって変更されるデータに関係しない関数を利用する
チャネルから電子署名データを復元するようにしてい
る。図8〜図10の実施の形態のように、キーコードと
ベロシティの差分値を求めるようなものでも、同様に、
各チャンネル毎に重複して付属情報の埋め込み処理を施
すようにすることができる。例えば、図8では、キーオ
ンイベントデータのMIDIデータ列SMF1に対して
順番に差分値を求め、それに対して付加情報を順番に付
加する場合について説明したが、差分値の大きさに基づ
いて所定数の領域(例えば、3つの領域)に分類し、分
類されたもの同士で図8と同じような処理を施すように
してもよい。すなわち、キーオンイベントデータのMI
DIデータ列が『D,9n,3c,40,D,9n,3
c,7f,D,9n,3c,10,D,9n,3c,7
f,D,9n,3c,7f,D,9n,3c,20,
D,9n,3c,50,D,9n,3c,7f・・・
・』のようなものであったとする。この場合、ベロシテ
ィの差分値はdvelは、『3f,−6f,6f,0,
−5f,30,2f・・・』のようになる。ここで、差
分値の大きさが0〜2fの場合を第1領域、30〜5f
の場合を第2領域、60〜7fの場合を第3領域とす
る。従って、第4番目と第7番目の差分値が第1領域と
なり、第1番目と第6番目の差分値が第2領域となり、
第3番目が第3領域となる。マイナスの差分値は無視す
る。このようにして分類された第1〜第3の各領域につ
いて前述と同様の付属情報の付与処理を施すことによっ
て、各領域に埋め込んだ付属情報がすべて改変される確
率は2分の1の3乗、すなわち12.5パーセントとな
る。このことは、1つでも最下位ビットが残る確率が8
7.5パーセントであることを意味する。このようにす
ると、データ全体が係数aで乗算された場合でも、埋め
込んだ付属情報が改変される確率は非常に小さくなり、
付属情報の内容を保持することが可能となり、付属情報
の改変に対応することが可能となる。
【0047】上記のすべての実施例に関連して、本発明
は、主要情報内に付属情報を組み込んで記憶するための
方法又は装置として構成することができ、さらには、そ
の方法を実施するためのプログラムを記録した記録媒体
として構成することができ、さらには、その方法に従っ
て記録されたデータ構造を持つデータを記憶した記録媒
体として構成することができる。更に、上記のすべての
実施例に関連して、本発明は、付属情報を組み込んで記
憶してなる主要情報から、該付属情報を抽出し再生する
ための方法又は装置として構成することができ、さらに
は、その方法を実施するためのプログラムを記録した記
録媒体として構成することができる。勿論、上記のすべ
ての実施例において、図2で電子楽器1として示された
装置は、汎用のパーソナルコンピュータによって置き換
えることができることは、前述の通りである。また、電
子楽器や楽音の合成/制御処理の分野に限らず、どのよ
うな電子情報を取り扱う分野ででも本発明を適用するこ
とができる。また、上記各実施例において、付属情報の
すべてを主要情報内に組み込む(埋め込む)ことなく、
付属情報の一部を主要情報内に組み込む(埋め込む)よ
うにしてもよいのは勿論である。その場合、主要情報内
に組み込まなかった残りの付属情報は、従来同様にヘッ
ダ部等の適当な領域に記憶しておいてもよい。上記のす
べての実施例に関連して、付属情報(第2の情報)を組
み込んだ状態からなる主要情報(第1の情報)を通信ネ
ットワークを介して伝送するようにしてもよい。その場
合、受信側では、通信ネットワークを介して伝送された
データを受信し、受信したデータにおける主要情報(第
1の情報)のデータのうちの特定のデータ単位から、複
数の小サイズのデータ片を再現し、再現された各データ
片により付属情報(第2の情報)を再生するようにすれ
ばよい。
【0048】
【発明の効果】この発明によれば、音楽データ、映像デ
ータ又は波形データなどの主要情報の中に適宜の付属情
報を組み込んで記憶することができるので、付属情報の
不正な削除や改変を防ぐことができる、という優れた効
果を奏する。また、付属情報を組み込んだ主要情報の一
部が削除されたり変更された場合でも、付属情報を再現
することができる、という優れた効果を奏する。
【図面の簡単な説明】
【図1】 この発明に係る電子情報の記憶(付与)処理
及び再生(検出)処理におけるデータ変換形態の具体例
を示すデータ図。
【図2】 この発明に係る電子情報処理システムとして
動作する電子楽器のハードウェア全体構成例を示すブロ
ック図。
【図3】 図2のハードウェアを用いて実行される電子
署名付与処理(記憶処理)の一実施例を示すフローチャ
ート図。
【図4】 図3に従って記憶された情報から電子署名
(付属情報)を再生するための電子署名検出処理(再生
処理)の一実施例を示すフローチャート図。
【図5】 図2のハードウェアを用いて実行される電子
署名付与処理(記憶処理)の別の実施例を示すフローチ
ャート図。
【図6】 図5に従って記憶された情報から電子署名
(付属情報)を再生するための電子署名検出処理(再生
処理)の一実施例を示すフローチャート図。
【図7】 図2における表示回路において表示される表
示画面の一例を示す図。
【図8】 図2のハードウェアを用いて実行される電子
署名付与処理(記憶処理)の更に別の実施例を示すフロ
ーチャート図。
【図9】 図8に従う記憶処理及び図10に従う再生処
理におけるデータ変換形態の具体例を示すデータ図。
【図10】 図8に従って記憶された情報から電子署名
(付属情報)を再生するための電子署名検出処理(再生
処理)の一実施例を示すフローチャート図。
【符号の説明】
1 電子楽器 21 CPU 22 ROM 23 RAM 24 音源 25 フロッピーディスクドライブ 26 鍵盤 27 パネルスイッチ 28 表示回路 29 データ及びアドレスバス
フロントページの続き (56)参考文献 特開 平9−186603(JP,A) 特開 平8−199219(JP,A) Proceedings of 1994 IEEE Internationa l Conference on Im age Processing,Vo l.2,R.G.van Schynd el et al,”A Digita l Watermark”,p.86− 90,November 13−16,1994, Austin,Texas,U.S.A Proceedings of th e 1996 International Conference on Mul timedia Computing and Systems,Lauren ce Boney et al,”Di gital Watermarks f or Audio Signals”, p.473−480,June 17−23, 1996,Hiroshima,Japan Proceedings of Fi fth International Conference on Imag e Processing and I ts Applications,F. M.Boland et al,”Wa termarking Digital Images for Copyri ght Protection”,p. 326−330,4−6 July 1995,I EE Confenrence Pub lication No.410 (58)調査した分野(Int.Cl.7,DB名) G10H 1/00 - 7/12 G10K 15/02 G10L 19/00 H04L 9/00 - 9/38 G09C 1/00 - 5/00 IEEE/IEE Electroni c Library Online INSPEC(DIALOG) JICSTファイル(JOIS) WPI(DIALOG)

Claims (19)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のイベントデータで構成される第1
    の情報を入力するステップと、 第2の情報を入力するステップと、 前記イベントデータのうち少なくとも一部のイベントデ
    ータの内容を前記第2の情報に基づいて変更することに
    より前記第1の情報に前記第2の情報を分散して配置す
    るステップと、 前記第2の情報が分散して配置された第1の情報を出力
    するステップとからなる電子情報処理方法。
  2. 【請求項2】 それぞれ所定のパラメータを含む複数の
    イベントデータで構成される第1の情報を入力するステ
    ップと、 第2の情報を入力するステップと、 前記イベントデータのうち少なくとも一部のイベントデ
    ータに含まれるパラメータを前記第2の情報に基づいて
    変更することにより前記第1の情報に前記第2の情報を
    分散して配置するステップと、 前記第2の情報が分散して配置された第1の情報を出力
    するステップとからなる電子情報処理方法。
  3. 【請求項3】 それぞれ2以上のパラメータを含む複数
    のイベントデータで構成される第1の情報を入力するス
    テップと、 第2の情報を入力するステップと、 前記イベントデータのうち少なくとも一部のイベントデ
    ータに含まれる2以上のパラメータの内容と前記第2の
    情報に基づいて前記2以上のパラメータのうち少なくと
    も一部を変更することにより前記第1の情報に前記第2
    の情報を分散して配置するステップと、 前記第2の情報が分散して配置された第1の情報を出力
    するステップとからなる電子情報処理方法。
  4. 【請求項4】 それぞれ順序関係を有する複数のイベン
    トデータで構成される第1の情報を入力するステップ
    と、 第2の情報を入力するステップと、 前記イベントデータのうちの所定の順序関係にある複数
    のイベントデータの関係と前記第2の情報に基づいて前
    記所定の順序関係にある複数のイベントデータのうちい
    ずれかの内容を変更することにより前記第1の情報に前
    記第2の情報を分散して配置するステップと、 前記第2の情報が分散して配置された第1の情報を出力
    するステップとからなる電子情報処理方法。
  5. 【請求項5】 複数のイベントデータで構成される第1
    の情報を入力するステップと、 前記イベントデータのうち少なくとも一部のイベントデ
    ータに分散して配置された第2の情報を検出するととも
    に当該分散して配置された第2の情報を抽出するステッ
    プと、 前記抽出した第2の情報を出力するステップとからなる
    電子情報処理方法。
  6. 【請求項6】 それぞれ所定のパラメータを含む複数の
    イベントデータで構成される第1の情報を入力するステ
    ップと、 前記イベントデータのうち少なくとも一部のイベントデ
    ータに含まれるパラメータに分散して配置された第2の
    情報を検出するとともに当該分散して配置された第2の
    情報を抽出するステップと、 前記抽出した第2の情報を出力するステップとからなる
    電子情報処理方法。
  7. 【請求項7】 それぞれ2以上のパラメータを含む複数
    のイベントデータで構成される第1の情報を入力するス
    テップと、 前記イベントデータのうち少なくとも一部のイベントデ
    ータに含まれる2以上のパラメータの内容に基づいて、
    前記イベントデータに分散して配置された第2の情報を
    検出するとともに当該分散して配置された第2の情報を
    抽出するステップと、 前記抽出した第2の情報を出力するステップとからなる
    電子情報処理方法。
  8. 【請求項8】 それぞれ順序関係を有する複数のイベン
    トデータで構成される第1の情報を入力するステップ
    と、 前記イベントデータのうち所定の順序関係にある複数の
    イベントデータの内容に基づいて、前記所定の順序関係
    にあるイベントデータのうちいずれか一方に分散して配
    置された第2の情報を検出するとともに当該分散して配
    置された第2の情報を抽出するステップと、 前記抽出した第2の情報を出力するステップとからなる
    電子情報処理方法。
  9. 【請求項9】 複数のイベントデータで構成される第1
    の情報を入力するステップと、 前記イベントデータのうち少なくとも一部のイベントデ
    ータに分散して配置された第2の情報を検出するととも
    に当該分散して配置された第2の情報を抽出するステッ
    プと、 前記抽出した第2の情報の有意性を判断するステップ
    と、 前記有意性の判断結果に応じて第1の情報の利用を許可
    するか否かを制御するステップとからなる電子情報処理
    方法。
  10. 【請求項10】 請求項1乃至9のいずれかに記載の方
    法をコンピュータに実行させるためのプログラムを記憶
    した機械読み取り可能な記憶媒体。
  11. 【請求項11】 複数のイベントデータで構成される第
    1の情報を入力する手段と、 第2の情報を入力する手段と、 前記イベントデータのうち少なくとも一部のイベントデ
    ータの内容を前記第2の情報に基づいて変更することに
    より前記第1の情報に前記第2の情報を分散して配置す
    る手段と、 前記第2の情報が分散して配置された第1の情報を出力
    する手段とを具えた電子情報処理装置。
  12. 【請求項12】 それぞれ所定のパラメータを含む複数
    のイベントデータで構成される第1の情報を入力する手
    段と、 第2の情報を入力する手段と、 前記イベントデータのうち少なくとも一部のイベントデ
    ータに含まれるパラメータを前記第2の情報に基づいて
    変更することにより前記第1の情報に前記第2の情報を
    分散して配置する手段と、 前記第2の情報が分散して配置された第1の情報を出力
    する手段とを具えた電子情報処理装置。
  13. 【請求項13】 それぞれ2以上のパラメータを含む複
    数のイベントデータで構成される第1の情報を入力する
    手段と、 第2の情報を入力する手段と、 前記イベントデータのうち少なくとも一部のイベントデ
    ータに含まれる2以上のパラメータの内容と前記第2の
    情報に基づいて前記2以上のパラメータのうち少なくと
    も一部を変更することにより前記第1の情報に前記第2
    の情報を分散して配置する手段と、 前記第2の情報が分散して配置された第1の情報を出力
    する手段とを具えた電子情報処理装置。
  14. 【請求項14】 それぞれ順序関係を有する複数のイベ
    ントデータで構成される第1の情報を入力する手段と、 第2の情報を入力する手段と、 前記イベントデータのうちの所定の順序関係にある複数
    のイベントデータの関係と前記第2の情報に基づいて前
    記所定の順序関係にある複数のイベントデータのうちい
    ずれかの内容を変更することにより前記第1の情報に前
    記第2の情報を分散して配置する手段と、 前記第2の情報が分散して配置された第1の情報を出力
    する手段とを具えた電子情報処理装置。
  15. 【請求項15】 複数のイベントデータで構成される第
    1の情報を入力する手段と、 前記イベントデータのうち少なくとも一部のイベントデ
    ータに分散して配置された第2の情報を検出するととも
    に当該分散して配置された第2の情報を抽出する手段
    と、 前記抽出した第2の情報を出力する手段とを具えた電子
    情報処理装置。
  16. 【請求項16】 それぞれ所定のパラメータを含む複数
    のイベントデータで構成される第1の情報を入力する手
    段と、 前記イベントデータのうち少なくとも一部のイベントデ
    ータに含まれるパラメータに分散して配置された第2の
    情報を検出するとともに当該分散して配置された第2の
    情報を抽出する手段と、 前記抽出した第2の情報を出力する手段とを具えた電子
    情報処理装置。
  17. 【請求項17】 それぞれ2以上のパラメータを含む複
    数のイベントデータで構成される第1の情報を入力する
    手段と、 前記イベントデータのうち少なくとも一部のイベントデ
    ータに含まれる2以上のパラメータの内容に基づいて、
    前記イベントデータに分散して配置された第2の情報を
    検出するとともに当該分散して配置された第2の情報を
    抽出する手段と、 前記抽出した第2の情報を出力する手段とを具えた電子
    情報処理装置。
  18. 【請求項18】 それぞれ順序関係を有する複数のイベ
    ントデータで構成される第1の情報を入力する手段と、 前記イベントデータのうち所定の順序関係にある複数の
    イベントデータの内容に基づいて、前記所定の順序関係
    にあるイベントデータのうちいずれか一方に分散して配
    置された第2の情報を検出するとともに当該分散して配
    置された第2の情報を抽出する手段と、 前記抽出した第2の情報を出力する手段とを具えた電子
    情報処理装置。
  19. 【請求項19】 複数のイベントデータで構成される第
    1の情報を入力する手段と、 前記イベントデータのうち少なくとも一部のイベントデ
    ータに分散して配置された第2の情報を検出するととも
    に当該分散して配置された第2の情報を抽出する手段
    と、 前記抽出した第2の情報の有意性を判断する手段と、 前記有意性の判断結果に応じて第1の情報の利用を許可
    するか否かを制御する手段とを具えた電子情報処理装
    置。
JP19312897A 1996-07-02 1997-07-02 電子情報処理システム及び方法並びに記録媒体 Expired - Fee Related JP3178378B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19312897A JP3178378B2 (ja) 1996-07-02 1997-07-02 電子情報処理システム及び方法並びに記録媒体

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP19152896 1996-07-02
JP8-191528 1997-05-22
JP14861297 1997-05-22
JP9-148612 1997-05-22
JP19312897A JP3178378B2 (ja) 1996-07-02 1997-07-02 電子情報処理システム及び方法並びに記録媒体

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2001036206A Division JP4304870B2 (ja) 1996-07-02 2001-02-13 電子情報処理方法及び装置並びに記録媒体

Publications (2)

Publication Number Publication Date
JPH1139796A JPH1139796A (ja) 1999-02-12
JP3178378B2 true JP3178378B2 (ja) 2001-06-18

Family

ID=27319586

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19312897A Expired - Fee Related JP3178378B2 (ja) 1996-07-02 1997-07-02 電子情報処理システム及び方法並びに記録媒体

Country Status (1)

Country Link
JP (1) JP3178378B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3178463B2 (ja) 1999-08-31 2001-06-18 ヤマハ株式会社 電子情報処理方法及びシステム並びに記録媒体
JP2001344894A (ja) * 2000-05-31 2001-12-14 Sony Corp データ記録媒体、データ記録方法及び装置、データ再生方法及び装置
JP2002202787A (ja) * 2000-12-28 2002-07-19 Sony Corp コンテンツデータ、記録媒体、データ記録方法および装置、データ送信方法および装置、データ出力方法および装置、データ再生方法および装置、データ受信方法および装置
JP4635367B2 (ja) * 2001-04-16 2011-02-23 ソニー株式会社 記録方法、記録装置、再生方法及び再生装置
JP4689873B2 (ja) * 2001-05-23 2011-05-25 Necエンジニアリング株式会社 信号埋め込み方法および装置
EP1364369B1 (en) 2001-12-21 2014-02-12 Sony DADC Austria AG Record medium with different latencies
JP4973417B2 (ja) * 2007-09-26 2012-07-11 大日本印刷株式会社 音響信号に対する情報の埋め込み装置および音響信号からの情報の抽出装置
JP5737099B2 (ja) * 2011-09-14 2015-06-17 ヤマハ株式会社 電子楽器システム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Proceedings of 1994 IEEE International Conference on Image Processing,Vol.2,R.G.van Schyndel et al,"A Digital Watermark",p.86−90,November 13−16,1994,Austin,Texas,U.S.A
Proceedings of Fifth International Conference on Image Processing and Its Applications,F.M.Boland et al,"Watermarking Digital Images for Copyright Protection",p.326−330,4−6 July 1995,IEE Confenrence Publication No.410
Proceedings of the 1996 International Conference on Multimedia Computing and Systems,Laurence Boney et al,"Digital Watermarks for Audio Signals",p.473−480,June 17−23,1996,Hiroshima,Japan

Also Published As

Publication number Publication date
JPH1139796A (ja) 1999-02-12

Similar Documents

Publication Publication Date Title
US7485795B2 (en) Method and device for storing main information with associated additional information incorporated therein
US7849319B2 (en) Method and device for incorporating additional information into main information through electronic watermarking technique
JP4794047B2 (ja) 保護されたデジタルファイル配信方法
US7612276B2 (en) Method and system for synthesizing electronic transparent audio
US7078607B2 (en) Dynamically changing music
JP3178378B2 (ja) 電子情報処理システム及び方法並びに記録媒体
JP4304870B2 (ja) 電子情報処理方法及び装置並びに記録媒体
US20060027078A1 (en) Scrambling method of music sequence data for incompatible sound generator
JP3180788B2 (ja) 電子情報付与及び検出のための装置及び方法
JP3180789B2 (ja) 電子情報処理方法及び装置
US7102071B2 (en) Apparatus and method for processing tone reproducing digital data against unauthorized use
Lee Issues surrounding the preservation of digital music documents
JP4370725B2 (ja) 電子情報処理方法及び装置
JP3870700B2 (ja) 電子情報処理方法及び装置
GB2354860A (en) Storing music information with associated additional information incorporated therein
US7795526B2 (en) Apparatus and method for reproducing MIDI file
JP2001343974A (ja) 電子透かし作成方法及び記録媒体
JP2005338126A (ja) 演奏データ編集装置、演奏データ編集方法および演奏データ編集プログラム
JP2000092042A (ja) 楽曲データ提供システム及び楽曲データ復号装置
JPH0773320A (ja) イメージ音楽生成装置
JP2003140650A (ja) 電子透かし埋め込み方法
JPH08292770A (ja) 電子楽器

Legal Events

Date Code Title Description
S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090413

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090413

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100413

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110413

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120413

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130413

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140413

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees