JP3178378B2 - Electronic information processing system and method, and recording medium - Google Patents

Electronic information processing system and method, and recording medium

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
Japanese (ja)
Other versions
JPH1139796A (en
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/en
Publication of JPH1139796A publication Critical patent/JPH1139796A/en
Application granted granted Critical
Publication of JP3178378B2 publication Critical patent/JP3178378B2/en
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)

Abstract

PROBLEM TO BE SOLVED: To prevent attached information from being deleted and changed and also to secure reproducibility by dividing attached information data into plural small-sized data pieces and dispersingly incorporating them in main information. SOLUTION: When electronic signature data expressing a copyright are to be dispersingly record in the musical control information MIDI data read out from the floppy disk drive 25 of an electronic equipment 1, the character string of a decided electronic signature is inputted by a panel switch 27. The character string is converted into the character code data string of an ASCII with a prescribed algorithm and bits equivalent to one byte are produced in the bit string of an 8-bit constitution. Next, key-on event data being in the MIDI data are successively taken out and respective bits are embedded in parts of velocity byte parts. When one round processing of the number of the byte constituting the electronic signature data is performed, this electronic equipment returns to the step of a prescribed processing by setting the pointer of the byte of the electronic signature at the leading of the byte in order to perform the write processings of the electronic signature data again.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、楽音制御情報
(MIDIデータ)などの主要情報の中にそれに関連し
た付属情報を組み込んで記憶する電子情報処理システム
及び方法に関し、また、そのように付属情報を組み込ん
で記憶した主要情報から付属情報を検出(再生)する電
子情報処理システム及び方法に関し、更に、この電子情
報処理システム及び方法を実現するためのソフトウェア
プログラムを記憶した記憶媒体に関し、更に、これらの
システム及び方法に従って主要情報内に付属情報を組み
込んだ状態のデータ構成からなるデータを記憶してなる
記憶媒体に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an electronic information processing system and method for embedding and storing auxiliary information related to main information such as musical sound control information (MIDI data). The present invention relates to an electronic information processing system and method for detecting (reproducing) ancillary information from main information stored by incorporating therein, and further relates to a storage medium storing a software program for realizing the electronic information processing system and method. The present invention relates to a storage medium for storing data having a data structure in which auxiliary information is incorporated in main information according to the system and method of the present invention.

【0002】[0002]

【従来の技術】最近では、パーソナルコンピュータを使
用して、ユーザ自身が音楽データ、映像データ及び波形
データなどを作成したり、それらに種々の変更を加えた
りすることが容易にできるようになった。従って、パー
ソナルコンピュータを使用することによって、市販のF
D、CD−ROM、LDなどの記憶媒体に記録された音
楽データ、映像データ及び波形データなども自由に読み
出して、それらに種々の変更処理を加えたりすることが
できる。市販のCD−ROMやLDなどに記録されてい
るデータは、その販売者や製作者などに著作権があるた
め、本来それらを自由に改変することは、著作権侵害の
観点から許されるものではない。従って、現在では、C
D−ROMやLDなどの主データ記憶部に記録されてい
る音楽データ、映像データ又は波形データなど、主デー
タの著作権がだれに属するものなのかを示すための著作
権表示データを、主データ記憶部とは別のヘッダ部に付
属情報として付加的に記録することによって、著作権者
を明示し、著作権侵害の未然防止を図っているのが現状
である。また、付属情報には、このような著作権表示デ
ータの他にも、その音楽データ、映像データ及び波形デ
ータの題名などを示す情報、又はその映像データや波形
データなどがどのようなデータ圧縮技術で圧縮されてい
るのかなどのデータ記録形式を示す情報などがある。
2. Description of the Related Art Recently, it has become easy for a user to create music data, video data, waveform data, and the like using a personal computer and make various changes thereto. . Therefore, by using a personal computer, commercially available F
Music data, video data, waveform data, and the like recorded on storage media such as D, CD-ROM, and LD can also be read freely and subjected to various changes. Since the data recorded on commercially available CD-ROMs and LDs is copyrighted by the seller, the creator, etc., it is originally not permitted to freely modify them from the viewpoint of copyright infringement. Absent. Therefore, at present C
Copyright indication data for indicating to whom the copyright of the main data belongs, such as music data, video data, or waveform data recorded in a main data storage unit such as a D-ROM or an LD. At present, the copyright holder is clearly indicated by additionally recording information as additional information in a header section separate from the storage section to prevent copyright infringement. In addition to the copyright indication data, information indicating the title of the music data, video data and waveform data, or the data compression technology of the video data and waveform data, etc. There is information indicating a data recording format such as whether or not the data is compressed.

【0003】[0003]

【発明が解決しようとする課題】しかしながら、現在で
は、パーソナルコンピュータなどを使って自由にデータ
を書き換えたり変更したりすることができるので、故意
又は過失によって、著作権表示データや種々の付属情報
が削除されたり、書き換えられたりするという問題があ
る。特に、これらの付属情報がヘッダ部にまとまってス
トアされている場合は、削除や改竄が容易になされてし
まう、という問題がある。また、最近ではネットワーク
通信の発達に伴って、このように著作権表示データの削
除や改竄のなされた音楽データ、映像データ又は波形デ
ータなどがネットワークを通じて不正に広く流通してし
まうという問題も起き易い。また、データ記録形式に関
する付属情報が削除されると、その映像データや波形デ
ータなどを再生することができなくなるという問題もあ
る。本発明は、上述の点に鑑みてなされたものであり、
音楽データ、映像データ又は波形データなどのような主
要情報に付属して付属情報を記憶し流通させる場合にお
いて、付属情報の不正な削除や改変がしにくい形態でこ
れらの情報を記憶させるようにし、また、仮に情報の部
分的削除や改変がなされた場合でも付属情報を適確に再
現することができるようにした、電子情報処理システム
及び方法並びに記憶媒体を提供することを目的とする。
However, at present, data can be freely rewritten or changed using a personal computer or the like, so that copyright display data and various attached information are intentionally or neglected. There is a problem of being deleted or rewritten. In particular, when such ancillary information is stored collectively in the header section, there is a problem that deletion and falsification are easily performed. Further, recently, with the development of network communication, such a problem that music data, video data, waveform data, or the like having the copyright display data deleted or falsified is likely to be distributed illegally and widely through a network. . Further, if the attached information relating to the data recording format is deleted, there is a problem that the video data and the waveform data cannot be reproduced. The present invention has been made in view of the above points,
In the case of storing and distributing additional information attached to main information such as music data, video data or waveform data, such information is stored in a form that makes it difficult for unauthorized deletion or modification of the additional information, It is another object of the present invention to provide an electronic information processing system and method and a storage medium capable of accurately reproducing attached information even if information is partially deleted or modified.

【0004】[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データの場合には、変更される
単位データはベロシティデータやデュレーションタイム
データが望ましい。なぜなら、これらのデータはさほど
厳密性を要求されないデータだからである。すなわち、
これらの情報が多少変更されても音声データの場合聴感
ではほとんど感知(知覚)されないからである。
The electronic information according to claim 1 is provided.
The information processing method includes a first information processing method including a plurality of event data.
Inputting the second information, and inputting the second information.
Step and at least a part of the event data
Change the content of the event data based on the second information
Disperse the second information in the first information
And distributing the second information in a distributed manner.
Outputting the placed first information. Contract
Each of the electronic information processing methods according to claim 2 has a predetermined parameter.
The first is composed of a plurality of event data including a meter
Inputting information and inputting second information.
And at least a part of the event data.
Parameters included in the vent data as the second information
The first information to the second information.
Distributing and arranging the second information, and the second information
Outputting first information that is distributed and arranged;
Consists of The electronic information processing method according to claim 3 is
It consists of multiple event data including two or more parameters.
Inputting first information to be generated, and second information
Inputting a small number of the event data.
At least two or more parameters included in some event data
Based on the content of the data and the second information.
By changing at least some of the parameters
A step of distributing and arranging the second information in the first information.
And the first information in which the second information is distributed and arranged.
Outputting information. The electron according to claim 4.
The information processing method includes a plurality of events each having an order relation.
Inputting first information composed of event data
Inputting second information; and
Event data in a specified order
The predetermined order relation based on the relation of the data and the second information.
One of the multiple event data
By changing, the second information is added to the first information.
Distributing and distributing the second information;
Outputting the first information arranged by
You. The electronic information processing method according to claims 5 to 8 is characterized in that
The second information is distributed by any one of the methods according to claims 1 to 4.
Type the first information arranged by either the first information
Extract and output the second information distributed and arranged
Thus, the second information is decoded. Claim
The electronic information processing method according to item 9 uses a plurality of event data.
Inputting first information to be configured;
Event data.
The second information that is scattered and arranged is detected, and
Extracting scattered second information;
Judging the significance of the extracted second information;
Permit use of the first information according to the result of the significance judgment
Controlling whether or not to do so. Claim 10
The storage medium according to any one of claims 1 to 9
Stores a program that causes a computer to execute the method
And a computer-readable storage medium. Contract
An electronic information processing apparatus according to claims 11 to 19 is characterized in that:
Configured to perform the method according to any of claims 9 to 9.
The present invention relates to an electronic information processing device. Examples described below
In the electronic information processing system described in, the main information and the associated information are recorded in an appropriate storage device, circuit, or medium. For example, as the main information, M
IDI data of key-on event data, multiple such as program change data or control change data
May be adopted. As the additional information, data related to data formats such as a character data and a waveform data compression method, such as a writer name, a song title, and an image / video title, and various other data (cipher text, key information, ID, password, etc.) , News sentence), etc., may be used. This electronic information adding device uses a key-on event data group in the case of MIDI data as a predetermined data group in a data group constituting main information, and uses velocity data as unit data in the key-on event data group. (For example, the least significant bit) is changed based on the data of the attached information. Therefore, control is performed such that the value of a part (for example, the least significant bit) of the velocity data is changed or not changed according to the data of the attached information. As a result, the data of the attached information is
The data is distributed and recorded in the DI data group. When the main information is MIDI data, the unit data to be changed is preferably velocity data or duration time data. This is because these data do not require much rigor. That is,
Even if these information are slightly changed, the audibility of audio data
Ru Der because there is little sense in the above (perception).

【0005】別の観点では、この発明に係る電子情報処
理システムは、主要情報を構成するデータ群の中のデー
タ特性に応じて分類された少なくとも2以上のデータ群
の中の各単位データの一部を、付属情報の一部又は全部
のデータに基づいて、前記分類に対応したアルゴリズム
に従って変更することによって、前記付属情報の一部又
は全部のデータを前記主要情報を構成するデータ群に分
散して記録するように構成されたものである。この電子
情報処理システムにおいては、付属情報の分散記録され
る主要情報をそのデータ特性に応じて分類し、各分類に
対応したアルゴリズムで単位データの一部を変更してい
る。すなわち、主要情報がMIDIデータの場合には、
チャンネル情報がそのまま入れ替えられたり、キーコー
ドがシフトされたりすると、もはや付属情報を主要情報
の中から検出することができなくなることがある。そこ
で、チャンネル毎、プログラムチェンジデータの出現タ
イミング毎、又はMIDIデータを構成するベロシティ
の差分値の大きさ毎等に応じて主要情報を分類し、それ
ぞれの分類に対応したアルゴリズムで単位データの一部
を変更するようにした。これによって、チャンネル情報
がそのまま入れ替えられたりしてデータが書き換えられ
たとしてもいずれかのアルゴリズムに応じて付属情報が
検出されるようになる。
[0005] In another aspect, an electronic information processing system according to the present invention provides an electronic information processing system that includes one unit data of at least two or more data groups classified according to data characteristics of a data group constituting main information. Part, based on part or all of the data of the auxiliary information, by changing according to the algorithm corresponding to the classification, to distribute some or all of the data of the auxiliary information to a data group constituting the main information It is configured to be recorded. In this electronic information processing system, main information distributed and recorded as accessory information is classified according to its data characteristics, and a part of the unit data is changed by an algorithm corresponding to each classification. That is, when the main information is MIDI data,
If the channel information is replaced as it is or the key code is shifted, the additional information may no longer be detected from the main information. Therefore, the main information is classified according to each channel, each appearance timing of the program change data, or each magnitude of the velocity difference value constituting the MIDI data, and a part of the unit data is divided by an algorithm corresponding to each classification. Was changed. As a result, even if the channel information is replaced as it is and the data is rewritten, the additional information is detected according to one of the algorithms.

【0006】更に別の観点では、この発明に係る電子情
報処理システムは、上記のように付属情報を組み込んで
記憶された主要情報を構成するデータ群から、付属情報
の一部又は全部のデータを検出(再生)する機能を具備
している。なお、主要情報として上述のように最下位ビ
ットのデータ変更によっては実用上大きな影響を受けな
い種類の情報を採用した場合は、付属情報を組み込んだ
主要情報を読み出して、これを再生利用するとき、該主
要情報から付属情報のデータ片を取り除くことなく、こ
れをそのままにして再生してもよい。勿論、これに限ら
ず、主要情報から付属情報のデータ片を取り除いて、正
確な主要情報を再生するようにしてもよい。更に別の観
点では、この発明に係る電子情報処理システムは、上記
のように付属情報を組み込んで記憶された主要情報を構
成するデータ群を、電子的記憶媒体又は通信ネットワー
クを介して配信し、配信されたデータ群から前記付属情
報の一部又は全部のデータを検出(再生)する機能を具
備するものである。
[0006] In still another aspect, the electronic information processing system according to the present invention converts a part or all of the data of the accessory information from a data group constituting the main information stored by incorporating the accessory information as described above. It has a function of detecting (reproducing). If information of a type that is practically not greatly affected by the least significant bit data change is adopted as the main information as described above, the main information incorporating the attached information is read out and used when reproducing. Alternatively, the data piece of the attached information may be reproduced as it is without removing the data piece of the attached information from the main information. Of course, the present invention is not limited to this, and the data piece of the attached information may be removed from the main information to reproduce the correct main information. In still another aspect, the electronic information processing system according to the present invention distributes a data group constituting main information stored by incorporating the auxiliary information as described above via an electronic storage medium or a communication network, It has a function of detecting (reproducing) a part or all of the data of the attached information from the distributed data group.

【0007】更に別の観点では、この発明に係る電子情
報処理システムは、上記のように付属情報を組み込んで
記憶された主要情報を構成するデータ群から、付属情報
の一部又は全部のデータを検出(再生)し、この検出
(再生)した付属情報を画面上に表示する表示手段を有
するものである。例えば、付属情報として、文字情報や
波形データ圧縮方法などのデータ記録形式に関する情
報、あるいはその他の種々の情報(暗号文、鍵情報、I
D、パスワード、ニュース文などの情報)を採用して、
これを任意の主要情報に組み込んで記憶する。そして、
主要情報から付属情報を取り出して再生し、これを画面
上に表示する。その場合、通信ネットワークを介して時
々刻々と配信されてくる主要情報からそこに組み込まれ
ている付属情報を取り出して時々刻々と再生し、この再
生情報をストリーミングに表示することができる。更に
別の観点では、この発明に係る電子的記憶媒体は、上記
の電子情報処理システムを実現するためのソフトウェア
プログラムを記憶したものである。更に別の観点では、
この発明に係る電子的記憶媒体は、主要情報とそれに関
する付属情報とが記録された電子的記憶媒体であって、
前記主要情報を構成するデータ群の中の所定の複数デー
タの各単位データの一部が前記付属情報の一部又は全部
のデータに基づいて変更されることによって、前記付属
情報の一部又は全部のデータが前記主要情報を構成する
データ群に分散して記録されているものである。この電
子的記憶媒体としては、フロッピーディスクやCD−R
OMあるいは光磁気ディスクなどの可搬式媒体であって
もよく、また、ハードディスク装置のような固定式媒体
であってもよい。
[0007] In still another aspect, the electronic information processing system according to the present invention converts a part or all of the attached information from a data group constituting the main information stored by incorporating the attached information as described above. It has a display means for detecting (reproducing) and displaying the detected (reproduced) attached information on a screen. For example, as the additional information, information on a data recording format such as character information and waveform data compression method, or various other information (cipher text, key information, I
D, password, news, etc.)
This is incorporated into arbitrary main information and stored. And
Retrieve the attached information from the main information, play it back, and display it on the screen. In this case, it is possible to extract the attached information included in the main information that is distributed momentarily via the communication network, reproduce the information momentarily, and display the reproduced information in a streaming manner. According to still another aspect, an electronic storage medium according to the present invention stores a software program for implementing the above-described electronic information processing system. In yet another perspective,
An electronic storage medium according to the present invention is an electronic storage medium in which main information and auxiliary information related thereto are recorded,
By changing a part of each unit data of predetermined plural data in the data group constituting the main information based on a part or all of the additional information, a part or all of the additional information Are dispersedly recorded in a data group constituting the main information. Such electronic storage media include floppy disks and CD-Rs.
It may be a portable medium such as an OM or a magneto-optical disk, or may be a fixed medium such as a hard disk drive.

【0008】更に別の観点に従えば、上記の目的の達成
のために、この発明に係る方法は、第1の情報を構成す
るデータと共に第2の情報を構成するデータを記憶する
方法であって、前記第1の情報を構成するデータは複数
のデータ単位の集まりからなっており、前記第2の情報
を構成するデータの少なくとも一部を、複数の小サイズ
のデータ片に分けるステップと、前記第1の情報の複数
のデータ単位のうちの特定のデータ単位の各々の値を、
前記各データ片の値に応じて変更するもしくは変更しな
い制御を行なうステップと、制御された前記特定のデー
タ単位を含む前記第1の情報のデータを記憶するステッ
プとを具え、前記第2の情報を構成するデータの少なく
とも一部が前記第1の情報のデータ内に組み込んだ状態
で記憶されるようにしたことを特徴とするものである。
前記第1の情報は主要情報に相当するものであり、例え
ば、MIDI形式の音楽演奏情報であってよく、全体と
して大きな情報量を持ち、メモリにおいては所定の主デ
ータ記憶領域に記憶されるようなものである。前記第2
の情報は付属情報に相当するものであり、例えば、その
ような主データ記憶領域に記憶された音楽演奏情報つま
り第1の情報の、著作権表示に関する情報であってよ
く、音楽演奏情報つまり第1の情報に比べて小規模な情
報量からなるであってよい。例えば、この発明によれ
ば、第1の情報つまり主要情報は所定の主データ記憶領
域に記憶され、第2の情報つまり付属情報は、ヘッダ領
域ではなく、主データ記憶領域内で、第1の情報を構成
するデータに組み込まれて記憶されるようになっていて
よい。この場合、第2の情報つまり付属情報の全てが、
第1の情報を構成するデータに組み込まれて記憶される
ようになっていてもよいし、あるいは、第2の情報つま
り付属情報の一部が、第1の情報を構成するデータに組
み込まれて記憶されるようになっていてもよい。
According to yet another aspect, to achieve the above object, a method according to the present invention is a method of storing data constituting second information together with data constituting first information. Wherein the data constituting the first information comprises a group of a plurality of data units, and at least a part of the data constituting the second information is divided into a plurality of small-sized data pieces; The value of each specific data unit of the plurality of data units of the first information,
Performing a control of changing or not changing according to a value of each data piece; and storing data of the first information including the controlled specific data unit, wherein the second information Is stored in a state where at least a part of the data constituting the first information is incorporated in the data of the first information.
The first information is equivalent to main information and may be, for example, music performance information in MIDI format, has a large amount of information as a whole, and is stored in a predetermined main data storage area in a memory. It is something. The second
Of the music performance information stored in the main data storage area, ie, the first information, may be information relating to the copyright indication, and the music performance information, that is, It may consist of a smaller amount of information than one piece of information. For example, according to the present invention, the first information, that is, the main information, is stored in a predetermined main data storage area, and the second information, that is, the auxiliary information, is stored in the main data storage area, not in the header area. The information may be incorporated and stored in data constituting the information. In this case, all of the second information, that is, the additional information,
The second information, that is, a part of the attached information, may be incorporated in the data constituting the first information, or may be stored in the data constituting the first information. It may be stored.

【0009】この発明によれば、第2の情報を構成する
データの全部又は一部が、複数の小サイズのデータ片
(例えば1つのデータ片が1ビットまたは数ビットから
なっていてよい)に分けられる。第1の情報を構成する
データは、複数のデータ単位の集まりからなっている。
1つの特定のデータ単位の値を1つのデータ片に応じて
変調することにより、該データ片の値を特定のデータ単
位の値の中に組み込むようにしているので、換言すれ
ば、第1の情報の“データ単位”とは、1つのデータ片
の値を組み込もうとする単位に相当している。従って、
“データ単位”のサイズは、本発明の実施にあたって設
計上任意に定めてよく、例えば、1バイトあるいは数バ
イトのような単位であってよい。第1の情報を構成する
複数のデータ単位のうち特定のデータ単位に対して、第
2の情報の各データ片の値を組み込む。例えば、第2の
情報のデータ片の数が16個とすると、第1の情報を構
成する複数のデータ単位のうち特定の16個のデータ単
位に対して、第2の情報の各データ片の値をそれぞれ組
み込む。この組み込みは、所定のアルゴリズムに従っ
て、特定のデータ単位の値を、データ片の値に応じて変
調する(すなわち、該特定のデータ単位の値を変更しな
い/あるいは或る値だけ変更する)演算を行なうことに
よって行なう。こうして、第1の情報のデータの中に、
第2の情報の各データ片が分散的に組み込まれることに
なり、このように第2の情報の各データ片を分散的に組
み込んだ第1の情報のデータが適宜のメモリにストアさ
れる。
According to the present invention, all or a part of the data constituting the second information is converted into a plurality of small-sized data pieces (for example, one data piece may be composed of one bit or several bits). Divided. The data constituting the first information is composed of a group of a plurality of data units.
By modulating the value of one specific data unit according to one data fragment, the value of the data fragment is incorporated into the value of the specific data unit. In other words, the first The “data unit” of information corresponds to a unit in which a value of one data piece is to be incorporated. Therefore,
The size of the "data unit" may be arbitrarily determined in design in implementing the present invention, and may be, for example, a unit such as one byte or several bytes. The value of each data piece of the second information is incorporated into a specific data unit among a plurality of data units constituting the first information. For example, assuming that the number of data pieces of the second information is 16, a specific 16 data unit of a plurality of data units constituting the first information is compared with each data piece of the second information. Include each value. This embedding modulates a value of a specific data unit according to a value of a data piece according to a predetermined algorithm (that is, does not change the value of the specific data unit and / or changes only a certain value). Do by doing. Thus, in the data of the first information,
The data pieces of the second information are dispersedly incorporated, and the data of the first information in which the data pieces of the second information are dispersedly stored is stored in an appropriate memory.

【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の情報のデータ片の値を容易に再生することが
できる。
[0010] In order to reproduce the second information from the first information data in which each data piece of the second information is dispersedly incorporated, the stored data of the first information is further read. The method may further include the step of: reproducing the plurality of small-sized data pieces from the specific data unit of the read data of the first information. The step of performing control of changing or not changing each value of a specific data unit among the plurality of data units of the first information in accordance with the value of each of the data pieces includes: The control may be performed according to a predetermined algorithm.
For example, the algorithm determines a first variable corresponding to the value of the data piece, and adds or subtracts a predetermined number of data units of the first information including at least one of the specific data units. Calculating a second variable based on the above, generating an operation value based on a correlation between the first variable and the second variable, and calculating the generated operation value to a value of the specific data unit May be included. As an example, the first variable is a first flag obtained by inverting a value of the 1-bit data piece, and the second variable is the first information including at least one specific data unit. Is a second flag corresponding to an even number or an odd number of a value obtained by adding or subtracting a predetermined number of data units (for example, only a value of a specific data unit). Generating an operation value based on the interrelationship of variables means comparing the two flags and generating an operation value of 0 or 1 according to the match / mismatch. As a result, 0 or 1 is calculated for the value of a specific data unit,
The value of the particular data unit is modulated (ie, unchanged or changed by some value). In this case, it is possible to easily reproduce the value of the data piece of the second information based on the even or odd value of the value of the specific data unit in the read first information. it can.

【0011】更に別の観点に従えば、上記の目的の達成
のために、この発明に係る方法は、第1の情報を構成す
るデータと共に第2の情報を構成するデータを記憶する
方法であって、前記第1の情報を構成するデータは複数
のデータ単位の集まりからなっており、前記第2の情報
を構成するデータの少なくとも一部を、複数の小サイズ
のデータ片に分けるステップと、前記第1の情報を構成
するデータを少なくとも2つのグループに分け、各グル
ープ毎に、その中の複数のデータ単位のうちの特定のデ
ータ単位の各々の値を、前記各データ片の値に応じて変
更するもしくは変更しない制御をそれぞれ行なうステッ
プと、各グループ毎に制御された前記特定のデータ単位
を含む前記第1の情報のデータを記憶するステップとを
具え、前記第2の情報を構成するデータの少なくとも一
部が前記第1の情報の前記各グループ毎のデータ内にそ
れぞれ組み込まれた状態で記憶されることを特徴とする
ものである。これによれば、第1の情報における複数の
グループの各々において、データ片に分割された第2の
情報が、それぞれ分散的に組み込まれて、重複して、ス
トアされる。データ再生にあたっては、少なくとも1つ
の前記グループについての前記特定のデータ単位から、
前記複数の小サイズのデータ片を再現すればよい。すな
わち、各グループにおいて、重複して、第2の情報が分
散的に組み込まれていめので、いずれか1つのグループ
に組み込まれた第2の情報を再生すればよい。従って、
この第2の観点に従えば、仮に、不正なデータ改竄によ
って、第1の情報における1つのグループのデータ内容
が改竄され、そのグループにおいて組み込まれた第2の
情報が再生不可能となったとしても、第1の情報におけ
る(改竄されていない)別のグループにおいて組み込ま
れた第2の情報を再生することができる。
According to yet another aspect, to achieve the above-mentioned object, a method according to the present invention is a method of storing data constituting second information together with data constituting first information. Wherein the data constituting the first information comprises a group of a plurality of data units, and at least a part of the data constituting the second information is divided into a plurality of small-sized data pieces; Data constituting the first information is divided into at least two groups, and for each group, a value of a specific data unit among a plurality of data units in the group is determined according to a value of each data piece. Performing the control to change or not to change, and storing the data of the first information including the specific data unit controlled for each group, It is characterized in that at least a part of the data constituting the broadcast is stored in a state in which the incorporated respectively in the data of each group of the first information. According to this, in each of the plurality of groups in the first information, the second information divided into the data pieces is dispersedly incorporated, stored redundantly. In reproducing data, from the specific data unit for at least one of the groups,
The plurality of small-sized data pieces may be reproduced. That is, in each group, the second information may be incorporated in a distributed manner so that the second information incorporated in any one group may be reproduced. Therefore,
According to the second aspect, it is assumed that the data content of one group in the first information has been falsified due to unauthorized data tampering, and the second information incorporated in the group cannot be reproduced. It is also possible to reproduce the second information incorporated in another group (not falsified) in the first information.

【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の情報(付属情報)を検出することによ
り、その再生を行なうことができるようになる。
The method of grouping the first information may be in accordance with the data characteristics of the first information. For example, when the first information is MIDI data, the first information may be grouped for each MIDI channel. For example, in the data group of the first information belonging to the first channel of MIDI, a data piece of the second information is dispersed and incorporated, and the same second information is included in the data group of the first information belonging to the second channel. Data pieces are distributed and incorporated. Then, even if the MIDI data is tampered or replaced in units of channels by an unauthorized user, the data piece of the second information incorporated in the MIDI data of another channel which has not been tampered with, 2 can be reproduced. In this case, an algorithm for incorporating the data piece of the second information into the first information is:
Each group may be different as appropriate. in this way,
The first information (main information) is grouped according to its data characteristics, and the second information (attached information) is incorporated into each group. For example, when the first information (main information) is MIDI data, each channel, each appearance timing of program change data, or MID
The first information (main information) is grouped according to the magnitude of the difference value of the velocity constituting the I data, and a part of the unit data is changed and controlled by an algorithm corresponding to each group. Thus, even if the data of a certain group is rewritten by replacing the channel information as it is, the reproduction is performed by detecting the second information (attached information) from the data of another group. Will be able to

【0013】更に別の観点に従えば、上記の目的の達成
のために、この発明に係る方法は、第1の情報を構成す
るデータと共に第2の情報を構成するデータを記憶する
方法であって、前記第1の情報を構成するデータは複数
のデータ単位の集まりからなっており、前記第2の情報
を構成するデータの少なくとも一部を、複数の小サイズ
のデータ片に分けるステップと、前記第1の情報の複数
のデータ単位のうちの特定のデータ単位の各々の値を、
前記各データ片の値に応じて変更するもしくは変更しな
い制御を行なうステップであって、1つの前記特定のデ
ータ単位と別の前記特定のデータ単位との差分値を求め
ることと、この差分値と1つの前記データ片の値とに応
じて該差分値を引き出した前記特定のデータ単位の一方
の値を変更するもしくは変更しない制御を行なうことと
を含むものと、制御された前記特定のデータ単位を含む
前記第1の情報のデータを記憶するステップとを具え、
前記第2の情報を構成するデータの少なくとも一部が前
記第1の情報のデータ内に組み込まれた状態で記憶され
るようにしたことを特徴とするものである。更に、記憶
された前記第1の情報のデータを読み出すステップと、
読み出された前記第1の情報のデータのうちの前記特定
のデータ単位から、前記複数の小サイズのデータ片を再
現するステップであって、1つの前記特定のデータ単位
と別の前記特定のデータ単位との差分値を求めること
と、この差分値から1つの前記データ片の値を再現する
こととを含むものとを具え、再現された各データ片によ
って前記第2の情報を再生するようにしてもよい。これ
によれば、第1の情報の特定のデータ単位の値を、第2
の情報のデータ片の値に応じて変更するもしくは変更し
ない制御を行なうときに、前記特定のデータ単位と別の
特定のデータ単位との差分値を求め、この差分値と1つ
の前記データ片の値とに応じて該差分値を引き出した前
記特定のデータ単位の一方の値を変更するもしくは変更
しない制御を行なうことを特徴としている。これによ
り、第1の情報を構成する各データ単位毎のデータ値を
一律にシフトするようなデータ改変が行なわれたとして
も、それらの差分値は変化しないので、第2の情報を再
生するときの再現性が向上する。
According to yet another aspect, to achieve the above object, a method according to the present invention is a method for storing data constituting second information together with data constituting first information. Wherein the data constituting the first information comprises a group of a plurality of data units, and at least a part of the data constituting the second information is divided into a plurality of small-sized data pieces; The value of each specific data unit of the plurality of data units of the first information,
Performing a control of changing or not changing according to the value of each data piece, obtaining a difference value between one specific data unit and another specific data unit; And performing control to change or not change one value of the specific data unit from which the difference value is derived in accordance with the value of the one data piece; and the controlled specific data unit. Storing the data of the first information, comprising:
At least a part of the data constituting the second information is stored in a state incorporated in the data of the first information. Reading out the stored data of the first information;
Reproducing the plurality of small-sized data pieces from the specific data unit of the read data of the first information, wherein one of the specific data unit and another of the specific data unit Determining a difference value with respect to a data unit and reproducing a value of one of the data pieces from the difference value, wherein the second information is reproduced by each of the reproduced data pieces. It may be. According to this, the value of the specific data unit of the first information is changed to the second data.
When performing control to change or not change according to the value of the data piece of the information, the difference value between the specific data unit and another specific data unit is obtained, and this difference value and one of the data pieces are determined. Control is performed to change or not change one value of the specific data unit from which the difference value is derived in accordance with the value. Accordingly, even if data modification is performed such that the data value of each data unit constituting the first information is uniformly shifted, the difference value does not change. Reproducibility is improved.

【0014】上述の各観点に従う方法において、記憶さ
れた第1の情報のデータを読み出し、読み出したデータ
を通信ネットワークを介して伝送するようにしてもよ
い。更に、通信ネットワークを介して伝送されたデータ
を受信し、受信したデータにおける前記第1の情報のデ
ータのうちの前記特定のデータ単位から、前記複数の小
サイズのデータ片を再現するようにしてもよい。第2の
情報は、必ずしも第1の情報に関連性を有していなくて
もよい。例えば、第1の情報が通信ネットワークを介し
て伝送される或る番組の内容であるとすると、第2の情
報は、その番組とは無関係のニュース文等であってもよ
い。さらに、再生した第2の情報の内容を表示するため
の適宜の表示手段を具備していてもよい。この発明は、
上述の各観点に従う方法を実施するための回路もしくは
装置を具備する電子情報処理装置として実施することが
できる。更に、この発明は、上述の各観点に従う方法を
実行させるためのプログラムを記録したコンピュータ読
み取り可能な記録媒体としての形態で実施することがで
きる。更に、この発明は、上述の各観点に従う方法に従
って前記第2の情報を構成するデータの少なくとも一部
を前記第1の情報のデータ内に組み込んだ状態のデータ
構成からなるデータを記録してなるコンピュータ読み取
り可能な記録媒体としての形態で実施することができ
る。
In the method according to each of the above aspects, data of the stored first information may be read, and the read data may be transmitted via a communication network. Further, receiving the data transmitted through the communication network, from the specific data unit of the data of the first information in the received data, to reproduce the plurality of small-sized data pieces Is also good. The second information does not necessarily have to be related to the first information. For example, if the first information is the content of a certain program transmitted via a communication network, the second information may be a news text or the like unrelated to the program. Further, an appropriate display means for displaying the content of the reproduced second information may be provided. The present invention
The present invention can be implemented as an electronic information processing apparatus including a circuit or an apparatus for performing the method according to each of the above aspects. Furthermore, the present invention can be embodied in a form as a computer-readable recording medium on which a program for executing the method according to each of the above aspects is recorded. Further, according to the present invention, data having a data configuration in a state where at least a part of the data configuring the second information is incorporated in the data of the first information according to the method according to each of the above aspects is recorded. The present invention can be implemented in the form of a computer-readable recording medium.

【0015】[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を介してタイマ、表
示手段、サウンドシステム等の周辺機器が接続される
が、ここでは省略する。
Embodiments of the present invention will be described below in detail with reference to the accompanying drawings. FIG. 2 is a block diagram showing the overall configuration of an electronic musical instrument having a function as an electronic information processing system according to the present invention. Electronic musical instrument 1
It comprises a CPU 21, a ROM 22, a RAM 23, a sound source 24, a floppy disk drive 25, a keyboard 26, a panel switch 27, and a display circuit 28. The CPU 21 controls the overall operation of the electronic musical instrument 1 based on various programs and various data in the ROM 22 and the RAM 23 and the musical tone control information (MIDI data) captured via the floppy disk drive 25, and captures the captured M.
The attached information is dispersed and stored in the IDI data, and the MIDI data in which the attached information is dispersedly stored is taken in from the floppy disk, and the attached information is detected therefrom. In this embodiment, the floppy disk drive 25 will be described as an example.
Drive or a CD-ROM drive. CPU
The reference numeral 21 supplies to the sound source 24 MIDI data captured via the floppy disk drive 25 and MIDI data generated based on a key pressing operation of the keyboard 26. Note that sound generation processing may be performed using a sound source connected to the outside. In addition, other peripheral devices such as a timer, a display unit, and a sound system are connected to the CPU 21 via a data and address bus 29 in addition to those shown in the figure, but are omitted here.

【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)など、その他の媒体
も使用可能である。これらの各種記録媒体は、本発明を
実施するためののコンピュータプログラムを記録する用
途だけではなく、本発明に従って主要情報内に付属情報
を分散して組み込んでなるデータ構造からなるデータを
記録する用途にも使用できる。
The ROM 22 stores various programs of the CPU 21 (such as a system program and an operation program for implementing the present invention) and various data, and is constituted by a read-only memory (ROM). The RAM 23 temporarily stores various data generated when the CPU 21 executes a program, is assigned a predetermined address area of a random access memory (RAM), and serves as a register, a flag, a buffer, a table, and the like. Used. Also, CPU2
1, a hard disk drive 11 may be connected to store various data such as automatic performance data and chord progression data, and further store an operation program for implementing the present invention. It may be. Also, without storing the operation programs in the ROM 22, these operation programs are stored in the hard disk device 11 and read into the RAM 23, whereby the ROM 22 is read.
22 performs the same operation as when the operation program is stored in C22.
This can be performed by the PU 21. This way,
Operation programs can be easily added or upgraded. CD-R as one of the removable external storage media
An OM (Compact Disc Read Only Memory) may be used. The CD-ROM may store various data such as the above-described automatic performance data, chord progression data, musical sound waveform data, video data, and the like, an operation program, and other programs. The operation programs and various data stored in the CD-ROM are stored on a CD-R.
The data can be read by the OM drive 12 and transferred to and stored in the hard disk device 11. This makes it possible to easily perform new installation and version upgrade of the operation program. Of course, the portable recording medium is not limited to the above-described CD-ROM, and other media such as a floppy disk and a magneto-optical disk (MO) can be used. These various recording media are used not only for recording a computer program for carrying out the present invention, but also for recording data having a data structure in which auxiliary information is dispersed and incorporated in main information according to the present invention. Can also be used.

【0017】また、通信インターフェイス13をデータ
及びアドレスバス29に接続し、この通信インターフェ
イス13を介してLAN(ローカルエリアネットワー
ク)やインターネットなどの種々の通信ネットワーク上
に接続可能とし、他のサーバコンピュータとの間でデー
タのやりとりを行うようにしてもよい。これにより、ハ
ードディスク装置11内に動作プログラムや各種データ
が記憶されていないような場合や、記憶済の動作プログ
ラムや各種データの内容を更新するような場合におい
て、サーバコンピュータから新しい動作プログラムや各
種データをダウンロードすることができる。この場合、
クライアントとなる楽音生成装置である電子楽器1か
ら、通信インターフェイス13及び通信ネットワークを
介してサーバコンピュータに動作プログラムや各種デー
タのダウンロードを要求するコマンドを送信する。サー
バコンピュータは、このコマンドに応じて、所定の動作
プログラムやデータを、通信ネットワークを介して電子
楽器1に送信する。電子楽器1では、通信インターフェ
イス13を介してこれらの動作プログラムやデータを受
信して、ハードディスク装置11にこれらを蓄積する。
これによって、動作プログラム及び各種データのダウン
ロードが完了する。
The communication interface 13 is connected to a data and address bus 29, and can be connected to various communication networks such as a LAN (local area network) and the Internet via the communication interface 13 so as to be connected to other server computers. Data may be exchanged between the devices. Thereby, in the case where the operation program or various data is not stored in the hard disk device 11 or the case where the content of the stored operation program or various data is updated, the new operation program or various data is Can be downloaded. in this case,
The electronic musical instrument 1, which is a musical sound generation apparatus serving as a client, transmits an operation program and a command for requesting download of various data to a server computer via a communication interface 13 and a communication network. The server computer transmits a predetermined operation program and data to the electronic musical instrument 1 via the communication network in response to the command. The electronic musical instrument 1 receives these operation programs and data via the communication interface 13 and stores them in the hard disk device 11.
Thus, the download of the operation program and various data is completed.

【0018】音源24は、複数のチャンネルで楽音信号
の同時発生が可能であり、CPU21から与えられた楽
音制御情報(ノートオン、ノートオフ、ベロシティ、ピ
ッチデータ、音色番号等のMIDIデータ)を入力し、
これらのデータに基づいた楽音信号を発生して図示して
いないサウンドシステムに供給する。音源24において
複数チャンネルで楽音信号を同時に発音させる構成とし
ては、1つの回路を時分割で使用することによって複数
の発音チャンネルを形成するようなものや、1つの発音
チャンネルが1つの回路で構成されるような形式のもの
であってもよい。また、音源24における楽音信号発生
方式はいかなるものを用いてもよい。例えば、発生すべ
き楽音の音高に対応して変化するアドレスデータに応じ
て波形メモリに記憶した楽音波形サンプル値データを順
次読み出すメモリ読み出し方式(波形メモリ方式)、又
は上記アドレスデータを位相角パラメータデータとして
所定の周波数変調演算を実行して楽音波形サンプル値デ
ータを求めるFM方式、あるいは上記アドレスデータを
位相角パラメータデータとして所定の振幅変調演算を実
行して楽音波形サンプル値データを求めるAM方式等の
公知の方式を適宜採用してもよい。また、これらの方式
以外にも、自然楽器の発音原理を模したアルゴリズムに
より楽音波形を合成する物理モデル方式、基本波に複数
の高調波を加算することで楽音波形を合成する高調波合
成方式、特定のスペクトル分布を有するフォルマント波
形を用いて楽音波形を合成するフォルマント合成方式、
VCO、VCF及びVCAを用いたアナログシンセサイ
ザ方式等を採用してもよい。また、専用のハードウェア
を用いて音源を構成するものに限らず、DSPとマイク
ロプログラムを用いて音源を構成するようにしてもよい
し、CPUとソフトウェアのプログラムで音源を構成す
るようにしてもよい。音源24から発生された楽音信号
は、図示しないアンプ及びスピーカからなるサウンドシ
ステムによって発音される。なお、音源24とサウンド
システムとの間にエフェクタが設けてあってもよい。
The tone generator 24 can simultaneously generate tone signals on a plurality of channels, and inputs tone control information (MIDI data such as note-on, note-off, velocity, pitch data, tone number, etc.) given from the CPU 21. And
A tone signal based on these data is generated and supplied to a sound system (not shown). The tone generator 24 can simultaneously generate tone signals on a plurality of channels by using one circuit in a time-division manner to form a plurality of tone channels, or one tone channel is constituted by one circuit. It may be of such a format. In addition, any tone signal generation method for the sound source 24 may be used. For example, a memory reading method (waveform memory method) for sequentially reading out tone waveform sample value data stored in a waveform memory in accordance with address data that changes in accordance with a pitch of a musical tone to be generated, or a phase angle parameter An FM method for executing a predetermined frequency modulation operation as data to obtain tone waveform sample value data, or an AM method for executing a predetermined amplitude modulation operation using the address data as phase angle parameter data to obtain tone waveform sample value data, or the like. May be appropriately adopted. In addition to these methods, a physical model method of synthesizing a musical tone waveform by an algorithm that simulates the sounding principle of a natural musical instrument, a harmonic synthesis method of synthesizing a musical tone waveform by adding a plurality of harmonics to a fundamental wave, A formant synthesis method for synthesizing a musical tone waveform using a formant waveform having a specific spectral distribution,
An analog synthesizer method using a VCO, a VCF, and a VCA may be employed. In addition, the sound source is not limited to a sound source configured using dedicated hardware, but may be configured using a DSP and a microprogram, or may be configured using a CPU and software programs. Good. The tone signal generated from the sound source 24 is generated by a sound system including an amplifier and a speaker (not shown). Note that an effector may be provided between the sound source 24 and the sound system.

【0019】鍵盤26は、発音すべき楽音の音高を選択
するための複数の鍵を備えており、各鍵に対応してキー
スイッチを有しており、新たな鍵が押圧されたときは、
その鍵に対応したキーコードを含むキーオンイベント情
報を出力し、鍵が離鍵されたときはその離鍵された鍵に
対応したキーコードを含むキーオフイベント情報を出力
する。また、鍵盤26は、鍵押し下げ時の押鍵操作速度
又は押圧力等を判別してタッチデータを生成し、それを
ベロシティデータとして出力する。鍵盤26は音楽演奏
のための基本的な操作子であり、これ以外の演奏操作子
でもよいことはいうまでもない。パネルスイッチ27
は、電子楽器1の各種動作内容を選択・設定・制御する
ための複数の操作子を備えたものである。表示回路28
はCPU21の制御状態、設定データの内容等の各種の
情報を図示していないモニタ上に表示するものである。
この実施の形態では、著作権表示データ、曲名、作曲者
情報、作成年月日、歌詞、ニュース文、機種名(ハード
名)、IDなどのテキストデータなどを表示する。な
お、電子楽器1は、楽器専用機器として構成されている
必要はなく、例えば、汎用電子機器であるパーソナルコ
ンピュータを使用し、これに本発明に係るソフトウェア
を搭載して、楽器機能を実現するようにしたものであっ
てもよい。勿論、本発明は電子楽器としての実施形態に
限らず、その他の適宜の電子機器システムとしての実施
形態をとってもよいものである。その場合においても、
汎用電子機器であるパーソナルコンピュータに本発明に
係るソフトウェアを搭載して、発明を実施することがで
きる。
The keyboard 26 is provided with a plurality of keys for selecting the pitch of a musical tone to be pronounced, and has a key switch corresponding to each key, so that when a new key is pressed, ,
Key-on event information including a key code corresponding to the key is output, and when a key is released, key-off event information including a key code corresponding to the released key is output. Further, the keyboard 26 determines a key pressing operation speed or a pressing force at the time of key pressing, generates touch data, and outputs the touch data as velocity data. The keyboard 26 is a basic operation element for music performance, and it goes without saying that other operation elements may be used. Panel switch 27
Is provided with a plurality of operators for selecting, setting, and controlling various operation contents of the electronic musical instrument 1. Display circuit 28
Displays various information such as the control state of the CPU 21 and the contents of the setting data on a monitor (not shown).
In this embodiment, text data such as copyright display data, song title, composer information, creation date, lyrics, news text, model name (hardware name), ID, and the like are displayed. Note that the electronic musical instrument 1 does not need to be configured as a musical instrument-dedicated device. For example, a personal computer which is a general-purpose electronic device is used, and the software according to the present invention is mounted on the personal computer to realize the musical instrument function. It may be one that has been made. Of course, the present invention is not limited to the embodiment as an electronic musical instrument, but may take an embodiment as another appropriate electronic device system. Even in that case,
The invention can be implemented by installing the software according to the present invention on a personal computer which is a general-purpose electronic device.

【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のデータ列が得られることになる。
Next, an example in which the electronic information processing system according to the present invention operates as an electronic information adding device will be described. FIG. 3 is a flowchart illustrating an example of an electronic signature adding process when the electronic musical instrument 1 operates as an electronic information adding device. First, in this case, the electronic musical instrument 1
Is M read from the floppy disk drive 25.
A case will be described in which an electronic signature, ie, copyright display data, which is a part of the header information, is dispersed in the IDI data. The MIDI data thus produced may be recorded again on a floppy disk, stored on another storage medium, or transferred. First, in step 31, the contents of an electronic signature (copyright display data) to be distributed and written in the MIDI data sequence are determined. For example, "COPYRIGHT @ Y
When characters such as “MH @ 1996” are written in the MIDI data string in a distributed manner, these character strings are determined using the panel switch 27. Here, △ means a blank. Since the electronic signature to be written, that is, the character string is determined in step 31, this time in step 32
Then, a data string relating to the digital signature is obtained. For example, by using the panel switch 27, "COPYRIGHT @ YM
If "H @ 1996" is input, the
It is converted into a data string of the character code of I. in this case,
“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" =
A series of ASCs consisting of "39H", "6" = "36H"
The data string of II will be obtained.

【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にそれぞれ格納する。
Next, in step 33, information to be added as an electronic signature, that is, the ASC obtained in step 32
One byte of the data string of II is stored in the byte register BR. Then, in step 34, each bit data of ASCII stored in the byte register BR is inverted to create another 8-bit bit string. For example, if “Y” = “59H” (H after the number indicates hexadecimal notation) is stored in the byte register BR, it becomes “0101101001” as shown in FIG.
B ”(B after the number indicates a binary number) =
It becomes a bit string such as "89D" (D after the number indicates that it is a decimal number representation). This bit string is converted by the data conversion, that is, bit inversion in step 34, as shown in FIG.
A bit string like (E), that is, “10100110
B "= a bit string such as" 166D ". Next, at step 35, the MIDI data string (Standard)
Various MIDI data such as key-on event data, program change data, and control change data are sequentially extracted from the MIDI file (SMF). That is, since the MIDI data string is basically composed of key-on event data including a key-on status byte, a key code byte, and a velocity byte, other program change event data, control change event data, etc.
In step 5, such MIDI data is sequentially extracted.
In step 36, it is determined whether or not the extracted MIDI data is key-on event data KON. If it is key-on event data (YES), the process proceeds to the next step 37; otherwise (NO), step 3D
Proceed to. Therefore, the MIDI extracted in step 35
If the data is key-on event data,
MID consisting of key-on event data as in (A)
An I data sequence SMF1 is obtained. The MIDI data string SMF1 of the key-on event data is composed of a combination of the duration time D and the key-on event data. In step 37, the data of each byte in the key-on event data is stored in the corresponding register a, b, c. That is, the channel number in the key-on status byte in the key-on event data is stored in the register a, the key code in the next first data byte (key code byte) is stored in the register b, and the second data byte (velocity). ) Is stored in the register 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)のようになる。
In step 38, one bit is extracted sequentially from the head of the bit string created in step 34 and stored in the first bit flag BF1. In the next step 39, the values stored in the registers a, b, and c in step 37 are calculated according to a predetermined function, and the bit data obtained by the calculation result is inverted and stored in the second bit flag BF2. . In this embodiment, a predetermined function is modulo 2 of the sum of the values of the registers a, b, and c. That is, the function f1 (a, b, c,) = (a + b +
c) Let it be mod2. For example, in the case of the key-on event MIDI data string SMF1 as shown in FIG.
One key-on event data creates data corresponding to one character data. First, when a calculation is performed using a predetermined function f1 (a, b, c) of each key-on event data, the result is as shown in FIG. That is, if the value of (a + b + c) is even, it is "0", and if it is odd, it is "1". Then, these inverted bits are stored in the second bit flag BF2, as shown in FIG.

【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』になる。
In step 3A, it is determined whether the first bit flag BF1 and the second bit flag BF2 obtained in steps 38 and 39 are equal, and if they are equal (YES), the next step 3B and Step 3
C processing is performed, and if not equal (NO), step 3
Jump to E. In step 3B, since it is determined that the first bit flag BF1 is equal to the second bit flag BF2, "1" is added to the value of the register c, that is, the least significant bit of the velocity data. Then, in step 3C, the velocity value constituting the key-on event data in the MIDI data string is updated based on the value of the register c. That is, the velocity value is increased by one. For example, in the case of FIG. 1, if the third, fifth, sixth, and seventh bits of the first bit flag BF1 and the second bit flag BF2 are equal to each other, step 3
A, the third, fifth in the MIDI data string
The velocity values of the sixth, seventh, and seventh key-on event data increase by “1”. That is, the velocity value “63” of the third key-on event data becomes “64”, the velocity value “78” of the fifth key-on event data becomes “79”, and the velocity value “6” of the sixth key-on event data becomes “79”. 91 becomes “92”, and the velocity value “42” of the seventh key-on event data becomes “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が出現する度に、
電子署名データの先頭に復帰することになる。何故、プ
ログラムチェンジイベントで復帰するようにしたかとい
うと、プログラムチェンジイベントは電子署名を付与す
るノートオンイベントなどに比べて、比較的低頻度で発
生し、プログラムチェンジ後は、楽器が変わることを意
味するので、その位置を始点としてエディットされる可
能性の高い単位ということが言えるからである。
In step 3D, in step 36, the MID
This processing is performed when it is determined that the data extracted from the I data string is not the key-on event data (NO). It is determined whether the extracted MIDI data is a program change event PCM. If the event is PCM (YES), the process proceeds to step 3H; otherwise (NO), the process proceeds to step 3E. In step 3E, if NO is determined in step 3A or step 3D or step 3E
This processing is performed when the processing of C is completed, and it is determined whether the data next to the MIDI data extracted in step 36 is data indicating the end of data. If the result of the determination in step 3E is end of data (YES), the electronic information adding process is ended, and data is not ended (N
O) In case of, proceed to the next step 3F. Step 3F
In the case where the processing from step 35 to step 3E is one round processing, it is determined whether the one round processing has been performed eight times, that is, eight bits, and eight rounds have been performed (Y
If (ES), the process proceeds to the next step 3G. If not (NO), the process returns to step 35 to perform the processes of steps 35 to 3E on the next bit in the register BR. In step 3G, step 33
In the case where the processing from Step 3F to Step 3F is one round processing, it is determined whether or not the one round processing has been performed by the number of bytes constituting the electronic signature data. If not (NO), the process returns to step 33, and performs the processes of steps 33 to 3E for the next byte of the digital signature data. In step 3H, in step 3G, all bytes of the digital signature data are transferred from step 33 to step 3F.
Since it has been determined that the above processing has been performed, the pointer of the digital signature byte is set to the head thereof in order to write the digital signature data again, and the process returns to step 33. In this way, the data obtained by converting each bit of the signature data by a predetermined algorithm is distributed and
It is embedded in the velocity byte part of the key-on event data in the data. In this step 3H,
If YES is determined in step 3D, that is, if the retrieved MIDI data is the program change event P
It is also performed when it is a commercial. Therefore, each time the program change event PCM appears, the electronic signature data
This returns to the beginning of the electronic signature data. The reason for returning from the program change event is that the program change event occurs relatively infrequently compared to a note-on event that gives an electronic signature, and that the instrument changes after the program change. This means that the unit is highly likely to be edited starting from that position.

【0025】次に、図3の電子情報付与処理によって付
与された電子情報すなわち電子署名データの検出処理に
ついて説明する。図4は、電子楽器1が電子情報検出装
置として動作する場合の一例を示すフローチャート図で
ある。この場合には、フロッピーディスクドライブ25
から読み出されたMIDIデータのベロシティバイト部
分にそのヘッダ情報の一部である電子署名すなわち著作
権表示データが分散記録されているものとする。以下の
実施の形態では、この著作権表示データを検出して、そ
れをモニタなどに表示するまでの動作を説明する。ま
ず、ステップ41では、署名データ格納レジスタSIG
Nにナルデータを格納する。すなわち、署名データ格納
レジスタSIGNの内容をリセットする。ステップ42
では、電子署名を検出するべきMIDIデータ列、すな
わち図3の電子情報付与処理によって電子署名の付与さ
れたMIDIデータ列を取り出す。そして、次のステッ
プ43で、バイトレジスタBRとビットカウンタBCN
の値をリセットする。
Next, a description will be given of a process of detecting the electronic information, that is, the electronic signature data added by the electronic information adding process of FIG. FIG. 4 is a flowchart illustrating an example of a case where the electronic musical instrument 1 operates as an electronic information detection device. In this case, the floppy disk drive 25
It is assumed that an electronic signature, ie, copyright display data, which is a part of the header information, is dispersedly recorded in the velocity byte portion of the MIDI data read from the MIDI data. In the following embodiment, an operation from detection of the copyright display data to display of the data on a monitor or the like will be described. First, in step 41, the signature data storage register SIG
N is stored as null data. That is, the contents of the signature data storage register SIGN are reset. Step 42
Then, a MIDI data sequence from which an electronic signature is to be detected, that is, a MIDI data sequence to which an electronic signature has been added by the electronic information adding process of FIG. 3 is extracted. Then, in the next step 43, the byte register BR and the bit counter BCN
Reset the value of.

【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にそれぞれ格納する。
Next, in step 44, data such as key-on event data, program change data, control change data, etc. are sequentially extracted from the MIDI data string (Standard MIDI File: SMF). In step 45, it is determined whether or not the extracted MIDI data is key-on event data KON. If it is key-on event data (YES), the process proceeds to the next step 46, otherwise (NO), the process proceeds to step 4C. Therefore, if the MIDI data extracted in step 44 is key-on event data,
A key-on event MIDI data string SMF2 as shown in FIG. 1 (G) is created. Note that the key-on event data string in FIG. 1G is the same as the key-on event data string in FIG. In step 46, the data of each byte in the key-on event data is stored in the corresponding register a, b,
c. That is, the channel number in the key-on status byte in the key-on event data is stored in the register a, the key code in the next first data byte (key code byte) is stored in the register b, and the second data byte (velocity). ) Is stored in the register 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の内容に基づいて
検出された電子署名情報を図示していない表示装置など
に表示する。
In step 47, the value of the byte register BR is doubled (shifted to the left), and the least significant bit is set to the function f.
1 (a, b, c,) = (a + b + c) Add the inverted value of mod2. In step 48, the bit counter BCN
Is incremented by one. In step 49,
It is determined whether or not the value of the bit counter BCN has become "8". If YES, the process proceeds to the next step 4A,
In the case of, jump to step 4F. For example, FIG.
MIDI data string S of key-on event like (G)
In the case of MF2, one of eight key-on event data
Data corresponding to one character data is created. First,
A predetermined function f1 (a, b,
The calculation in c) is as shown in FIG. That is, if the value of (a + b + c) is even, it is "0", and if it is odd, it is "1". These inverted bits are shown in FIG.
(J), the value of which sequentially shifts the byte register BR, and finally the stored value of the byte register BR becomes as shown in FIG. The data of FIG. 1 (J) obtained in this manner is the same as that of FIG. 1 (F).
That is, the copyright indication data distributed and written in the velocity byte portion of the MIDI data, ie, FIG.
The data as shown in FIG. 1F is reproduced as shown in FIG. In step 4A, the value stored in the byte register BR is converted into ASCII character data and additionally stored in the signature data storage register SIGN. Step 4B
Then, the values of the byte register BR and the bit counter BCN are reset. In step 4C, in step 45, MI
This processing is performed when it is determined that the data extracted from the DI data string is not key-on event data (NO). It is determined whether the extracted MIDI data is a program change event PCM.
In the case of the program change event PCM (YES), the process proceeds to the next step 4D and step 4E, otherwise (NO), the process proceeds to step 4F. Step 4D
Then, the value of the byte register BR is reset, and in step 4E, the value of the bit counter BCN is reset. In step 4F, NO in step 49 or step 4C
Or Step 4B or Step 4E
This processing is performed when the above processing is completed, and it is determined whether or not the data next to the MIDI data extracted in step 46 is data indicating the end of the data. If the result of the determination in step 4F is data end (YES),
The process proceeds to the next step 4G, and returns to step 44 if the data is not ended (NO). In step 4G, the electronic signature information detected based on the contents of the signature data storage register SIGN is displayed on a display device (not shown) or the like.

【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までの処理に従ってそれぞれのチャンネル毎にそ
の関数処理に従って変換された電子署名データを付与す
る。このように、チャンネル毎に関数処理の内容を変更
することによって、それぞれの情報を一度に変更するよ
うなエディット処理、例えばチャンネル情報の入れ替え
やキーコードのシフトなどといったものが行われた場合
でも、エディットによって変更されるデータに関係しな
い関数を利用するチャネルから電子署名データを復元す
ることができるという効果がある。
In the above-described embodiment, a case has been described in which key-on event data is sequentially extracted from the MIDI data string, and the digital signature data is sequentially stored therein. Since there is a channel unit, a case where electronic signature data is stored correspondingly will be described. FIG.
FIG. 9 is a flowchart illustrating another example of the electronic signature adding process when the electronic musical instrument 1 operates as an electronic information adding device. In this case, as in the case of FIG.
Is M read from the floppy disk drive 25.
An electronic signature which is a part of the header information, that is, copyright display data is dispersedly recorded in the IDI data. First, Steps 51 and 52 are the same as Steps 31 and 32 in FIG. 3. In Step 51, the contents of the electronic signature (copyright display data) to be distributed and written in the MIDI data sequence are determined. In step 52, a data string related to the character string is obtained. Then, in the next step 53, the processing of steps 33 to 3H of FIG. 3 is performed for each of the channels. At this time, the arithmetic processing according to the predetermined function in step 39 is made different for each channel. For example, in step 39, the function f1 (a,
b, c,) = (a + b + c) mod2 is stored in the second bit flag BF2, and this is used as a first function processing. From the second, third, and fourth function processing, Use an appropriate one for each channel. Second
Is a function processing of f2 (a, b, c) = (a + c) mod2
And The third function processing is f3 (a, b, c) = (b +
c) Let it be mod2. The fourth function processing is f4 (a, b,
Let c) = (c) mod2. In step 53, the first to fourth function processes are selectively switched for each MIDI channel, and converted according to the function process for each channel in accordance with the processes in steps 33 to 3H in FIG. Attach digital signature data. In this way, by changing the contents of the function processing for each channel, even if an edit processing such as changing each information at a time, for example, a change of channel information or a shift of a key code is performed, There is an effect that the digital signature data can be restored from a channel using a function that is not related to the data changed by the editing.

【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を意味する。
Next, a description will be given of an electronic information detection process 2 for detecting the electronic information added by the electronic information addition process 2 in FIG. 5, ie, the electronic signature data. FIG. 6 is a flowchart illustrating another example of the electronic information detection process when the electronic musical instrument 1 operates as an electronic information detection device. In this case, a predetermined function process (one of the first to fourth function processes) is performed for each channel of the MIDI data read from the floppy disk drive 25, so that the header information is included in the velocity byte portion. It is assumed that the electronic signature, that is, the copyright display data, which is a copy, is distributed and recorded. In the following embodiment, an operation from detecting copyright display data distributedly recorded by a predetermined function process for each channel and displaying it on a monitor or the like will be described. First, in step 61, a MIDI data string from which an electronic signature is to be detected, that is, a MIDI data string to which electronic signature data is added in accordance with a predetermined function process for each channel by the electronic information adding process of FIG. 5 is extracted. Then, in the next step 62, the channel counter is reset, and in step 63, the function counter is reset. This channel counter and function counter are
It is used to perform each function processing on each channel in the subsequent processing. For example, when the number of MIDI channels corresponds to 16, the channel counter is processed so as to cyclically count from 0 to 15. Further, as described above, when there are four types of function processing, the function counter is processed so as to cyclically count from 0 to 3. When the function counter is "0", the first function processing f1 (a, b, c,) = (a + b + c) m
If od2 is “1”, the second function processing f2 (a,
b, c) = (a + c) mod 2 and the third in the case of “2”
Function processing f3 (a, b, c) = (b + c) mod2
In the case of "3", the fourth function processing f4 (a, b, c)
= (C) means 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に進
み、その検出された電子署名データをモニタ上に表示し
て終了する。
In step 64, for the channel corresponding to the value of the channel counter, the same digital signature detection processing as in steps 41 to 4F in FIG. 4 is performed using the function processing corresponding to the value of the function counter. In step 65, it is determined whether or not the detected data sequence has a significant portion. The significant part here is ASCI
“COPYRIGH composed of character data of I
T "is a part of the signature data. Therefore, in step 65, it is determined whether or not the character string data “COPYRIGHT” exists in the character string composed of the ASCII character data sequentially added to the signature data storage register SIGN by the processing of FIG. become. If it is determined in step 65 that there is no significant portion in the signature data storage register SIGN (NO), the process proceeds to the next step 66, where the function counter is incremented by one. Then, in the next step 67, it is determined whether or not the processing of steps 64 and 65, that is, the extraction processing of the signature data, has been performed for all the function processings. The process proceeds to step 68, and if not (NO), the process returns to step 64, and performs the processes of steps 64 and 65 for the next function process. Conversely, if the result of determination in step 65 is that there is a significant portion in the signature data storage register SIGN, the process proceeds to step 6B, where the detected digital signature data is displayed on the monitor and the process is terminated.

【0031】ステップ68では、チャンネルカウンタを
1だけインクリメントする。そして、次のステップ69
で全てのチャンネルに対してステップ64及びステップ
65の処理すなわち署名データの抽出処理が行われたか
どうかの判定を行い、行われた(YES)場合には次の
ステップ6Aに進み、そうでない(NO)場合はステッ
プ63にリターンし、次のMIDIチャンネルについて
ステップ63〜ステップ65の処理を行う。ステップ6
9でYESと判定されたということは、全てのMIDI
チャンネルに対して、全ての関数処理を用いて署名デー
タの抽出処理を行った結果、データ列に有意な部分が存
在しなかったということだから、ステップ6Aでは、そ
の結果として『電子署名なし』又は『電子署名検出失
敗』などの文字をモニタ上に表示する。
In step 68, the channel counter is incremented by one. Then, the next step 69
Then, it is determined whether or not the processing of steps 64 and 65, that is, the extraction processing of the signature data, has been performed for all the channels. ), The process returns to step 63, and the processes of steps 63 to 65 are performed for the next MIDI channel. Step 6
9 is YES, it means that all MIDI
As a result of performing the signature data extraction processing on all the channels using the function processing, no significant portion was present in the data string. Therefore, in step 6A, as a result, “no digital signature” or Display characters such as "Digital signature detection failed" on the monitor.

【0032】なお、MIDIデータに基づく楽音再生演
奏においては、上記のように一部データ変更されたベロ
シティデータはそのまま再生に利用してよい。ベロシテ
ィデータの最下位1ビットの値が1増加又は減少するこ
とは、楽音の再生精度にそれほど深刻な影響を与えな
い。勿論、そうせずに、一部データ変更されたベロシテ
ィデータから署名データによる誤差を取り除いて、正確
なベロシティデータを再生するみとも可能であるから、
そのように実施してもよい。なお、上述の実施の形態で
は、付属情報として署名データを、主要情報としてのM
IDIデータのベロシティ部分に分散させて記録する場
合について説明したが、これは一例にすぎず、これ以外
の著作者名、曲の題名、画像/映像の題名などに関する
文字データやデータ形式に関するデータやその他の種々
のデータからなる適宜の付属情報を、所要の主要情報の
中に分散させて記録するようにしてもよいことはいうま
でもない。また、付属情報を分散させて記憶する対象と
なる主要情報の種類は、ベロシティ情報に限らず、ベロ
シティ情報以外の適宜の情報、例えばデュレーションタ
イム(待ち時間)データの情報であってもよい。また、
1つの付属情報を、異なる複数種類の主要情報(例えば
とベロシティ情報とデュレーションタイム情報)にわた
って分散させて記録するようにしてもよい。両方に分散
記録する場合、その厳密性すなわち分散記録することに
よってそのデータの内容が変更される度合いに応じて、
分散記録する箇所を適宜切り換えるようにしてもよい。
すなわち、デュレーションタイムデータの短い領域で、
そのデュレーションタイムデータに分散記録すると、そ
れによる変動の割合(厳密性)が大きくなるので、好ま
しくないが、デュレーションタイムデータが比較的大き
い領域では、逆の関係にあるので、分散記録しても影響
は少ない。同じく、ベロシティ部分に記録する場合で
も、ベロシティの値の小さい領域て、そのベロシティ部
分に分散記録すると、それによる変動の割合(厳密性)
が大きくなるので、好ましくないが、ベロシティの値の
大きい領域では、分散記録しても影響は少ない。従っ
て、これらを適宜考慮して種々のデータを分散記録する
ようにしてもよい。
It should be noted that in a tone reproduction performance based on MIDI data, the velocity data partially modified as described above may be used for reproduction as it is. Increasing or decreasing the value of the least significant bit of the velocity data by 1 does not significantly affect the reproduction accuracy of the musical sound. Of course, without doing so, it is also possible to remove the error due to the signature data from the partially modified velocity data and reproduce the accurate velocity data.
You may implement so. In the above embodiment, the signature data is used as the additional information, and the M
The case of recording the IDI data dispersedly in the velocity portion has been described, but this is merely an example, and other data such as character data or data format relating to the author name, song title, image / video title, etc. Needless to say, appropriate additional information including various other data may be dispersedly recorded in required main information. In addition, the type of the main information for which the attached information is distributed and stored is not limited to the velocity information, but may be appropriate information other than the velocity information, for example, information of duration time (waiting time) data. Also,
One piece of attached information may be dispersedly recorded over a plurality of different types of main information (for example, velocity information and duration time information). In the case of distributed recording in both, depending on its strictness, that is, the degree to which the content of the data is changed by distributed recording,
The locations for distributed recording may be switched as appropriate.
That is, in a short area of the duration time data,
If distributed recording is performed on the duration time data, the rate of change (strictness) due to this becomes large, which is not preferable. Is less. Similarly, even in the case of recording in the velocity part, if the area where the velocity value is small is distributed and recorded in the velocity part, the rate of change (strictness)
Is undesired, but in an area where the velocity value is large, the effect is small even if the distributed recording is performed. Therefore, various data may be dispersedly recorded in consideration of these factors.

【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のようにプログラムチェンジデータの
検出タイミング毎に関数処理の種類を変更するようにし
てもよい。この場合には、検出されたデータ列に有意な
部分が存在するかどうかの判定処理も各プログラムチェ
ンジデータの検出タイミング毎に行う必要がある。
Further, in the above-described embodiment, the case has been described where the auxiliary information is dispersedly recorded in the MIDI data with the MIDI data as the main information. However, the present invention is not limited to this. Appropriate data such as audio data, image data, moving image data, registration (setting record of electronic musical instrument) data may be used as the main information, and necessary additional information is dispersedly recorded in the appropriate main information. Is also good. When the waveform data (waveform sample data) is used as main information and appropriate additional information is dispersedly recorded therein, the waveform data (wave_data) is used as a predetermined function process.
a) modulo 2 of itself, that is, f1 (wave
_Data) = wave_data mod2. Also, using the value of the waveform data and its sample point data, the modulo 2 of the sum of the two data, ie, f2 (wave_data, sample_poi)
nt) = (wave_data + sample_poi)
nt) It may be mod2. In the embodiment of FIGS. 5 and 6, the case where signature data is detected by changing the type of function processing for each (logical) channel has been described. However, as shown in FIGS. The type of function processing may be changed for each detection timing. In this case, it is necessary to perform a process of determining whether a significant portion exists in the detected data sequence at each detection timing of each program change data.

【0034】上述の実施の形態では、検出された電子署
名情報(すなわち付属情報)をモニタ上に表示する場合
について説明したが、検出側において、署名情報(すな
わち付属情報)がない場合や署名情報が完全に復旧でき
ない場合(各論理チャンネルにおいて、署名情報が検出
できるチャンネルと検出できないチャンネルが混在する
場合)には、データの再生を中止するようにしてもよ
い。また、その検出側の電子楽器やコンピュータなどが
ネットワークに接続されている場合には、そのネットワ
ーク上に不正にエディットされたデータが存在すること
を送信し、それをホストコンピュータ側で検出すること
ができるようにしてもよい。上述の実施の形態では、電
子楽器がこの発明に係る方法又は装置もしくはシステム
を採用した電子署名付与装置又は電子署名検出装置とし
て動作する場合について説明したが、この発明に係る方
法又は装置もしくはシステムは、電子楽器に限らず、ど
のような機器若しくは装置においても適用することがで
きる。この発明に係る方法又は装置もしくはシステムを
採用した電子署名(すなわち付属情報)付与及び/又は
検出装置は、ディスクリートタイプハードウェア装置で
構成してもよいし、ソフトウェアあるいはDSP(デジ
タル・シグナル・プロセッサ)とマイクロプログラムな
どで構成するようにしてもよい。また、このような電子
署名(すなわち付属情報)付与及び/又は検出装置をフ
ロッピーディスクドライブや通信インターフェイスなど
に予め内蔵しておいて、データの入出力の段階で強制的
に電子署名データ(すなわち付属情報)を付与したり、
検出したりするようにしてもよい。上述の実施の形態で
は、電子署名データ(すなわち付属情報)を主要情報の
間に分散記録する(付与する)ことと、それから、これ
を読み出して電子署名データ(すなわち付属情報)を再
生する(検出する)ことについて説明した。しかし、記
録する(付与する)ことと再生する(検出する)ことの
どちらか一方のみを実施することも本発明の範囲に含ま
れる。例えば、電子署名データ(すなわち付属情報)の
分散記録された(付与された)データ(すなわち主要情
報)を、フロッピーディスクやコンパクトディスクなど
で供給するようにしてもよいし、ネットワークを通じて
電子的に供給するようなデータ形態を採用してもよい。
In the above-described embodiment, the case where the detected electronic signature information (ie, the attached information) is displayed on the monitor has been described. May not be completely recovered (in each logical channel, a channel in which signature information can be detected and a channel in which signature information cannot be detected coexist), the data reproduction may be stopped. If the electronic musical instrument or computer on the detecting side is connected to a network, the host computer sends a message indicating that illegally edited data exists on the network, and the host computer can detect it. You may be able to. In the above-described embodiment, the case where the electronic musical instrument operates as an electronic signature providing apparatus or an electronic signature detecting apparatus employing the method, apparatus, or system according to the present invention has been described. The present invention is not limited to electronic musical instruments, and can be applied to any device or device. An electronic signature (ie, ancillary information) adding and / or detecting device employing the method, apparatus or system according to the present invention may be constituted by a discrete type hardware device, software or a DSP (Digital Signal Processor). And a microprogram or the like. Further, such a digital signature (ie, attached information) adding and / or detecting device is built in a floppy disk drive, a communication interface, or the like in advance, and the digital signature data (ie, attached information) is forcibly formed at a data input / output stage. Information),
Alternatively, it may be detected. In the above-described embodiment, the electronic signature data (that is, attached information) is dispersedly recorded (attached) between main information, and then read out to reproduce the electronic signature data (that is, attached information) (detection). Do) was explained. However, performing only one of recording (applying) and reproducing (detecting) is also included in the scope of the present invention. For example, data (that is, main information) in which electronic signature data (that is, attached information) is dispersedly recorded (attached) may be supplied on a floppy disk, a compact disk, or the like, or may be supplied electronically via a network. Alternatively, a data format such as that shown in FIG.

【0035】図3のステップ3Bでは、ベロシティデー
タの値を1だけインクリメント処理する場合について説
明したが、デクリメント処理してもよいし、これらの処
理を適当なタイミング(所定データ数毎とか)で交互に
行うようにしてもよい。上述の実施の形態では、所定の
関数処理の後にビット反転処理を行う場合について説明
したが、これは行わなくてもよい。また、ビット反転処
理の他にも、上位ビットと下位ビットを入れ替えると
か、AND(論理積)、OR(論理和)、XOR(排他
的論理和)などの論理演算処理を施すとか、種々の処理
を加えるようにしてもよいことはいうまでもない。ま
た、適宜の暗号化処理を施すようにしてもよい。例え
ば、上述の第1から第4までの関数処理の結果を適宜組
み合わせてもよいし、前回の関数処理の結果を次の関数
処理に組み合わせて演算するようにしてもよい。なお、
これらの各処理はある程度高速に行うことができ、変換
後、逆変換によりもとに戻せるものであれば、これ以外
の方法でもよいことはいうまでもない。上述の実施の形
態では、プログラムチェンジデータの検出タイミング毎
に新たに署名データの付与処理を行う場合について説明
したが、これに限らず、小節単位(例えば8小節毎な
ど)データの検出タイミング毎に行うようにしてもよ
い。また、波形データに分散記録する場合には、所定の
サンプル数毎や所定のゼロクロス毎に新たに署名データ
の付与処理を行うようにしてもよい。ゼロクロス(波形
の値の符号が変わるタイミング)は波形エディットの際
の基準地点と考えられるからである。また、上述の実施
の形態では、署名データや題名などのような付属情報を
記録する場合について説明したが、MIDIデータと波
形データを合わせて記録する場合に、MIDIデータに
その波形データの一部を記録するようにしてもよいし、
波形データにMIDIデータの一部を合わせて記録する
ようにしてもよい。
In step 3B of FIG. 3, the case where the velocity data value is incremented by 1 has been described. However, decrement processing may be performed, or these processing may be alternately performed at appropriate timing (for example, at a predetermined number of data). May be performed. In the above embodiment, the case where the bit inversion processing is performed after the predetermined function processing has been described, but this need not be performed. In addition to the bit inversion processing, various processings such as exchanging upper bits and lower bits, performing logical operation processing such as AND (logical product), OR (logical sum), XOR (exclusive logical sum), etc. Needless to say, it may be added. Further, an appropriate encryption process may be performed. For example, the results of the first to fourth function processes described above may be appropriately combined, or the result of the previous function process may be combined with the next function process to perform the calculation. In addition,
Needless to say, any other method may be used as long as each of these processes can be performed at a high speed to some extent and can be returned to the original state by the inverse conversion after the conversion. In the above-described embodiment, a case has been described in which signature data is newly added at each detection timing of program change data. However, the present invention is not limited to this. For each bar (eg, every eight bars), data is detected at each timing. It may be performed. Further, in the case of performing distributed recording on waveform data, a process of adding new signature data may be performed for each predetermined number of samples or for each predetermined zero cross. This is because the zero crossing (timing at which the sign of the waveform value changes) is considered as a reference point in waveform editing. Further, in the above-described embodiment, a case has been described where auxiliary information such as signature data and a title is recorded. However, when recording MIDI data and waveform data together, a part of the May be recorded,
A part of the MIDI data may be recorded together with the waveform data.

【0036】なお、上述の実施の形態では、著作権に関
する署名データを付属情報として、これをMIDIデー
タのベロシティ部分に分散記録する場合について説明し
たが、これは一例であり、これ以外の著作者名、曲の題
名(曲名)、画像/映像の題名などに関するテキスト情
報や、そのデータ形式に関する情報やその他の種々の電
子情報(曲の解説、著作者に関する情報、著作年、歌
詞、ニュース、ハードID(機種名、使用OS)などの
各種情報)を付属情報として、これを適宜の主要情報に
おいて分散記録するようにしてもよいことはいうまでも
ない。この場合には、図3から図6までの各処理におけ
る電子署名をこれらの各種電子情報に置き換えて処理す
ればよい。このようにして処理された電子情報(すなわ
ち付属情報)は、図7のように画面上に表示されるよう
になる。なお、このとき、付属情報を一連の纏まったフ
ァイル情報として検出してもよいし、自動演奏中にMI
DIデータから検出される電子情報の流れとして認識
し、それをリアルタイムに画面表示したりしてもよい。
この場合、付属情報が画像情報の場合には、MIDIデ
ータによってリアルタイムに画像が描画されるようにな
り、テキスト情報の場合には、ニュース配信などのよう
なリアルタイムな情報表示を行うことが可能となる。ま
た、付属情報を分散記録するための技術がシンプルであ
るため、オンデマンドなどで適宜の電子情報(すなわち
付属情報)を所要の主要情報内に埋め込むことができる
ので、TV放送などのようなリアルタイムな描画が可能
となる。また、インターネットや電子メールなどのID
やパスワードの配信にも利用することができる。
In the above-described embodiment, a description has been given of a case in which signature data relating to copyright is used as accessory information and distributed and recorded in the velocity portion of MIDI data. However, this is an example, and other authors Text information on the name, title of the song (title of the song), title of the image / video, etc., information on its data format, and various other electronic information (explanation of the song, information on the author, year of the lyrics, lyrics, news, hardware, etc.) It goes without saying that an ID (various information such as a model name and a used OS) may be used as attached information and distributed and recorded in appropriate main information. In this case, the electronic signature in each processing of FIGS. 3 to 6 may be replaced with such various types of electronic information. The electronic information (that is, attached information) processed in this manner is displayed on the screen as shown in FIG. At this time, the attached information may be detected as a series of integrated file information, or may be detected during the automatic performance.
It may be recognized as a flow of electronic information detected from the DI data and displayed on a screen in real time.
In this case, if the attached information is image information, an image is drawn in real time by MIDI data, and if it is text information, real-time information display such as news distribution can be performed. Become. In addition, since the technology for distributing and recording the attached information is simple, appropriate electronic information (that is, attached information) can be embedded in required main information on demand or the like. Rendering is possible. In addition, IDs such as the Internet and e-mail
And passwords.

【0037】上述の実施の形態では、各種電子情報(す
なわち付属情報)をMIDIデータのベロシティ部分
(すなわち主要情報)に分散記録する場合について説明
したが、この場合だと、MIDIデータ(すなわち主要
情報)自身が書き換えられてデータ値すなわちベロシテ
ィの値が全体的にシフトされたような場合、その付属情
報自体が消えてしまい再現することができなくなるとい
うおそれがある。そこで、MIDIデータ(すなわち主
要情報)自体が書き換えられたりしても、付属情報を抽
出することのできる実施の形態について、図8及び図9
に基づき、以下、説明する。この実施の形態では、MI
DIデータ(すなわち主要情報)における各データ単位
間の差分値をパラメータとして、付属情報を埋め込むた
めの演算アルゴリズムを実行することを特徴としてい
る。このように各データ単位間の差分値をパラメータと
することにより、各データ単位の値がシフト変更された
場合でも、その差分値には変化が生じないことになるの
で、埋め込まれた付属情報を適確に再生することができ
る。図8は、この実施の形態に係る差分アルゴリズムを
用いた情報記憶処理(付属情報付与処理)の一例を示す
フローチャートである。図9は、この差分アルゴリズム
を用いた情報記憶処理に従うデータ変換形態の具体例
と、変換されたデータから付属情報を再生する処理(検
出処理)に従うデータ再生形態の具体例を示す図、であ
る。付属情報を再生する処理(検出処理)のフローチャ
ート例については図示を省略するが、基本的には、上記
各実施例と同様に、記憶処理(付与処理)時の演算アル
ゴリズムに準じた所定の再生演算を行なうことによっ
て、付属情報の各ビットの抽出と再生を行なうことがで
きる。
In the above-described embodiment, a case has been described where various types of electronic information (ie, auxiliary information) are dispersedly recorded in the velocity portion (ie, main information) of MIDI data. If the data value, that is, the velocity value is shifted as a whole by rewriting itself, there is a possibility that the attached information itself disappears and cannot be reproduced. Therefore, an embodiment in which the additional information can be extracted even when the MIDI data (that is, the main information) itself is rewritten is described in FIGS.
The following is a description based on the above. In this embodiment, MI
An arithmetic algorithm for embedding additional information is executed by using a difference value between each data unit in DI data (that is, main information) as a parameter. By using the difference value between each data unit as a parameter as described above, even if the value of each data unit is shifted, the difference value does not change. It can be reproduced properly. FIG. 8 is a flowchart illustrating an example of information storage processing (additional information addition processing) using the difference algorithm according to the present embodiment. FIG. 9 is a diagram showing a specific example of a data conversion mode according to information storage processing using this difference algorithm and a specific example of a data reproduction mode according to processing (detection processing) for reproducing attached information from converted data. . Although a flowchart example of the processing (detection processing) for reproducing the attached information is omitted, basically, similar to the above-described embodiments, the predetermined reproduction based on the arithmetic algorithm at the time of the storage processing (addition processing) is performed. By performing the calculation, each bit of the attached information can be extracted and reproduced.

【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)のよ
うである。
In FIG. 8, in step 81, a key-on event data sequence SMF1 of main information (MIDI data in this example) into which the additional information (digital signature information in this example) is to be embedded is obtained. This is because the type of main information into which the additional information is embedded is a velocity byte portion as in the above-described embodiment. That is, similarly to the above, the MIDI data string (Standard MIDI
File: SMF), various MIDI data such as key-on event data, program change data, and control change data are sequentially extracted, and the extracted MIDI data is used as key-on event data KON.
Is determined, and a MIDI data string SMF1 including key-on event data is obtained. That is, MI
The DI data string basically consists of key-on event data including a key-on status byte, a key code byte, and a velocity byte, and other program change event data and control change event data. , The MIDI data string SMF1 of the key-on event data is extracted. The MIDI data string SMF1 of the key-on event data is composed of a combination of a duration time D and 3-byte key-on event data. A specific example of the key-on event data string SMF1 is as shown in FIG.

【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)が作成される。
Next, at step 82, a data string relating to ancillary information (in this example, an electronic signature, that is, the above-mentioned copyright display data) to be distributed and written in the key-on event data string SMF1 is obtained. Next, step 8
In step 3, one byte of the ASCII data string is stored in the byte register BR from the above-mentioned additional information data string (information added as an electronic signature). For example, “Y” = “59
H ”in the byte register BR,
“01011001B” = “89” as shown in FIG.
D ". Further, data indicating the bit length of the byte register BR (for example, “8
D "). In step 84, a value obtained by subtracting 1 from the value of the register j is stored in the register k. In step 85, the difference value between the key codes of the key code bytes of the successive key-on event data is calculated, stored in the key difference value register dkey, and the difference value between the velocities of the velocity bytes is calculated. It is stored in the difference value register dvel. Here, the value of the previous key-on event data is subtracted from the value of the subsequent key-on event data. That is, n is an ordinal number indicating the order of the event, and the velocity data VELn of the event order n is subtracted from the velocity data VELn + 1 of the next event order n + 1,
The resulting difference value is stored in a velocity difference value register dvel.
To be stored. Further, the key code data NOTEn in the event order n is subtracted from the key code data NOTEn + 1 in the next event order n + 1, and the resulting difference value is stored in the key difference value register dkey. As a result, the difference value data pair (dkey, dve) as shown in FIG.
1) is created.

【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」)と比較される。
At step 86, a predetermined function f (dkey, dkey) is added to the difference value data pair (dkey, dvel).
vel), and compares the value of the least significant bit LSB with the value of the k-th bit in the register BR. For example, this function f (dkey, dvel) consists of calculating the sum (dkey + dvel) of the key difference value dkey and the velocity difference value dvel.
FIG. 9C shows each difference value data pair (dkey, dve).
l) Key difference value dkey and velocity difference value dve for each
1 illustrates a total value (dkey + dvel) with 1; FIG. 9D shows the total value (dkey + dvel)
Indicates the value of the least significant bit LSB. The order k of the stored values of the byte register BR is k = 7 for the most significant bit and k = 0 for the least significant bit. The stored value “01011001B” of the byte register BR shown in FIG.
In the example of (1), the leftmost (most significant) bit “0” is initially set to k = 7, and the LSB of the total value (dkey + dvel) (“24D” in FIG. 9C) (in FIG. 9D) 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の処理を繰り返す。
If step 86 is NO, step 8
After the process of step 7, the process goes to step 88, but if step 86 is YES, step 87 is skipped and step 8
Go to 8. In step 87, the value of the velocity data VELn + 1 in the event order n + 1 is set to a predetermined odd number m (for example, m
= 1) to change the value of the velocity data VELn + 1 in the event order n + 1. That is, step 86
If the comparison result at step 86 does not match, the velocity data VELn + 1 is changed (addition of m) at step 87, but if the comparison result at step 86 matches, the velocity data VELn + 1 is not changed. Thus, the velocity data V in the key-on event data sequence SMF1
The change or non-change of EL is controlled according to the predetermined algorithm, and a change-controlled key-on event data string SMF2 as illustrated in FIG. 9F is obtained. Note that adding the odd number m means inverting the value of the least significant bit LSB. In other words, when the values do not match, the value of the least significant bit LSB is inverted to change to a matching state. Thus, each least significant bit LSB of the total value (dkey + dvel) for each difference value data pair in the key-on event data string SMF2 subjected to change control matches the value of each bit of the attached information. At step 88, the value of the register k is decreased by one. At step 89, the event order n is incremented by one and updated. Next, in step 90, it is determined whether or not the processing of the prepared key-on event data sequence SMF1 has been completed based on the updated event order n. If NO, go to step 91 and check if k <0. N
If it is O, the process returns to step 85, and the processes of steps 85 to 90 are repeated for the updated n and k.

【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))のように変更される。
By repeating the processing of steps 85 to 90 described above, the embedding processing of one byte of additional information (for example, “01011001B” in FIG. 9E) in the byte register BR is performed as follows. Will be First, FIG.
In the case of the data sequence SMF1 in (A), the total value (dkey + dve) for each difference value data pair (dkey, dvel)
As the data string of l), a data string "24, 22, 21, 28, 9, 41, 22, -1" as shown in FIG.
5 "are sequentially obtained. Here, the total value (dkey) of the difference value data pair (dkey, dvel) with the smaller event order
+ Dvel) and the least significant bit LSB (FIG. 9D) of the byte register BR are compared in order from the left side. If they are equal (YES), the next value is not changed without changing the velocity value of the key-on event data. Move on to the comparison between the right bits. If not equal (NO), an odd number m (for example, m = 1) is added to the velocity of the key-on event data on the rear side of the two key-on event data related to the bit, and the velocity value is changed. The bits on the right of are compared. In this way, n and k are updated and sequentially compared. As a result, in the case of the data example of FIG. 9, the least significant bit LSB of the total value of the second differential value data pair and the left of the byte register BR Since the second bits from are not equal to each other, "1" is added to the velocity "45" of the third key-on event data in the MIDI data string SMF1 related to the second bit, and the result is changed to "46". Here, when the velocity value of the third key-on event data is changed to “46”,
The second difference value data (dkey, dvel) is (14,
6), and the total value (dkey + dvel) is [2
0 ”. As a result, the least significant bit LSB of the total value of the third difference value data pair is changed to “0”. Next, the changed third least significant bit LSB is compared with the bits of the third byte register BR. As a result, the two bits are determined to be equal, and the process proceeds to the comparison processing of the fourth bit. In this way, when the comparison process and the process of adding “1” to the velocity are performed in order, “1” is also added to the fifth and sixth velocities. As a result of the above processing, the MIDI data string SMF1
The fifth velocity “45”, the fifth velocity “6”
"1" for 7 "and 6th velocity" 73 "respectively
Is added, and the MIDI data string SMF1 is changed to a MIDI data string SMF2 (FIG. 9F).

【0043】ステップ92では、未処理の付属情報が有
るか否かを調べ、有れば、ステップ83に戻り、次の付
属情報の1バイトをレジスタBRにセットする。そし
て、前述と同様のステップ83〜91の処理を繰り返
す。主要情報内に埋め込むべきすべての付属情報につい
て、上述の埋め込み処理を終了すると、ステップ92は
NOとなり、図8の処理を終了する。なお、主要情報内
に埋め込むべきすべての付属情報について上述の埋め込
み処理を終了する前に、ステップ90がYESとなった
場合は、未処理の付属情報を処理するために適切な処理
ステップ(図示せず)を付加してもよい。例えば、無発
音の擬似的なキーオンイベントデータ群を設定し、そこ
に未処理の付属情報を埋め込み処理するようにしてよ
い。
In step 92, it is checked whether or not there is unprocessed additional information. If there is, the process returns to step 83, and one byte of the next additional information is set in the register BR. Then, the processing of steps 83 to 91 similar to the above is repeated. When the above-described embedding processing is completed for all the additional information to be embedded in the main information, step 92 is NO, and the processing in FIG. 8 ends. If step 90 is YES before the above-described embedding process is completed for all the additional information to be embedded in the main information, appropriate processing steps (not shown) for processing the unprocessed additional information are performed. May be added. For example, a non-sounding pseudo key-on event data group may be set, and unprocessed additional information may be embedded therein.

【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のデー
タ値を、イベント順に再生バッファメモリに順次ストア
することにより、再生バッファメモリにおいて付属情報
を配列させて再生することができる。
As described above, the MIDI data string SMF2 that has been subjected to the processing for adding the additional information (embedding processing)
Is stored in an appropriate storage device or buffer circuit. In order to extract and reproduce each bit of the additional information from the MIDI data string SMF2 to which the additional information has been added (embedded), the MIDI data string SMF2 is read from a storage device or a buffer circuit, and is read in accordance with the above-described algorithm. Further, a predetermined reproduction operation may be performed. The reproduction processing procedure for that can be performed, for example, by the procedure as shown in FIG. That is, first, M
The IDI data string SMF2 is read to obtain a data string SMF2 from which an electronic signature (ie, attached information) is to be detected (step 93). Next, from the read MIDI data string SMF2, in the event order indicated by the value of the event order register n, the difference value data pair (dkey, d
vel) (step 94), and for each differential value data pair, a predetermined function f (dkey, dvel) is subjected to arithmetic processing, that is, total processing (dkey + dvel) (step 95), and the least significant bit LSB of each total value is calculated. Are extracted and sequentially stored in a predetermined reproduction buffer memory (step 96). Next, the value of the register n is incremented by 1, and the process returns to step 94 via NO in step 98, and the processes in steps 94, 95, and 96 are repeated. When all the attached information has been detected, step 98 becomes YES, and the process ends. As described above, each least significant bit LSB of the total value (dkey + dvel) for each difference value data pair in the key-on event data string SMF2 subjected to change control is:
Since the value of each bit of the attached information matches, the data value of the least significant bit LSB of each extracted total value is sequentially stored in the reproduction buffer memory in the order of events, so that the reproduction buffer memory Attached information can be arranged and reproduced.

【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に施すようにすればよい。
By the above processing, for example, FIG.
Based on the MIDI data sequence SMF2, a data sequence of difference value data pairs (dkey, dvel) as shown in FIG. 9G is obtained, and a predetermined function f
Processing of (dkey, dvel), that is, total processing (dkey
y + dvel) to obtain a total value data string as shown in FIG. It can be understood that the least significant bit LSB of each total value obtained in this manner is an electronic signature (that is, attached information) in which the least significant bit LSB is embedded, and the same one as shown in FIG. 9E is extracted and reproduced. In the above example, the difference value of the key code and the difference value of the velocity are respectively obtained, and the change calculation of the velocity is performed according to the comparison result of the LSB of the sum of the two and the attached information. Instead, only the difference value of the velocity may be obtained, and the change calculation of the velocity may be performed according to the comparison result between the LSB of the difference value and the attached information. As described above, according to this embodiment, since the embedding operation of the additional information for the velocity data is performed using the difference value of the velocity data as a parameter, the data is modified such that the entire velocity data is shifted. In such a case, by maintaining the difference value information, it is possible to prevent the embedded additional information from being altered. In this embodiment, the least significant bit LS of the function processing data shown in FIG.
When B is compared with the contents of the byte register BR of FIG. 9E, the bits are compared in order from the left side. If they are equal (YES), the bits on the next right side are compared and are not equal ( In the case of NO), an odd number m (for example, m = 1) is added to the velocity of the key-on event data on the rear side of the two key-on event data related to the bit, and the next right-side bits are compared. It is performed in a series of processing. Here, the value of the odd m to be added is
It is not limited to “1” but may be “3” or “5”.
Further, the present invention is not limited to adding the odd number m, and may be used to subtract it. Further, the value of the odd number m to be added or subtracted may not be a constant but may be changed appropriately. In addition, the comparison may be performed in order from the right bit. In short, it is not limited to the above embodiment,
As a result, various software processes are performed on the MIDI data string SMF so that the same processes as described above can be performed.
1 may be applied.

【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で乗算された場合でも、埋め
込んだ付属情報が改変される確率は非常に小さくなり、
付属情報の内容を保持することが可能となり、付属情報
の改変に対応することが可能となる。
In the electronic signature adding process 2 shown in FIG. 5, by changing the contents of the function process for each channel,
Even if edit processing that changes each information at once, for example, replacement of channel information or shift of key code, electronic signature from a channel that uses a function that is not related to data changed by edit Try to restore the data. 8 to 10, the difference between the key code and the velocity is calculated in the same manner.
The embedding process of the additional information can be performed repeatedly for each channel. For example, in FIG. 8, a case has been described in which a difference value is sequentially obtained for the MIDI data string SMF1 of the key-on event data, and additional information is sequentially added thereto, but a predetermined number is determined based on the magnitude of the difference value. (For example, three areas), and the same processing as in FIG. 8 may be performed between the classified areas. That is, the MI of the key-on event data
The DI data string is “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 ...
・]. In this case, the difference value of the velocity dvel is “3f, −6f, 6f, 0,
-5f, 30, 2f ... ". Here, the case where the magnitude of the difference value is 0 to 2f corresponds to the first region, 30 to 5f.
Is the second area, and the case of 60-7f is the third area. Therefore, the fourth and seventh difference values become the first area, the first and sixth difference values become the second area,
The third area is the third area. Ignore negative difference values. By subjecting the first to third areas classified in this way to the processing of providing the additional information similar to the above, the probability that all the additional information embedded in each area is modified is reduced by half. To the power, or 12.5 percent. This means that the probability that one least significant bit will remain is 8
7.5 percent. In this way, even when the entire data is multiplied by the coefficient a, the probability that the embedded additional information is altered becomes very small,
The content of the attached information can be held, and it is possible to cope with the modification of the attached information.

【0047】上記のすべての実施例に関連して、本発明
は、主要情報内に付属情報を組み込んで記憶するための
方法又は装置として構成することができ、さらには、そ
の方法を実施するためのプログラムを記録した記録媒体
として構成することができ、さらには、その方法に従っ
て記録されたデータ構造を持つデータを記憶した記録媒
体として構成することができる。更に、上記のすべての
実施例に関連して、本発明は、付属情報を組み込んで記
憶してなる主要情報から、該付属情報を抽出し再生する
ための方法又は装置として構成することができ、さらに
は、その方法を実施するためのプログラムを記録した記
録媒体として構成することができる。勿論、上記のすべ
ての実施例において、図2で電子楽器1として示された
装置は、汎用のパーソナルコンピュータによって置き換
えることができることは、前述の通りである。また、電
子楽器や楽音の合成/制御処理の分野に限らず、どのよ
うな電子情報を取り扱う分野ででも本発明を適用するこ
とができる。また、上記各実施例において、付属情報の
すべてを主要情報内に組み込む(埋め込む)ことなく、
付属情報の一部を主要情報内に組み込む(埋め込む)よ
うにしてもよいのは勿論である。その場合、主要情報内
に組み込まなかった残りの付属情報は、従来同様にヘッ
ダ部等の適当な領域に記憶しておいてもよい。上記のす
べての実施例に関連して、付属情報(第2の情報)を組
み込んだ状態からなる主要情報(第1の情報)を通信ネ
ットワークを介して伝送するようにしてもよい。その場
合、受信側では、通信ネットワークを介して伝送された
データを受信し、受信したデータにおける主要情報(第
1の情報)のデータのうちの特定のデータ単位から、複
数の小サイズのデータ片を再現し、再現された各データ
片により付属情報(第2の情報)を再生するようにすれ
ばよい。
In connection with all the above embodiments, the present invention can be configured as a method or an apparatus for incorporating and storing ancillary information in the main information, and further for implementing the method. Can be configured as a recording medium on which the program described above is recorded, and further, can be configured as a recording medium storing data having a data structure recorded according to the method. Further, in connection with all the above embodiments, the present invention can be configured as a method or an apparatus for extracting and reproducing the auxiliary information from the main information which incorporates and stores the auxiliary information, Further, it can be configured as a recording medium on which a program for executing the method is recorded. Of course, in all of the above embodiments, the device shown as the electronic musical instrument 1 in FIG. 2 can be replaced by a general-purpose personal computer as described above. In addition, the present invention is not limited to the field of electronic musical instruments and musical sound synthesis / control processing, but can be applied to the field of handling any kind of electronic information. Also, in each of the above embodiments, without embedding (embedding) all of the additional information in the main information,
Of course, a part of the attached information may be incorporated (embedded) in the main information. In this case, the remaining auxiliary information not incorporated in the main information may be stored in an appropriate area such as a header section as in the conventional case. In connection with all the above-described embodiments, main information (first information) in a state in which additional information (second information) is incorporated may be transmitted via a communication network. In this case, the receiving side receives the data transmitted via the communication network, and converts a plurality of small-size data fragments from a specific data unit of data of main information (first information) in the received data. May be reproduced, and the attached information (second information) may be reproduced by each reproduced data piece.

【0048】[0048]

【発明の効果】この発明によれば、音楽データ、映像デ
ータ又は波形データなどの主要情報の中に適宜の付属情
報を組み込んで記憶することができるので、付属情報の
不正な削除や改変を防ぐことができる、という優れた効
果を奏する。また、付属情報を組み込んだ主要情報の一
部が削除されたり変更された場合でも、付属情報を再現
することができる、という優れた効果を奏する。
According to the present invention, it is possible to incorporate and store appropriate auxiliary information in main information such as music data, video data or waveform data, thereby preventing unauthorized deletion or alteration of the auxiliary information. The effect is excellent. Further, even when a part of the main information incorporating the attached information is deleted or changed, an excellent effect that the attached information can be reproduced can be obtained.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 この発明に係る電子情報の記憶(付与)処理
及び再生(検出)処理におけるデータ変換形態の具体例
を示すデータ図。
FIG. 1 is a data diagram showing a specific example of a data conversion form in storage (addition) processing and reproduction (detection) processing of electronic information according to the present invention.

【図2】 この発明に係る電子情報処理システムとして
動作する電子楽器のハードウェア全体構成例を示すブロ
ック図。
FIG. 2 is a block diagram showing an example of the overall hardware configuration of an electronic musical instrument that operates as the electronic information processing system according to the present invention.

【図3】 図2のハードウェアを用いて実行される電子
署名付与処理(記憶処理)の一実施例を示すフローチャ
ート図。
FIG. 3 is an exemplary flowchart showing an example of an electronic signature adding process (storage process) executed using the hardware in FIG. 2;

【図4】 図3に従って記憶された情報から電子署名
(付属情報)を再生するための電子署名検出処理(再生
処理)の一実施例を示すフローチャート図。
FIG. 4 is a flowchart illustrating an example of an electronic signature detection process (reproduction process) for reproducing an electronic signature (attached information) from information stored according to FIG. 3;

【図5】 図2のハードウェアを用いて実行される電子
署名付与処理(記憶処理)の別の実施例を示すフローチ
ャート図。
FIG. 5 is a flowchart illustrating another example of an electronic signature adding process (storage process) performed using the hardware in FIG. 2;

【図6】 図5に従って記憶された情報から電子署名
(付属情報)を再生するための電子署名検出処理(再生
処理)の一実施例を示すフローチャート図。
FIG. 6 is a flowchart showing an embodiment of an electronic signature detection process (reproduction process) for reproducing an electronic signature (attached information) from information stored according to FIG.

【図7】 図2における表示回路において表示される表
示画面の一例を示す図。
FIG. 7 is a view showing an example of a display screen displayed on the display circuit in FIG. 2;

【図8】 図2のハードウェアを用いて実行される電子
署名付与処理(記憶処理)の更に別の実施例を示すフロ
ーチャート図。
FIG. 8 is a flowchart showing still another example of the electronic signature adding process (storage process) executed using the hardware in FIG. 2;

【図9】 図8に従う記憶処理及び図10に従う再生処
理におけるデータ変換形態の具体例を示すデータ図。
9 is a data diagram showing a specific example of a data conversion form in the storage processing according to FIG. 8 and the reproduction processing according to FIG. 10;

【図10】 図8に従って記憶された情報から電子署名
(付属情報)を再生するための電子署名検出処理(再生
処理)の一実施例を示すフローチャート図。
FIG. 10 is a flowchart showing one embodiment of an electronic signature detection process (reproduction process) for reproducing an electronic signature (attached information) from information stored according to FIG. 8;

【符号の説明】[Explanation of symbols]

1 電子楽器 21 CPU 22 ROM 23 RAM 24 音源 25 フロッピーディスクドライブ 26 鍵盤 27 パネルスイッチ 28 表示回路 29 データ及びアドレスバス DESCRIPTION OF SYMBOLS 1 Electronic musical instrument 21 CPU 22 ROM 23 RAM 24 Sound source 25 Floppy disk drive 26 Keyboard 27 Panel switch 28 Display circuit 29 Data and address bus

フロントページの続き (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)Continuation of the front page (56) References JP-A-9-186603 (JP, A) JP-A-8-199219 (JP, A) Proceedings of 1994 IEEE International Conference on Image Processing, Vol. 2, R. G. FIG. van Schyndel et al, "A Digital Watermark", p. 86-90, November 13-16, 1994, Austin, Texas, U.S.A. S. A Processeds of the 1996 International Conference on Multimedia Computing and Systems, Laurence Boney et al, "Digital Watermarks for Digital Services." 473-480, June 17-23, 1996, Hiroshima, Japan Proceedings of Fifth International Conference on Image Processing and It's Applications, FM. Borland et al., "Watermarking Digital Images for Copyright Protection", p. 326-330, 4-6 July 1995, IEEE Conference Publication No. 410 (58) Field surveyed (Int. Cl. 7 , DB name) G10H 1/00-7/12 G10K 15/02 G10L 19/00 H04L 9/00-9/38 G09C 1/00-5/00 IEEE / IEEE Electronic Library Online Inspec (Dialog) JICST File (JOIS) WPI (Dialog)

Claims (19)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 複数のイベントデータで構成される第1
の情報を入力するステップと、 第2の情報を入力するステップと、 前記イベントデータのうち少なくとも一部のイベントデ
ータの内容を前記第2の情報に基づいて変更することに
より前記第1の情報に前記第2の情報を分散して配置す
るステップと、 前記第2の情報が分散して配置された第1の情報を出力
するステップとからなる電子情報処理方法。
1. A first system comprising a plurality of event data.
Inputting the second information; inputting the second information; and changing the content of at least a part of the event data among the event data based on the second information. An electronic information processing method, comprising: distributing the second information; and outputting the first information in which the second information is distributed.
【請求項2】 それぞれ所定のパラメータを含む複数の
イベントデータで構成される第1の情報を入力するステ
ップと、 第2の情報を入力するステップと、 前記イベントデータのうち少なくとも一部のイベントデ
ータに含まれるパラメータを前記第2の情報に基づいて
変更することにより前記第1の情報に前記第2の情報を
分散して配置するステップと、 前記第2の情報が分散して配置された第1の情報を出力
するステップとからなる電子情報処理方法。
2. A step of inputting first information composed of a plurality of event data each including a predetermined parameter; a step of inputting second information; and at least a part of the event data of the event data Distributing and arranging the second information in the first information by changing a parameter included in the second information based on the second information; and 1) outputting information.
【請求項3】 それぞれ2以上のパラメータを含む複数
のイベントデータで構成される第1の情報を入力するス
テップと、 第2の情報を入力するステップと、 前記イベントデータのうち少なくとも一部のイベントデ
ータに含まれる2以上のパラメータの内容と前記第2の
情報に基づいて前記2以上のパラメータのうち少なくと
も一部を変更することにより前記第1の情報に前記第2
の情報を分散して配置するステップと、 前記第2の情報が分散して配置された第1の情報を出力
するステップとからなる電子情報処理方法。
3. A step of inputting first information composed of a plurality of event data each including two or more parameters, a step of inputting second information, and at least a part of the event data. By changing at least a part of the two or more parameters based on the content of two or more parameters included in the data and the second information, the second information is added to the first information.
And a step of outputting the first information in which the second information is distributed and arranged.
【請求項4】 それぞれ順序関係を有する複数のイベン
トデータで構成される第1の情報を入力するステップ
と、 第2の情報を入力するステップと、 前記イベントデータのうちの所定の順序関係にある複数
のイベントデータの関係と前記第2の情報に基づいて前
記所定の順序関係にある複数のイベントデータのうちい
ずれかの内容を変更することにより前記第1の情報に前
記第2の情報を分散して配置するステップと、 前記第2の情報が分散して配置された第1の情報を出力
するステップとからなる電子情報処理方法。
4. A step of inputting first information composed of a plurality of event data each having an order relation, a step of inputting second information, and a predetermined order relation of the event data. The second information is distributed to the first information by changing the content of any of the plurality of event data in the predetermined order relationship based on the relationship between the plurality of event data and the second information. An electronic information processing method, comprising: arranging the second information in a distributed manner; and outputting the first information in which the second information is dispersedly arranged.
【請求項5】 複数のイベントデータで構成される第1
の情報を入力するステップと、 前記イベントデータのうち少なくとも一部のイベントデ
ータに分散して配置された第2の情報を検出するととも
に当該分散して配置された第2の情報を抽出するステッ
プと、 前記抽出した第2の情報を出力するステップとからなる
電子情報処理方法。
5. A first system comprising a plurality of event data.
And detecting the second information distributed and arranged in at least a part of the event data among the event data, and extracting the second information distributed and arranged. Outputting the extracted second information.
【請求項6】 それぞれ所定のパラメータを含む複数の
イベントデータで構成される第1の情報を入力するステ
ップと、 前記イベントデータのうち少なくとも一部のイベントデ
ータに含まれるパラメータに分散して配置された第2の
情報を検出するとともに当該分散して配置された第2の
情報を抽出するステップと、 前記抽出した第2の情報を出力するステップとからなる
電子情報処理方法。
6. A step of inputting first information composed of a plurality of event data each including a predetermined parameter; and distributing and distributing parameters included in at least a part of the event data among the event data. An electronic information processing method, comprising: detecting the second information that has been extracted and extracting the second information that is distributed and arranged; and outputting the extracted second information.
【請求項7】 それぞれ2以上のパラメータを含む複数
のイベントデータで構成される第1の情報を入力するス
テップと、 前記イベントデータのうち少なくとも一部のイベントデ
ータに含まれる2以上のパラメータの内容に基づいて、
前記イベントデータに分散して配置された第2の情報を
検出するとともに当該分散して配置された第2の情報を
抽出するステップと、 前記抽出した第2の情報を出力するステップとからなる
電子情報処理方法。
7. A step of inputting first information composed of a plurality of event data each including two or more parameters, and contents of two or more parameters included in at least a part of the event data of the event data On the basis of the,
Detecting the second information dispersedly arranged in the event data and extracting the second information dispersedly arranged; and outputting the extracted second information. Information processing method.
【請求項8】 それぞれ順序関係を有する複数のイベン
トデータで構成される第1の情報を入力するステップ
と、 前記イベントデータのうち所定の順序関係にある複数の
イベントデータの内容に基づいて、前記所定の順序関係
にあるイベントデータのうちいずれか一方に分散して配
置された第2の情報を検出するとともに当該分散して配
置された第2の情報を抽出するステップと、 前記抽出した第2の情報を出力するステップとからなる
電子情報処理方法。
8. A step of inputting first information composed of a plurality of event data each having an order relation, and based on contents of the plurality of event data having a predetermined order relation among the event data. Detecting second information distributed and arranged in any one of the event data having a predetermined order relation, and extracting the second information distributed and arranged; And outputting information of the electronic information.
【請求項9】 複数のイベントデータで構成される第1
の情報を入力するステップと、 前記イベントデータのうち少なくとも一部のイベントデ
ータに分散して配置された第2の情報を検出するととも
に当該分散して配置された第2の情報を抽出するステッ
プと、 前記抽出した第2の情報の有意性を判断するステップ
と、 前記有意性の判断結果に応じて第1の情報の利用を許可
するか否かを制御するステップとからなる電子情報処理
方法。
9. A first system comprising a plurality of event data.
And detecting the second information distributed and arranged in at least a part of the event data among the event data, and extracting the second information distributed and arranged. An electronic information processing method comprising: determining a significance of the extracted second information; and controlling whether to permit use of the first information according to the determination result of the significance.
【請求項10】 請求項1乃至9のいずれかに記載の方
法をコンピュータに実行させるためのプログラムを記憶
した機械読み取り可能な記憶媒体。
10. A machine-readable storage medium storing a program for causing a computer to execute the method according to claim 1.
【請求項11】 複数のイベントデータで構成される第
1の情報を入力する手段と、 第2の情報を入力する手段と、 前記イベントデータのうち少なくとも一部のイベントデ
ータの内容を前記第2の情報に基づいて変更することに
より前記第1の情報に前記第2の情報を分散して配置す
る手段と、 前記第2の情報が分散して配置された第1の情報を出力
する手段とを具えた電子情報処理装置。
11. A means for inputting first information composed of a plurality of event data; a means for inputting second information; Means for distributing and arranging the second information in the first information by making a change based on the information of Electronic information processing device equipped with.
【請求項12】 それぞれ所定のパラメータを含む複数
のイベントデータで構成される第1の情報を入力する手
段と、 第2の情報を入力する手段と、 前記イベントデータのうち少なくとも一部のイベントデ
ータに含まれるパラメータを前記第2の情報に基づいて
変更することにより前記第1の情報に前記第2の情報を
分散して配置する手段と、 前記第2の情報が分散して配置された第1の情報を出力
する手段とを具えた電子情報処理装置。
12. A means for inputting first information composed of a plurality of event data each including a predetermined parameter; a means for inputting second information; and at least a part of event data of the event data Means for distributing and arranging the second information in the first information by changing a parameter included in the second information based on the second information; An electronic information processing apparatus comprising: means for outputting the first information.
【請求項13】 それぞれ2以上のパラメータを含む複
数のイベントデータで構成される第1の情報を入力する
手段と、 第2の情報を入力する手段と、 前記イベントデータのうち少なくとも一部のイベントデ
ータに含まれる2以上のパラメータの内容と前記第2の
情報に基づいて前記2以上のパラメータのうち少なくと
も一部を変更することにより前記第1の情報に前記第2
の情報を分散して配置する手段と、 前記第2の情報が分散して配置された第1の情報を出力
する手段とを具えた電子情報処理装置。
13. A means for inputting first information composed of a plurality of event data each including two or more parameters; a means for inputting second information; and at least a part of events of the event data By changing at least a part of the two or more parameters based on the content of two or more parameters included in the data and the second information, the second information is added to the first information.
An electronic information processing apparatus comprising: means for dispersing and arranging the first information; and means for outputting first information in which the second information is scattered.
【請求項14】 それぞれ順序関係を有する複数のイベ
ントデータで構成される第1の情報を入力する手段と、 第2の情報を入力する手段と、 前記イベントデータのうちの所定の順序関係にある複数
のイベントデータの関係と前記第2の情報に基づいて前
記所定の順序関係にある複数のイベントデータのうちい
ずれかの内容を変更することにより前記第1の情報に前
記第2の情報を分散して配置する手段と、 前記第2の情報が分散して配置された第1の情報を出力
する手段とを具えた電子情報処理装置。
14. A means for inputting first information composed of a plurality of event data each having an order relationship, a means for inputting second information, and a predetermined order relationship among the event data. The second information is distributed to the first information by changing the content of any of the plurality of event data in the predetermined order relationship based on the relationship between the plurality of event data and the second information. An electronic information processing apparatus comprising: means for arranging the first information; and means for outputting the first information in which the second information is distributed.
【請求項15】 複数のイベントデータで構成される第
1の情報を入力する手段と、 前記イベントデータのうち少なくとも一部のイベントデ
ータに分散して配置された第2の情報を検出するととも
に当該分散して配置された第2の情報を抽出する手段
と、 前記抽出した第2の情報を出力する手段とを具えた電子
情報処理装置。
15. A means for inputting first information composed of a plurality of event data, detecting second information distributed in at least a part of the event data among the event data and detecting the second information. An electronic information processing apparatus comprising: means for extracting second information distributed and arranged; and means for outputting the extracted second information.
【請求項16】 それぞれ所定のパラメータを含む複数
のイベントデータで構成される第1の情報を入力する手
段と、 前記イベントデータのうち少なくとも一部のイベントデ
ータに含まれるパラメータに分散して配置された第2の
情報を検出するとともに当該分散して配置された第2の
情報を抽出する手段と、 前記抽出した第2の情報を出力する手段とを具えた電子
情報処理装置。
16. A means for inputting first information composed of a plurality of event data each including a predetermined parameter, and distributed and arranged in parameters included in at least a part of the event data among the event data. An electronic information processing apparatus, comprising: means for detecting the second information and extracting the second information distributed and arranged; and means for outputting the extracted second information.
【請求項17】 それぞれ2以上のパラメータを含む複
数のイベントデータで構成される第1の情報を入力する
手段と、 前記イベントデータのうち少なくとも一部のイベントデ
ータに含まれる2以上のパラメータの内容に基づいて、
前記イベントデータに分散して配置された第2の情報を
検出するとともに当該分散して配置された第2の情報を
抽出する手段と、 前記抽出した第2の情報を出力する手段とを具えた電子
情報処理装置。
17. A means for inputting first information composed of a plurality of event data each including two or more parameters, and contents of two or more parameters included in at least a part of the event data of the event data On the basis of the,
Means for detecting second information distributed in the event data and extracting second information distributed in the event data; and means for outputting the extracted second information. Electronic information processing device.
【請求項18】 それぞれ順序関係を有する複数のイベ
ントデータで構成される第1の情報を入力する手段と、 前記イベントデータのうち所定の順序関係にある複数の
イベントデータの内容に基づいて、前記所定の順序関係
にあるイベントデータのうちいずれか一方に分散して配
置された第2の情報を検出するとともに当該分散して配
置された第2の情報を抽出する手段と、 前記抽出した第2の情報を出力する手段とを具えた電子
情報処理装置。
18. A means for inputting first information composed of a plurality of event data each having an order relationship, wherein the first information is configured based on the contents of a plurality of event data having a predetermined order relationship among the event data. Means for detecting second information distributed and arranged in any one of the event data having a predetermined order and extracting the second information distributed and arranged; An electronic information processing apparatus comprising: means for outputting information of the electronic information.
【請求項19】 複数のイベントデータで構成される第
1の情報を入力する手段と、 前記イベントデータのうち少なくとも一部のイベントデ
ータに分散して配置された第2の情報を検出するととも
に当該分散して配置された第2の情報を抽出する手段
と、 前記抽出した第2の情報の有意性を判断する手段と、 前記有意性の判断結果に応じて第1の情報の利用を許可
するか否かを制御する手段とを具えた電子情報処理装
置。
19. A means for inputting first information composed of a plurality of event data, and detecting and detecting second information distributed in at least a part of the event data among the event data. Means for extracting second information distributed and arranged; means for determining the significance of the extracted second information; and permitting use of the first information in accordance with the result of the significance determination. An electronic information processing apparatus comprising:
JP19312897A 1996-07-02 1997-07-02 Electronic information processing system and method, and recording medium Expired - Fee Related JP3178378B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19312897A JP3178378B2 (en) 1996-07-02 1997-07-02 Electronic information processing system and method, and recording medium

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP19152896 1996-07-02
JP14861297 1997-05-22
JP8-191528 1997-05-22
JP9-148612 1997-05-22
JP19312897A JP3178378B2 (en) 1996-07-02 1997-07-02 Electronic information processing system and method, and recording medium

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2001036206A Division JP4304870B2 (en) 1996-07-02 2001-02-13 Electronic information processing method and apparatus, and recording medium

Publications (2)

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

Family

ID=27319586

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19312897A Expired - Fee Related JP3178378B2 (en) 1996-07-02 1997-07-02 Electronic information processing system and method, and recording medium

Country Status (1)

Country Link
JP (1) JP3178378B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3178463B2 (en) 1999-08-31 2001-06-18 ヤマハ株式会社 Electronic information processing method and system, and recording medium
JP2001344894A (en) * 2000-05-31 2001-12-14 Sony Corp Data recording medium, data recording method and device, data reproduction method and device
JP2002202787A (en) * 2000-12-28 2002-07-19 Sony Corp Contents data, recording medium, data recording method and apparatus, data transmission method and apparatus, data output method and apparatus, data reproducing method and apparatus, data receiving method and apparatus
JP4635367B2 (en) * 2001-04-16 2011-02-23 ソニー株式会社 Recording method, recording apparatus, reproducing method, and reproducing apparatus
JP4689873B2 (en) * 2001-05-23 2011-05-25 Necエンジニアリング株式会社 Signal embedding method and apparatus
JP4790216B2 (en) * 2001-12-21 2011-10-12 ソニー デーアーデーツェー オーストリア アクチェンゲゼルシャフト Recording media with different waiting times
JP4973417B2 (en) * 2007-09-26 2012-07-11 大日本印刷株式会社 Information embedding device for sound signal and device for extracting information from sound signal
JP5737099B2 (en) * 2011-09-14 2015-06-17 ヤマハ株式会社 Electronic musical instrument system

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 (en) 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 (en) Protected digital file delivery method
US7612276B2 (en) Method and system for synthesizing electronic transparent audio
JP3178378B2 (en) Electronic information processing system and method, and recording medium
JP4304870B2 (en) Electronic information processing method and apparatus, and recording medium
US20060027078A1 (en) Scrambling method of music sequence data for incompatible sound generator
JP3180788B2 (en) Apparatus and method for providing and detecting electronic information
JP3180789B2 (en) Electronic information processing method and apparatus
US7102071B2 (en) Apparatus and method for processing tone reproducing digital data against unauthorized use
Lee Issues surrounding the preservation of digital music documents
JP4370725B2 (en) Electronic information processing method and apparatus
JP3870700B2 (en) Electronic information processing method and apparatus
JP3658279B2 (en) Digital watermark creation method
GB2354860A (en) Storing music information with associated additional information incorporated therein
US7795526B2 (en) Apparatus and method for reproducing MIDI file
JP2005338126A (en) Device, method, and program for editing musical performance data
JP2000092042A (en) Music data service system and music data decoder
JPH0773320A (en) Image music generator
JP2003140650A (en) Electronic watermarking method
JPH08292770A (en) Electronic musical instrument

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