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

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

Info

Publication number
JP3178463B2
JP3178463B2 JP24682199A JP24682199A JP3178463B2 JP 3178463 B2 JP3178463 B2 JP 3178463B2 JP 24682199 A JP24682199 A JP 24682199A JP 24682199 A JP24682199 A JP 24682199A JP 3178463 B2 JP3178463 B2 JP 3178463B2
Authority
JP
Japan
Prior art keywords
information
data
electronic
key
decoding
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
JP24682199A
Other languages
English (en)
Other versions
JP2001075559A (ja
Inventor
秀昭 樽口
重雄 角田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP24682199A priority Critical patent/JP3178463B2/ja
Priority to US09/644,090 priority patent/US6359573B1/en
Publication of JP2001075559A publication Critical patent/JP2001075559A/ja
Application granted granted Critical
Publication of JP3178463B2 publication Critical patent/JP3178463B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00572Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which change the format of the recording medium
    • G11B20/00615Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which change the format of the recording medium said format change concerning the logical format of the recording medium, e.g. the structure of sectors, blocks, or frames
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/0033Recording/reproducing or transmission of music for electrophonic musical instruments
    • G10H1/0041Recording/reproducing or transmission of music for electrophonic musical instruments in coded form
    • G10H1/0058Transmission between separate instruments or between individual components of a musical system
    • G10H1/0066Transmission between separate instruments or between individual components of a musical system using a MIDI interface
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/018Audio watermarking, i.e. embedding inaudible data in the audio signal
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00884Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a watermark, i.e. a barely perceptible transformation of the original data which can nevertheless be recognised by an algorithm
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/011Files or data streams containing coded musical information, e.g. for transmission
    • G10H2240/041File watermark, i.e. embedding a hidden code in an electrophonic musical instrument file or stream for identification or authentification purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)
  • Television Systems (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Storage Device Security (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、主要情報(例え
ば、演奏データ、映像データ、波形データなど)中に、
付属情報(例えば、著作権表示情報、曲名情報、作曲者
情報、作成年月日情報、歌詞情報、ニュース文情報、機
種名情報、IDなどのテキストデータ)を電子的透し情
報として埋め込む、及び/又は主要情報中に電子的透し
情報として埋込まれた付属情報を取出す電子情報処理方
法及びシステムに関し、更にはこの方法を実現するため
のプログラムを記録したコンピュータ読取り可能な記録
媒体に関する。
【0002】
【従来の技術】従来から、例えば特開平11−3979
6号公報に示されているように、主要情報としての演奏
データの一部を構成するベロシティデータの最下位ビッ
トに、曲名、作曲者等に関する付属情報を埋め込むとと
もに、同付属情報の埋め込まれた演奏データから付属情
報を取り出すことは知られている。
【0003】
【発明が解決しようとする課題】しかし、上記従来の方
法では、付属情報の埋め込み法が比較的単純なために、
オーソライズされていない不正利用者によって同方法が
見破られて付属情報が意図的に変更されてしまうという
問題があった。また、ベロシティデータは比較的変更さ
れやすいデータの一つであるために、正当利用者が演奏
データそのものを編集する際などにベロシティデータを
変更することにより、該ベロシティデータに埋め込まれ
た付属情報が無意識のうちに変更されてしまうことが起
こり得るという問題もあった。
【0004】本発明は上述の点に鑑みてなされたもの
で、主要情報に対する付属情報の埋め込み法に工夫を施
したユニークな電子情報処理方法及びシステム並びに記
録媒体を提供しようとするものである。更に、オーソラ
イズされていない不正利用者によって見破られることの
起こりにくい、従って、不正利用者による意図的な改竄
のしにくい、電子情報処理方法及びシステム並びに記録
媒体を提供しようとするものである。また、正当利用者
による無意識のうちの付属情報の変更も起こりにくいよ
うにした電子情報処理方法及びシステム並びに記録媒体
を提供しようとするものである。
【0005】
【課題を解決するための手段】 第1の観点に従う本発
明に係る方法は、複数のデータからなる主要情報の中に
付属情報を電子的透しとして埋め込む電子情報処理方法
であって、所定のエンコードアルゴリズムに従って、前
記主要情報におけるデータの配置または順序を前記付属
情報の値に応じて変更するステップを具備し、前記主要
情報におけるデータの配置または順序の形態で前記付属
情報の電子的透しを埋め込むことを特徴とするものであ
る。
【0006】更に本発明に係る方法は、上記第1の観点
に従って電子的透しが埋め込まれた主要情報から前記付
属情報をデコードする電子情報処理方法であって、前記
エンコードアルゴリズムに対応するデコード用カギ情報
を提供するステップと、前記提供されたカギ情報に基づ
き前記エンコードアルゴリズムの逆算を行うことで、前
記主要情報におけるデータの配置または順序に隠されて
いた前記付属情報をデコードするステップとを具備する
ことを特徴とする。
【0007】上記第1の観点に従う本発明によれば、主
要情報におけるデータそれ自体の値を変更することな
く、該データの配置または順序の形態で付属情報の電子
的透しを埋め込むことが特徴であり、これによって、主
要情報のデータ値の変更がなく、主要情報の再生が確実
となる。一実施例によれば、前記主要情報が複数のチャ
ンネルの音楽演奏データであり、該主要情報におけるデ
ータの配置または順序の変更は、該音楽演奏データのチ
ャンネルを変更することからなる。主要情報におけるオ
リジナルのチャンネル配置を変更したとしても、発生さ
れる楽音それ自体に変更は加えられないため、音楽演奏
の再生を問題なく行うことができる。その一方で、チャ
ンネル配置に隠された情報が何であるかは、適切なカギ
情報が与えられない限り、容易には判らないので、不正
利用者による情報改竄防止に役立つ。音楽演奏データに
おけるチャンネル配置変更は、一般的な演奏データ編集
操作では余り行われるものではないため、無意識的に付
属情報を変更することも起こりにくい。チャンネル配置
に限らず、そのデータ配置又は順序の変更が当該音楽演
奏データに基づく音楽の再生に実質的に悪影響を与えな
いファクタについて、そのデータ配置又は順序の変更を
施すようにしてよい。
【0008】
【0009】
【0010】
【0011】 第の観点に従う本発明に係る方法は、
音楽演奏データからなる主要情報の中に付属情報を電子
的透しとして埋め込む電子情報処理方法であって、前記
音楽演奏データは、個々の演奏データのステータスを示
すステータス情報を含み、当該ステータスの使用/不使
用が音楽演奏の遂行に重大な影響を与えない特定のステ
ータスを使用するか否かを操作するステップを具備し、
該特定のステータスの使用/不使用に応じた1ビットの
電子的透しを埋め込むことを特徴とする。当該ステータ
スの使用/不使用が音楽演奏の遂行に重大な影響を与え
ない特定のステータスとは、例えば、MIDIのランニ
ングステータスがある。MIDIのランニングステータ
スとは、演奏シーケンスの中の或るイベントのステータ
スがその直前のイベントのステータスと同じ場合はステ
ータス情報を省略できるので、そのようにステータス情
報を省略した状態を指す。よって、ステータス情報が省
略されている場合はランニングステータスを使用してお
り、ランニングステータスが使用できる箇所でステータ
ス情報が省略されていない場合は該ランニングステータ
スが不使用である。このランニングステータスの使用/
不使用は音楽演奏の遂行に影響を与えないので、この特
定のステータスの使用/不使用に応じて音楽演奏に悪影
響を与えることなく、1ビットの電子的透しを埋め込む
ことができる。これにより、電子的透し情報の埋め込み
形態を多様にすることができ、見破られにくい複雑なエ
ンコード化処理のために役立つ。
【0012】
【0013】
【0014】 第の観点に従う本発明に係る方法は、
音楽演奏データからなる主要情報の中に付属情報を電子
的透しとして埋め込む電子情報処理方法であって、前記
音楽演奏データのうちの所定のデータについての統計分
布パターンを所定のエンコードアルゴリズムに従って変
更するステップを具備し、前記統計分布パターンの変更
形態に対応した電子的透しを埋め込むことを特徴とす
る。この場合は、所定の演奏データについての統計分布
パターンを変更する構成であるため、仮に意図的である
にせよ、または無意識であるにせよ、演奏データの一部
が改竄または編集によって変更されたとしても、統計分
布パターンが大きく変わる確率は相対的に低いので、不
正利用者による情報改竄防止に役立つと共に、正当利用
者による無意識的に付属情報の変更にも対処しうるもの
である。また、電子的透し情報の埋め込み形態を多様に
することができ、見破られにくい複雑なエンコード化処
理のために役立つ。
【0015】 第の観点に従う本発明に係る方法は、
主要情報の中に付属情報を電子的透しとして埋め込む電
子情報処理方法であって、1つの付属情報に関連して複
数の電子的透し情報を前記主要情報に埋め込むステップ
を具備し、互いに関連する複数の電子的透し情報の形態
で1つの付属情報の電子的透しを埋め込むことを特徴と
する。これによって、電子的透しの強化を図ることがで
き、容易には見破られにくい複雑なエンコード化処理の
ために役立つ。付与可能な1つの付属情報のビット数を
増すことができ、付与可能な付属情報の情報量を増すこ
とができる。
【0016】一例として、1つの付属情報を複数の部分
に分割してなる各分割付属情報部分毎に、各々の電子的
透し情報を前記主要情報に埋め込む。この場合、付属情
報の再生は、主要情報から複数の電子的透し情報をそれ
ぞれデコードし、デコードされた各透し情報に対応する
前記分割付属情報部分を組み合わせることで行う。
【0017】別の例として、所定の第1のエンコードア
ルゴリズムに従って付属情報の少なくとも一部を第1の
電子的透し情報として前記主要情報に埋め込む一方で、
第1のエンコードアルゴリズムに対応するデコード用カ
ギ情報を第2の電子的透し情報として前記主要情報に埋
め込む。この場合、付属情報の再生は、主要情報から前
記第2の電子的透し情報をデコードし、デコードされた
第2の電子的透し情報をデコード用カギ情報として使用
して前記主要情報から前記第1の電子的透し情報をデコ
ードすることで行う。
【0018】本発明は、方法の発明として実施すること
ができるのみならず、システムまたは装置の発明として
実施することができるし、この方法を実現するためのプ
ログラムを記録したコンピュータ読取り可能な記録媒体
の発明として実施することもできる。また、この方法に
従って電子的透しを埋め込んだデータを記録してなるコ
ンピュータ読取り可能な記録媒体の発明として実施する
こともできる。
【0019】
【発明の実施の形態】以下、本発明の実施の形態を図面
を用いて説明する。まず、各実施形態に共通のハード構
成について説明すると、図1は、同ハード構成に係るパ
ーソナルコンピュータをブロック図により示している。
【0020】パーソナルコンピュータ装置は、マイクロ
コンピュータ本体を構成するCPU11、ROM12及
びRAM13を備えている。CPU11は、プログラム
を実行するものである。ROM12は、OS等の基本的
なプログラムを記憶しておくための記憶エリアである。
RAM13は、アプリケーションプログラム等を記憶し
たり、プログラムの実行に必要な変数を記憶したりする
ための記憶エリアである。これらのCPU11、ROM
12及びRAM13はバス10に接続されており、同バ
ス10には、内部記憶装置14、ドライブユニット1
5、入力装置16及び表示器17も接続されている。
【0021】内部記憶装置14は、ハードディスク、同
ディスクのためのドライブ装置などで構成されており、
大容量のメモリ装置として機能する。ドライブユニット
15は、外部記録媒体としてのコンパクトディスク、フ
レキシブルディスクなどが装着されるようになってお
り、同外部記録媒体に対してプログラム及びデータの読
出し及び書込みを行うものである。入力装置16は、複
数の操作子により構成されるキーボード、マウス等など
からなり、外部からの指示、データなどを入力するもの
である。表示器17は、文字、数字などを画面に表示す
るものである。
【0022】また、バス10には、通信インターフェー
ス21及び音源回路22も接続されている。通信インタ
ーフェース21は、外部の各種機器とケーブル、電話回
線などを介してデータ、プログラムなどの授受を行うも
ので、特にMIDI(Musical Instrument Digital Int
erface)データの授受を行うインターフェース回路を含
んでいる。勿論、MIDIデータに限らずその他の任意
のフォーマットのデータを、通信インターフェース21
を介して授受することが可能である。音源回路22は、
楽音信号を形成して出力する複数の音源チャンネル(本
実施形態ではチャンネル番号0〜15の16個のチャン
ネルを使用するものとする)を有しており、各音源チャ
ンネルは、バス10を介して供給されるキーコードK
C、キーオン信号KON、キーオフ信号KOF、各楽音
制御パラメータ等の演奏データにしたがって種々の音高
を有する各種音色の楽音信号を形成し、左右のオーディ
オチャンネルに分けてそれぞれ出力する。また、各音源
チャンネルは、複数の楽音信号を時分割で合成して出力
することがそれぞれ可能である。ただし、一部の音源チ
ャンネル(本実施形態ではチャンネル番号9の音源チャ
ンネル)は種々の打楽器音信号を合成するために設けら
れていて、この音源チャンネルにはキーコードKCに代
えて打楽器番号が供給されるようになっている。この音
源回路22には、左右のオーディオアンプ23a,23
bを介して左右のオーディオスピーカ24a,24bが
それぞれ接続されている。
【0023】次に、各実施形態に共通の動作について説
明しておく。ユーザは、各実施形態に係るアプリケーシ
ョンプログラムとしての「エンコードプログラム」及び
「デコードプログラム」を記録したコンパクトディス
ク、フレキシブルディスクなどの記録媒体を準備し、同
記録媒体をドライブユニット15に装着して「エンコー
ドプログラム」及び「デコードプログラム」を内部記憶
装置14に記憶させる。また、通信インターフェース2
1を介して「エンコードプログラム」及び「デコードプ
ログラム」を内部記憶装置14に記憶させてもよい。
【0024】そして、「エンコードプログラム」を起動
させると、パーソナルコンピュータ装置は、図2(A)に
示すようなエンコーダ30Aとして機能する。エンコー
ダ30Aは、付属情報Y及びカギ情報KEYを外部から
入力し、与えられた主要情報(本件各実施形態では演奏
データ)をカギ情報KEYにしたがって加工することに
より、付属情報Yを透し情報として主要情報中に埋め込
んで出力する。この主要情報内への付属情報Y(透し情
報)の埋込処理は、通信インターフェース21を介して
ストリーミングデータ形式でリアルタイムに供給される
主要情報に対してリアルタイムで施すようにしてもよい
し、あるいはRAM13又は内部記憶装置14に予め記
憶されている主要情報(あるいは外部記録媒体に記録さ
れているものをドライブユニット15を介して読み込ん
だ主要情報)に対して非リアルタイムで施すようにして
もよい。
【0025】「デコードプログラム」を起動させると、
パーソナルコンピュータ装置は、図2(B)に示すような
デコーダ30Bとして機能する。デコーダ30Bは、カ
ギ情報KEYを外部から入力し、同カギ情報KEYを用
いることにより、前記透し情報として付属情報Yの埋込
まれた主要情報(本件実施形態では演奏データ)から付
属情報Yを取り出して出力する。この透し埋込済みの主
要情報からの付属情報Y(透し情報)のデコード処理
も、通信インターフェース21を介してストリーミング
データ形式でリアルタイムに供給される主要情報に対し
てリアルタイムで施すようにしてもよいし、あるいはR
AM13又は内部記憶装置14に予め記憶されている主
要情報(あるいは外部記録媒体に記録されているものを
ドライブユニット15を介して読み込んだ主要情報)に
対して非リアルタイムで施すようにしてもよい。
【0026】また、後述する各実施形態では、パーソナ
ルコンピュータを用いてエンコード機能及びデコード機
能を実現するようにしたが、同エンコード機能及びデコ
ード機能を実現するプログラムをロード可能なマイクロ
コンピュータ装置を内蔵したものであれば、音源装置、
電子楽器用キーボード装置、シーケンサ、MIDIファ
イラー、サンプラー、又はこれらの複数を含む電子楽器
システムにも適用できるものである。また、後述する各
実施形態では、演奏データ中に付属情報Yを埋込むこと
についてのみ説明するが、本発明は演奏データ以外に
も、波形データ、映像データなどの他のデータに埋込む
場合にも適用できるものである。 〔第1実施形態〕次に、本発明の第1実施形態について
説明する。この第1実施形態は、カギ情報KEYに応じ
て演奏データにおけるデータ配置を再配置又はデータの
順序を変更するタイプのものに属する。
【0027】演奏データに対する付属情報Yの埋込み
(エンコード)及び演奏データから付属情報Yの取出し
(デコード)の説明の前に、付属情報Yを埋込む前の演
奏データのフォーマット例について説明しておく。1つ
の音楽演奏に対応する演奏データとしては、図3に示す
ように、音源チャンネル0〜15(ch0〜ch15)
にそれぞれ対応した16チャンネル分の演奏データ0〜
15が用意される。すなわち、16チャンネルポリフォ
ニックの自動演奏シーケンスデータである。勿論、必ず
しも16チャンネル分の全ての演奏データ0〜15を使
用する必要はなく、一部の音源チャンネル用の演奏デー
タだけを使用してもよい(例えば音源チャンネル0〜1
0だけを使用して合計用の11チャンネル分の演奏デー
タ0〜10だけを用意する)。この実施例において、音
源チャンネル0〜8,10〜15(ch0〜ch8,c
h10〜ch15)は、前述のように、種々の音高を有
する各種音色の楽音信号を合成するものであるので、演
奏データ0〜8,10〜15は共通のフォーマットであ
る。しかし、音源チャンネル9(ch9)は打楽器信号
を合成するものとしているので、演奏データ9のフォー
マットは他と異なる。本実施形態では、このch9の演
奏データ9は透し情報を埋め込む対象としないので、同
演奏データ9に関してはこれ以上の説明を省略する。
【0028】各音源チャンネル0〜8,10〜15(c
h0〜ch8,ch10〜ch15)に対応して記憶さ
れる演奏データ0〜8,10〜15のフォーマットの一
例を図3を参照して説明すると、これらの演奏データの
フォーマットは、データ列の先頭位置に設けた音源設定
情報と、音源設定情報に続いて設けた演奏イベント情報
とからなる。音源設定情報は、音源チャンネルの初期の
音色、音量、音像位置、エクスプレションペダル位置
(これも音量を制御)及び減衰時間(単に減衰時間の長
短のみを示す場合もある)をそれぞれ制御するための音
色番号データTCN、ボリュームデータVOL、パンデ
ータPAN、エクスプレッションデータEXP及びダン
プデータDMPを含む。例えば、音色番号データTCN
の一例を示すと、同データTCNは、ピアノ、ギター等
の各種音色を「0」以上の異なる整数によって表すもの
である。
【0029】演奏イベント情報は、各楽音の発音開始、
発音終了などのイベントを表すイベントデータEVT
と、各イベント間のインターバル(相対時間)を表すイ
ンターバルデータΔTとからなる。各イベントデータE
VTは、楽音の音名(例えばC2,E2など)を表すキ
ーコードKC、楽音の発音開始及び発音終了を表すオン
・オフデータON/OFF、鍵タッチの強さを表すベロ
シティデータVELなどを一組とするものである。な
お、同一のタイミングに複数のイベントが発生する場合
には、複数のイベントデータEVTが連続して書き込ま
れている。
【0030】そして、このような演奏データの再生につ
いて簡単に説明しておく。図示しないプログラムの実行
により、最初、音源設定情報を構成する音色番号データ
TCN、ボリュームデータVOL、パンデータPAN、
エクスプレッションデータEXP及びダンプデータDM
Pが順次読出されて音源回路22の該当音源チャンネル
に出力される。音源回路22の該当音源チャンネルは、
前記各データに応じて、同チャンネルにおいて発生され
る楽音信号の初期の音色、音量、音像位置、エクスプレ
ッションペダル位置及び減衰時間を設定する。次に、演
奏イベント情報が順次読出される。この場合、次のイン
ターバルデータΔTが見つかるまで、イベントデータE
VTの読出しを続け(次のインターバルデータΔTが見
つかるまでに複数組のイベントデータEVTがあれば複
数組分のイベントデータEVTを読出し)、同読出した
イベントデータEVTを音源回路22の該当音源チャン
ネルに出力する。そして、次のインターバルデータΔT
によって表された時間の計数が終了するまで、演奏イベ
ント情報の読出しを中断し、同計数が終了した時点で次
の演奏イベント情報の読出しを再開する。したがって、
イベントデータEVTは、インターバルデータΔTによ
って表された時間毎に、順次読出されて音源回路22の
該当音源チャンネルに供給される。
【0031】音源回路22の該当音源チャンネルにおい
ては、供給されたイベントデータEVTのうちのキーコ
ードKCによって決定された音高の楽音信号を合成す
る。この合成される楽音信号の発音開始及び発音終了
は、前記供給されたイベントデータEVTのうちのオン
・オフデータON/OFFにより制御され、個々の音量
は同イベントデータEVTのうちのベロシティデータV
ELによって制御される。また、前記のように合成され
た各楽音信号の音色、総合的な音量、音像位置、エクス
プレッションペダルによる音量及び減衰時間は、前記音
源設定情報を構成する音色番号データTCN、ボリュー
ムデータVOL、パンデータPAN、エクスプレッショ
ンデータEXP及びダンプデータDMPによってそれぞ
れ制御される。ただし、これらデータTCN、VOL、
PAN、EXP、DMPのいずれかが演奏データに含ま
れていて、同いずれかのデータが演奏イベント情報の読
出し中に読出された場合には、同読出しの時点から、前
記各楽音信号の音色、総合的な音量、音像位置、エクス
プレッションペダルによる音量及び減衰時間は、前記演
奏イベント情報の読出し中に読出されたいずれかのデー
タにしたがう。
【0032】なお、図3は演奏データフォーマットを概
念的に示したものであり、詳細なデータフォーマット
は、各種の公知の音楽演奏データフォーマットに従う。
例えば、各音源チャンネル別に演奏データ記録トラック
をそれぞれ有する在来型の自動演奏シーケンスのフォー
マットからなる場合は、複数の音源チャンネルに対応し
てそれぞれ演奏データ記録トラックが存在し、音源チャ
ンネルと記録トラックとが1対1で対応する。よって、
その場合は、演奏データのチャンネル配置の変更は、或
る音源チャンネルの記録トラックで記憶されている演奏
データを別の音源チャンネルの記録トラックに移し替え
るか、あるいは音源チャンネルと記録トラックの対応づ
けを変更する(或る記録トラックに対応づけられるチャ
ンネル番号を別のチャンネル番号に変更する)ことによ
って行われる。また、MIDIメッセージのようにステ
ータスバイトにチャンネル番号をデータとして含むフォ
ーマットからなる場合は、複数の音源チャンネルの演奏
データ(MIDIデータ)は記録トラック別に分かれて
いるというよりはむしろ混在しており、その場合は、演
奏データのチャンネル配置の変更は、ステータスバイト
中のチャンネル番号を変更することによって行われる。
【0033】次に、演奏データに対する付属情報Yの埋
め込み(エンコード)処理の一例について図4を参照し
て説明する。図4は、演奏データのチャンネル配置を変
更することで、所望の付属情報に対応する透し情報を埋
め込む例を示している。また、演奏データのチャンネル
配置を変更するエンコードアルゴリズムにおける1つの
「カギ」として、音色情報を用いる。すなわち、音色情
報に関連づけて演奏データのチャンネル配置を変更する
エンコードアルゴリズムを採用するものとする。勿論、
エンコードアルゴリズムはこれに限らず、適宜設計して
よい。
【0034】図4において、ユーザが「エンコードプロ
グラム」を起動すると、CPU11は、ステップ100
にて「エンコードプログラム」の実行を開始し、ステッ
プ102にて埋め込むべき付属情報Y及びそのデコード
用のカギ情報KEYを入力する。これらの情報Y,KE
Yの入力は、入力装置16による操作入力、通信インタ
ーフェース21を介して外部からの入力、外部記録媒体
からドライブユニット15を介した入力、内部記憶装置
14に記憶しておいたものの読み出しなど、適宜の手段
によって行われる。
【0035】以下の説明では、最も簡単な例として、付
属情報Yとして1つの文字コードを示す数値情報を埋め
込む例について説明する。理解を容易にするための具体
例としては、アスキーコードの文字「Y」を表すデシマ
ル値「86」を埋め込む例を想定する。また、付属情報
Yを埋め込むためのエンコードアルゴリズムにおける
「カギ」として、各チャンネル0〜8,10〜15の演
奏データ0〜8,10〜15内の各音源設定情報中の音
色番号データTCNの小さい順に演奏データのチャンネ
ル配置を変更することとする。カギ情報KEYはそのよ
うな「カギ」を示す情報である。なお、以降において登
場する数値は、特別のことわりがない限り、全てデシマ
ル値とする。
【0036】なお、以下の説明におけエンコードアルゴ
リズムの基本は、最大で「B!」通りの値をとりうる数
値「A」に応じて、「B」個のデータ群の順列組み合わ
せの配置を設定する、というアルゴリズムを使用するも
のとする。そのようなエンコードアルゴリズムは、具体
的には下記(式1)のようである。 (式1) B順列の順位0:AmodB B順列の順位1:(AdivB)mod(B−1) B順列の順位2:{(AdivB)div(B−1)}mod(B−2) . . . B順列の順位B−2:[{(AdivB)div(B−1)}div … div3〕mod2 B順列の順位B−1:[{(AdivB)div(B−1)}div … div2〕mod1=0 上記式1において、「AmodB」は、数値AをBで割っ
た余りを示す。「AdivB」は、数値AをBで割った商
の整数部を示す。例えば、「B順列の順位0」とは、B
順列のオリジナル順位0を示し(順位0は最上位のこ
と)、そのエンコード出力「AmodB」は、その変更後
の順位を示す。ここで、下位のエンコードアルゴリズム
のエンコード出力が示す変更後の順位は、上位のエンコ
ードアルゴリズムによって決定済みの順位を除外した順
位である。例えば、最上位のエンコードアルゴリズム
「AmodB」によって、B順列のオリジナル順位0のデ
ータが、全体中の順位「3」に変更することが決定され
たとき、次のエンコードアルゴリズム「(AdivB)mod
(B−1)」によって、エンコード出力として「4」が
算出されたとすると、B順列のオリジナル順位1のデー
タは、全体の順位のうち既に決定済みの順位「3」を除
外した順位の中の4番目、つまり全体中の順位「5」に
変更されることを意味する。以下、順次、決定済みの順
位を除外して変更後の順位を決定する。ここで、オリジ
ナル順位とは、カギ情報KEYの示す順位であり、例え
ば音色番号データTCNの小さい順に演奏データのチャ
ンネル配置を変更するエンコードアルゴリズムの場合
は、各音源チャンネルのうちそこに割り当てられた音色
番号データTCNの小さい順をオリジナル順位としてい
る。なお、或る順位のエンコードアルゴリズムの結果が
余り0となった場合は、それより下位の順位のエンコー
ドアルゴリズムの演算実行を省略して、それより下位の
順位についてはカギ情報KEYの示すオリジナル順位の
通りとしてよい。
【0037】図4において、ステップ104では、埋め
込むべき付属情報Yを上記式1に従う順位0のアルゴリ
ズムで処理する。この例の場合、チャンネル配置変更の
対象となるチャンネル数は15であるから、上記式1で
B=15であり、エンコードの対象となる数値は付属情
報Yであるから、上記式1でA=Yである。よって、ス
テップ104では、「AmodB」の演算として、「Ymod
15」を行う。その余りをx15なる符号で表すものとす
る。例えば、Y=86のとき、x15は「11」である。
次に、ステップ106にて、カギ情報KEYにより定ま
る最初の演奏データ、すなわち最小の音色番号データT
CNを有する演奏データを、音源チャンネル9(打楽器
用音源チャンネル)を除く音源チャンネル0〜8,10
〜15のうちで音源チャンネル0を最上位に数えてx15
番目の音源チャンネル、つまりチャンネル12、に割当
てる。すなわち、x15=11のときは、チャンネル9を
除外するので、x15=11番目までのチャンネル順は、
0,1,2,3,4,5,6,7,8,10,11,1
2の順となり、チャンネル12に該当する。なお、0番
目とは音源チャンネル0を指し、1,2,3…番目は音
源チャンネル1,2,3…を指す。また、最小の音色番
号データTCNを有する演奏データをx15番目の音源チ
ャンネルに割当てるとは、オリジナルのx15番目の音源
チャンネルの演奏データと最小の音色番号データTCN
を有する演奏データとを入替えることを意味し(ただ
し、x15番目の演奏データと最小の音色番号データTC
Nを有する演奏データとが一致する場合には前記入替え
はなし)、これにより、最小の音色番号データTCNを
有する演奏データが、音源チャンネル0〜8,10〜1
5のうちで音源チャンネル0側から数えてx15番目の演
奏データとなる。
【0038】次に、ステップ108にて、付属情報Yが
「15」以上であるか否かを判定する。付属情報Yが
「15」以上であれば、ステップ108にて「YES」
と判定して、プログラムをステップ110〜114に進
める。ステップ110及び112においては上記式1の
順位1のエンコードアルゴリズムに従う演算を行う。す
なわち、ステップ110においては、付属情報Yを「1
5」で割った商の整数部(これをy15で示す)を求め
る。この演算は、上記式1における「AdivB」なる割
算に相当し、上記のようにA=Yで、B=15の場合
は、ステップ110では「Ydiv15」なる割算を行う
ことになる。次に、ステップ112においては、前記商
の整数部y15を「14」で割り、その余りx14を求め
る。すなわち、x 14=y15mod14であり、これは上記
式1の順位1の演算の解に相当する。次のステップ11
4においては、カギ情報KEYにより次の演奏データ、
すなわち2番目に小さい音色番号データTCNを有する
演奏データを、前記音源チャンネル0〜8,10〜15
のうち、決定済みの音源チャンネルx15を除くx14番目
の音源チャンネルに割当てる。例えば、Y=86のと
き、y15=「5」であり、x14は、「5÷14=0余り
5」から、x14=「5」である。すなわち2番目に小さ
い音色番号データTCNを有する演奏データを、音源チ
ャンネル9及びx15=11(つまりチャンネル12)を
除く音源チャンネルのうちx14番目の音源チャンネル
(x14=5のときはチャンネル5)に割当てる。
【0039】次に、ステップ116にて、前記商の整数
部y15が「14」以上であるか否かを判定する。y15
「14」以上であれば、ステップ116にて「YES」
と判定して、プログラムをステップ118〜122に進
める。ステップ118及び120においては上記式1の
順位2のエンコードアルゴリズムに従う演算を行う。す
なわち、ステップ118においては、y15を「14」で
割った商の整数部(これをy14で示す)を求める。この
演算は、上記式1における「(AdivB)div(B−
1)」なる割算に相当し、上記例のようにAdivB=y
15で、B−1=14の場合は、ステップ118では「y
15div14」なる割算を行う。次にステップ120にお
いては、前記商の整数部y14を「13」で割り、その余
りx13を求める。すなわち、x13=y14mod13であ
り、これは上記式1の順位2の演算の解に相当する。そ
して、次のステップ120においては、カギ情報KEY
により次の演奏データ、すなわち3番目に小さい音色番
号データTCNを有する演奏データを、前記音源チャン
ネル0〜8,10〜15のうち、決定済みの音源チャン
ネルx15及びx14を除くx13番目の音源チャンネルに割
当てる。
【0040】以下、順位を順次繰り下げながら、ステッ
プ116,118,120,122と類似の処理を順次
繰り返し、上記式1の順位3から順位B−1までのエン
コードアルゴリズムに従う演算をそれぞれ行うが、詳細
図示は省略する。
【0041】ところで、上記例のように、Y=86の場
合は、y15=「5」であるから、ステップ116はNO
と判定され、ステップ118〜122に進まずに、ステ
ップ124に進む。ステップ124では、残りの演奏デ
ータを、カギ情報KEYにより定まる順序で残りの音源
チャンネルに順次割り当てる処理を行う。このように、
カギ情報KEYにより定まる順序の通りにチャンネルが
配置されている箇所では、エンコードアルゴリズム演算
の解つまり余りが「0」であることを意味する。すなわ
ち、順位を順次繰り下げながら、ステップ116,11
8,120,122と類似の処理をあえて順次繰り返す
必要がないため、これらの演算を省略し、ステップ12
4で順次割当て処理を行えば足りる。同様の理由で、ス
テップ108でNOと判定された場合も、処理はステッ
プ124に移る。
【0042】ここで理解を深めるためにチャンネル配置
変更の具体例を示す。オリジナル演奏データとして、チ
ャンネル0に音色番号20の演奏データが割り当てら
れ、チャンネル3に音色番号10の演奏データが割り当
てられ、チャンネル5に音色番号15の演奏データが割
り当てられ、チャンネル10に音色番号12の演奏デー
タが割り当てられているとする。上記のように埋め込む
べき付属情報Yが「86」であるとすると、音色番号順
のアルゴリズムを指示するカギ情報KEYに従って、最
初は最小の音色番号10のチャンネル割当て(配置変
更)を行い、ステップ104でのx15=Ymod15=1
1によって、音色番号10の演奏データを順位11のチ
ャンネル(つまりチャンネル12)に割り当てる(オリ
ジナルのチャンネル3からチャンネル12に配置を変更
する)。
【0043】次に、2番目の音色番号12のチャンネル
割当て(配置変更)を行い、ステップ110でのy15
Ydiv15=5、及びステップ112でのx14=y15mod
14=5によって、2番目の音色番号12の演奏データ
をチャンネル5に割り当てる(オリジナルのチャンネル
10からチャンネル5に配置を変更する)。y15は14
未満であるため、ステップ116はNOとなり、以後の
エンコード演算を省略してステップ124に行き、以下
音色番号順に残りのチャンネルに順次割り当てる。すな
わち、3番目の音色番号15の演奏データをチャンネル
0に割り当て(オリジナルのチャンネル5からチャンネ
ル0に配置を変更する)、4番目の音色番号20の演奏
データをチャンネル1に割り当て(オリジナルのチャン
ネル0からチャンネル1に配置を変更する)。
【0044】以上例示したようなチャンネル配置変更に
基づくエンコードアルゴリズムによれば、対象チャンネ
ル数が「15」であれば、「15!」通りのチャンネル
配置組合せがあり得ることから、「15!」通りの値を
示す付属情報を電子的透し情報として演奏データ(主要
情報)の中に埋め込むことができる。「15!」通りの
値とは、ビット数にして「log15!」(底は2)ビ
ットからなるものであり、かなりの情報量を透し情報と
して埋め込むことができることが理解できる。しかも、
演奏データのチャンネル配置を変更したとしても、結果
的に発音される演奏音については何も変更されない(ど
のチャンネルを使用して発音しようとも、指定された音
色等で発音がなされればよい)ので、透し情報を埋め込
んだことによる再生演奏への悪影響は全く生じず、極め
て有利である。
【0045】なお、チャンネル配置変更に使用するエン
コードアルゴリズムのカギ情報KEYとしては、音色番
号順に限らず、他の如何なるファクタを使用してもよ
い。例えば各チャンネルの演奏データ中のノート番号の
平均値の小さい順(または大きい順)、あるいは各チャ
ンネルの演奏データ中のノート数(音符数)の多い順
(または少ない順)、など適宜のファクタをカギ情報K
EYとして使用してよい。また、上記実施例では、付属
情報Yとして1文字のアスキーコードを埋め込む例を説
明したが、複数の文字分の任意の文字情報や、図形情報
その他の適宜の情報を付属情報Yとして埋め込むことが
できるのは勿論である。例えば、音楽演奏データの適宜
のブロック毎に(1又は複数小節毎に)1文字ずつ合計
複数文字の透し情報を埋め込む、といったような手法で
エンコードを行うことができる。なお、その場合、チャ
ンネル配置がどの箇所で変化するのか、といったような
デコード処理に必要な各種情報をカギ情報KEYとして
適宜提供してやるものとする。
【0046】次に、演奏データに埋め込まれた付属情報
Yのデコード処理の一例について図5を参照して説明す
る。図5は、図4の手法に従ってチャンネル配置を変更
することで所望の付属情報に対応する透し情報を埋め込
んでなる演奏データから、付属情報Yをデコードする例
を示している。
【0047】図5において、ユーザが「デコードプログ
ラム」を起動すると、CPU11は、ステップ101に
て「デコードプログラム」の実行を開始し、ステップ1
03にて、デコード用のカギ情報KEYを取得する。デ
コード用カギ情報KEYの取得の仕方は、如何なる手法
によってもよい。例えば、必要なカギ情報KEYを正当
に知得し、これをキーボード等で入力するようにしても
よい。あるいは、演奏データのヘッダ部等に必要なカギ
情報KEYを記憶しておき、これを読み出すことで取得
するようにしてもよい。あるいは、後述するように、主
要情報たる演奏データの適宜の箇所に電子的透し情報の
形態で必要なカギ情報KEYを埋め込んでおき、これを
別途のデコードプログラムに従ってデコードすることで
取得するようにしてもよい。あるいは、通信インターフ
ェース21を介して通信ネットワークを経由して外部の
サーバから必要なカギ情報を取得するようにしてもよ
い。あるいは、MIDIの演奏データ中に含まれるシス
テムイクスクルーシブデータからもしくはメタイベント
データから必要なカギ情報を取得するようにしてもよ
い。このようにデコード用のカギ情報KEYの取得形態
に種々のバリエーションがあることは、以下説明するす
べての実施例に共通である。
【0048】例えば、図4のエンコード例の場合は、こ
のステップ103で取得するカギ情報KEYは、「音色
番号の小さい順」に上記式1のエンコードアルゴリズム
を適用したというものである。よって、このようなカギ
情報KEYを取得し知得することにより、与えられた演
奏データのうち「音色番号の小さい順」に上記式1のエ
ンコードアルゴリズムの逆算を行うことにより、そこに
隠されていた元の付属情報Yをデコードすることができ
る。
【0049】すなわち、与えられた演奏データにおける
各チャンネルの音色番号をチェックすることで、「音色
番号の小さい順」にそのチャンネル順位x15,x14,x
13,…を順次検出する(図5のステップ105,10
7,109,…)。なお、ここで、前述から明らかなよ
うに、チャンネル順位x15,x14,x13,…とは絶対的
なチャンネル順位ではなく、それぞれの段階での残りの
チャンネルにおける相対的な順位である。例えば、前述
のエンコード例のように、最小の音色番号10の演奏デ
ータをチャンネル12に割り当て、2番目の音色番号1
2の演奏データをチャンネル5に割り当て、3番目の音
色番号15の演奏データをチャンネル0に割り当て、4
番目の音色番号20の演奏データをチャンネル1に割り
当てるようなチャンネル配置変更がなされている場合、
図5のステップ105では最小の音色番号10の演奏デ
ータが割り当てられているチャンネル12に基づき、x
15=「11」を検出する。次のステップ107では、2
番目の音色番号10の演奏データが割り当てられている
チャンネル5を検出し、これが残りのチャンネル(つま
りチャンネル9と12を除くチャンネル0〜8,10,
11,13〜15)のうち、5番目の順位であることに
基づき、x14=「5」を検出する。次のステップ109
では、3番目の音色番号15の演奏データが割り当てら
れているチャンネル0を検出し、これが残りのチャンネ
ル(つまりチャンネル9と12と5とを除くチャンネル
0〜4,6〜8,10,11,13〜15)のうち、最
上位の順位「0」であることに基づき、x13=「0」を
検出する。以後のチャンネル順位はすべて残りのチャン
ネルの最上位であるため「0」である。
【0050】このようにしてカギ情報KEYに基づき検
出した各チャンネル順位x15,x14,x13,…は、前記
式1の各順位のエンコードアルゴリズム演算における余
り値に相当するため、これらを用いて下記式2のように
エンコードアルゴリズムの逆算を行うことで、埋め込ま
れた透し情報の値Aをデコードすることができる。 (式2) A=x15+(x14・B)+{x13・B・(B−1)}+{x12・B・(B−1)・(B− 2)} +{x11・B・(B−1)・(B−2)・(B−3)}+…… 図5におけるステップ111では、上記式2に従う逆算
を行い、透し情報として埋め込まれていた付属情報Yの
値をデコードする。x15=「11」、x14=「5」、x
13=「0」の上記例では、Y=11+5×15+0=8
6となり、透し情報として埋め込まれていた付属情報Y
の値「86」がデコードされることが理解できる。
【0051】次に、上記第1実施形態の変形例について
説明する。上記例では、演奏データにおけるチャンネル
配置を変更することで透し情報の埋め込みを行っている
が、その他適宜のデータの配置または順序を変更するよ
うにしてもよい。すなわち、配置または順序変更の対象
となりうるデータは、演奏データにおける当該データの
配置または順序の変更が、該演奏データに基づく音楽の
再生に実質的に悪影響を与えないものであることが好ま
しい。そのようなタイプのデータとしては、発音開始前
の(初期設定用の)複数種類の音源設定情報の配置順序
や、同時発音される和音を構成する複数ノートのイベン
トデータや、MIDIのメタイベントデータ(演奏には
直接関係しないデータ)などが挙げられる。
【0052】図6は、演奏データに対する付属情報Yの
埋め込み(エンコード)処理の別の例として、演奏デー
タにおける複数種類の音源設定情報の配列順序を変更す
ることで、所望の付属情報に対応する透し情報を埋め込
む例を示している。この例では、初期設定用(発音開始
以前)の音色番号データTCN、ボリュームデータVO
L、パンデータPAN、エクスプレッションデータEX
P及びダンプデータDMPの5種類の音源設定情報の配
列順序を、付属情報Yの値に応じて変更する。その場合
のカギ情報KEYは、各音源設定情報のオリジナル順位
を示す。エンコードアルゴリズムは、前記式1と同様の
ものを使用してよい。その場合、上記5種類の音源設定
情報の配列順序を変更する場合は、前記式1でB=5で
ある。
【0053】図6のエンコード処理の仕方は基本的には
図4と同様である。まず、ステップ130では、図4の
ステップ102と同様に、埋め込むべき付属情報Yと使
用するカギ情報KEYを入力する。次に、ステップ13
1では、配置若しくは順序変更の対象となる複数種類の
音源設定情報を主要情報(演奏データ)から取り出す。
次に、ステップ132では、B=5として、上記式1の
順位0に従うエンコード演算(Ymod5)を行い、その
解つまり余りとしてx5を得る。次のステップ133で
は、入力したカギ情報KEYによって定まる最初の順位
(上記式1の順位0)の音源設定情報の配列順序を全体
のx5番目に設定する。なお、前述と同様に、0番目が
最上位の順位であるとする。例えば、TCN、VOL、
PAN、EXP、DMPがオリジナル順位であるとする
と、音色番号データTCNの配置順序がx5番目に設定
される。
【0054】次に、ステップ134にて、付属情報Yが
「5」(=B)以上であるか否かを判定する。付属情報
Yが「5」以上であれば、ステップ134にて「YE
S」と判定して、プログラムをステップ135,136
に進める。ステップ135においては図4のステップ1
10及び112と同様に上記式1の順位1のエンコード
アルゴリズムに従う演算を行う。すなわち、付属情報Y
を「5」で割った商の整数部(これをy5で示し、y5
Ydiv5である)を求め、該商の整数部y5を「4」で割
り(y5mod4)、その解つまり余りx4を求める。すな
わち、x4=y5mod4であり、これはB=5のときの上
記式1の順位1の演算の解に相当する。次のステップ1
36においては、カギ情報KEYにより定まる2番目の
オリジナル順位1の音源設定情報の配置順序を残りの
(決定済の順位x5を除く)x4番目に設定する。例え
ば、前記のオリジナル順の場合、ボリュームデータVO
Lの配置順序が残りのx4番目に設定される。
【0055】次に、ステップ137にて、前記商の整数
部y5が「4」以上であるか否かを判定する。y5が「1
4」以上であれば、ステップ137にて「YES」と判
定して、プログラムをステップ138,139に進め
る。ステップ138においては図4のステップ118及
び120と同様に上記式1の順位2のエンコードアルゴ
リズムに従う演算を行う。すなわち、y5を「4」で割
った商の整数部(これをy4で示し、y4=y5div4であ
る)を求め、該商の整数部y4を「3」で割り、その解
つまり余りx3を求める。すなわち、x3=y4mod3であ
り、これはB=5のときの上記式1の順位2の演算の解
に相当する。そして、次のステップ139においては、
カギ情報KEYにより定まる3番目のオリジナル順位2
の音源設定情報の配置順序を残りの(決定済の順位
5,x4を除く)x3番目に設定する。例えば、前記の
オリジナル順の場合、パンデータPANの配置順序が残
りのx3番目に設定される。
【0056】次に、ステップ140にて、前記商の整数
部y4が「3」以上であるか否かを判定する。y4
「3」以上であれば、ステップ140にて「YES」と
判定して、プログラムをステップ141,142に進め
る。ステップ141,142は、上記ステップ138,
139と同様の処理を順位を1つ繰り下げて行うもので
ある。これにより、x2=y3mod2が求まり、これはB
=5のときの上記式1の順位3の演算の解に相当し、カ
ギ情報KEYにより定まる4番目のオリジナル順位3の
音源設定情報の配置順序を残りの(決定済の順位x5
4,x3を除く)x2番目に設定する。例えば、前記の
オリジナル順の場合、エクスプレッションデータEXP
の配置順序が残りのx2番目に設定される。最後にステ
ップ143では、1つの順位だけが残されているので、
残りの最後のオリジナル順位4の音源設定情報(上記設
例ではダンプデータDMP)の配置順序を残りの順位と
する。
【0057】なお、上記各ステップ134,137,1
40でNOと判定された場合は、ステップ144,14
5,146に行き、残りのエンコードアルゴリズム演算
(ステップ135〜143)をあえて実行することな
く、残りの音源設定情報をカギ情報KEYに従う残りの
順位に順次設定する。勿論、残りのエンコードアルゴリ
ズム演算(ステップ135〜143)を実行ったとして
も、各順位x4,x3,x 2がそれぞれ順位0として求め
られ、カギ情報KEYが指定する順位に順次設定され
る。ステップ144,145,146にジャンプした場
合は、残りのエンコードアルゴリズム演算を省略できる
ので、処理時間が速まる。
【0058】ここで理解を深めるために、音源設定情報
の配置順序変更の具体例を示す。カギ情報KEYに従う
順位が上記のようであり、埋め込むべき付属情報Yの値
が「86」であるとすると、x5=86mod5=1から、
音色番号データTCNの配置順序が順位1(全体の2番
目)に設定され、x4=17mod4=1から、ボリューム
データVOLの配置順序が残りの順位1(全体の3番
目)に設定され、x3=4mod3=1から、パンデータP
ANの配置順序が残りの順位1(全体の4番目)に設定
され、x2=1mod2=1から、エクスプレッションデー
タEXPの配置順序が残りの順位1(全体の5番目)に
設定され、最後のダンプデータDMPの配置順序が残り
の順位0(全体の1番目)に設定される。すなわち、D
MP、TCN、VOL、PAN、EXPという配置順に
変更される。
【0059】以上例示したような音源設定情報の配置順
序変更に基づくエンコードアルゴリズムによれば、対象
種類数が「5」であれば、「5!」通りの順列組合せが
あり得ることから、「5!」通りの値を示す付属情報を
電子的透し情報として演奏データ(主要情報)の中に埋
め込むことができる。「5!」通りの値とは、ビット数
にして「log5!」(底は2)ビットからなるもので
ある。しかも、初期設定用(発音開始以前)の各音源設
定情報の配置順序を変更したとしても、再生演奏には何
の悪影響ももたらさないので、透し情報を埋め込んだこ
とによる再生演奏への悪影響は全く生じず、極めて有利
である。なお、音源設定情報の配置順序変更に使用する
エンコードアルゴリズムのカギ情報KEYによって指定
する各情報のオリジナル順位は、上記例に限らず、適宜
に設定してよい。この場合も、付属情報Yとして埋め込
む情報は1文字のアスキーコードに限らず、複数の文字
分の任意の文字情報や、図形情報その他の適宜の情報を
埋め込むことができるのは勿論である。例えば、15個
の各音源チャンネル0〜8,10〜15のそれぞれにつ
いて、演奏開始前の初期設定値としての各音源設定情報
の配置順序を上記に従ってエンコードすることで、15
文字の文字情報を埋め込むことができる。また、演奏途
中の箇所で、各音源設定情報を挿入し、その配置順序を
上記に従ってエンコードすることで、更に埋め込む情報
数を増すことができる。
【0060】次に、演奏データに埋め込まれた付属情報
Yのデコード処理の別の例について図7を参照して説明
する。図7は、図6の手法に従って音源設定情報の配置
順序を変更することで所望の付属情報に対応する透し情
報を埋め込んでなる演奏データから、付属情報Yをデコ
ードする例を示している。
【0061】図7のデコード処理の仕方は基本的には図
5と同様である。まず、ステップ150にて、デコード
用のカギ情報KEYを取得する。次に、カギ情報KEY
によって定まる音源設定情報の順に、その配置順位
5,x4,x3,x2を順次検出する(ステップ151〜
154)。なお、ここで、前述から明らかなように、配
置順位x5,x4,x3,x2とは絶対的な順位ではなく、
それぞれの段階での残りのデータにおける相対的な順位
である。例えば、前述のエンコード例のように、DM
P、TCN、VOL、PAN、EXPの順で配置設定が
なされている場合、図7のステップ151ではTCNの
順位x5=「1」を検出する。次のステップ152では
VOLの順位x4=「1」を検出し、次のステップ15
3ではPANの順位x3=「1」を検出し、次のステッ
プ154ではEXPの順位x2=「1」を検出する。最
後のデータDMPの順位は必ず「0」である。
【0062】このようにしてカギ情報KEYに基づき検
出した各音源設定情報の配置順位x 5,x4,x3,x
2は、前記式1の各順位のエンコードアルゴリズム演算
における余り値に相当するため、これらを用いて前記式
2と同様のエンコードアルゴリズムの逆算を行うこと
で、透し情報として埋め込まれた付属情報Yの値をデコ
ードすることができる。ステップ155では、デコード
のためのそのような逆算、すなわち、 Y=x5+(5・x4)+(5・4・x3)+(5・4・
3・x2)+0 を実行する。上記例では、x5,x4,x3,x2がすべて
「1」であるから、Y=86のデコード結果が得られ
る。
【0063】図8は、演奏データに対する付属情報Yの
埋め込み(エンコード)処理の更に別の例として、同時
発音される和音を構成する複数ノートの配置順序を変更
することで、所望の付属情報に対応する透し情報を埋め
込む例を示している。例えば、同時発音される3個のノ
ートによって和音を演奏する演奏データを想定すると、
この3個のノートの配置順序は、どのような順序であっ
ても、和音が同時発音されることには変わりないので、
「3!」通りの組み合わせの配置順序のいずれを採用し
ても再生演奏には悪影響を与えないことになる。よっ
て、これらの同時発音される3個のノートの配置順序
を、付属情報Yに応じて設定することにより、「3!」
通りの値を持つ付属情報Yを透し情報として埋め込むこ
とができることになる。勿論、同時発音されるノート数
が4個の場合は、「4!」通りの値を持つ付属情報Yを
透し情報として埋め込むことができることになる。ただ
し、図8に示すエンコード例では、説明の簡略化のため
に、同時発音されるノート数が4個以上の場合であって
も、「3!」通りの値を持つ付属情報Yを透し情報とし
て埋め込むようにした例を示している。このエンコード
例の場合、演奏シーケンスにおける各和音演奏箇所毎に
それぞれ異なる付属情報Yを透し情報として埋め込むこ
とができる。説明の便宜上、埋め込み可能な複数(p
個)の付属情報Yを、Y(1),Y(2),Y(3),
…Y(p)で示す。
【0064】この場合、同時発音される複数のノートの
配置順序を設定するためのカギ情報KEYとしては、ノ
ート番号順、あるいはノートオフまでの時間順、あるい
はベロシティデータの大きさの順、など種々のファクタ
を使用してよい。どのようなファクタを使用するかはカ
ギ情報KEYによって指示される。この場合も、エンコ
ードアルゴリズムは、前記式1と同様のものを使用して
よい。その場合、「3!」通りの値を持つ付属情報Yを
透し情報として埋め込む場合は、前記式1でB=3であ
る。つまり、同時発音されるノート数が3個以上の演奏
データグループに対してエンコード処理がなされる。
【0065】図8のエンコード処理の仕方は基本的には
図4あるいは図6と同様である。まず、ステップ160
では、埋め込むべき複数(p個)の付属情報Y(1)〜
Y(p)と使用するカギ情報KEYとを入力する。次
に、ステップ161では、エンコード処理すべき1つの
付属情報Yを特定する順序数iを初期値1に設定する。
次に、ステップ162では、主要情報つまり演奏データ
のアドレスを歩進する。次に、ステップ163では、歩
進されたアドレスに対応する演奏データが同時発音され
るべき3音以上のノートに該当するかを調べるNOであ
れば、ステップ162に戻り、演奏データのアドレスを
歩進する。こうして、同時発音されるべき3音以上のノ
ートに該当するアドレスまで歩進してくると、ステップ
163がYESとなり、ステップ164で、これら3音
以上の同時発音されるべきノートの演奏データを取り出
す。
【0066】次に、ステップ165では、B=3とし
て、上記式1の順位0に従うエンコード演算(Y(i) mo
d3)をi番目の付属情報Y(i)(最初はY(1))に対し
て行い、その解つまり余りとしてx3を得る。次のステ
ップ166では、ステップ164で取り出した同時発音
されるべき3音以上のノートのうち、カギ情報KEYに
よって定まる最初の順位(上記式1の順位0)のノート
の配列順序を全体のx3番目に設定する。
【0067】次に、ステップ167にて、前記付属情報
Y(i)が「3」以上であるか否かを判定する。Y(i)
が「3」以上であれば、ステップ167にて「YES」
と判定して、プログラムをステップ168〜170に進
める。ステップ168においては図3のステップ135
と同様に上記式1の順位1のエンコードアルゴリズムに
従う演算を行う。すなわち、Y(i)を「3」で割った商
の整数部(これをy3で示し、y3=Y(i) div3であ
る)を求め、該商の整数部y3を「2」で割り、その解
つまり余りx2を求める。すなわち、x2=y3mod2であ
り、これはB=3のときの上記式1の順位1の演算の解
に相当する。そして、次のステップ169においては、
ステップ164で取り出した同時発音されるべき3音以
上のノートのうち、カギ情報KEYにより定まる2番目
の順位(上記式1の順位1)のノートの配列順序を残り
の(決定済の順位x3を除く)x2番目に設定する。ステ
ップ170では、ステップ164で取り出した同時発音
されるべき3音以上のノートのうち、カギ情報KEYに
より定まる3番目以降の順位の残りのノートを、カギ情
報KEYにより定まる順位(決定済の順位x3,x2を除
く)に設定する。すなわち、3番目の順位(上記式1の
順位2)のノートの配列順序は残りの(決定済の順位x
3,x2を除く)0番目に設定する。もし、4番目以降の
順位のノートがあれば、さらに下位の順位に設定され
る。なお、付属情報Y(i)が「3」未満であれば、ス
テップ167はNOであり、ステップ171に行き、残
りのエンコードアルゴリズム演算(ステップ168〜1
70)をあえて実行することなく、残りのノートをカギ
情報KEYに従う残りの順位に順次設定する。
【0068】ステップ172では、順序数iが最大値p
以上かを調べ。NOであればステップ173でiを+1
増加してステップ162に戻る。こうして、次に埋め込
むべき付属情報Y(i)に関してステップ162〜17
2の処理を繰り返す。やがて、i=pとなって、すべて
の付属情報Y(i)についての埋め込みを終了すると、
ステップ172がYESとなり、このエンコード処理を
終了する。
【0069】ここで理解を深めるために、同時発音され
るべき3音以上のノートの配置順序変更の具体例を示
す。同時発音されるべきノートがC3,E3,G3であ
り、カギ情報KEYが「ノート番号の小さい順」である
とし、埋め込むべき付属情報Y(1)の値が「5」である
とすると、ステップ165でのx3=5mod3=2から、
最初の順位のノートC3の配置順序が順位2(全体の3
番目)に設定され(ステップ166)、ステップ168
でのx2=1mod2=1から、次の順位のノートE3の配
置順序が順位1(残りの2番目で、全体の2番目)に設
定され(ステップ169)、最後の順位のノートG3の
配置順序が順位0(残りの1番目で、全体の1番目)に
設定される(ステップ170)。この場合、埋め込むこ
とが可能な付属情報Y(1)のとり得る値は「3!」通り
の値である。
【0070】次に、図8の手法に従って所望の付属情報
に対応する透し情報を埋め込んでなる演奏データから、
各付属情報Y(1)〜Y(p)をデコードする例について、図
9を参照して説明する。
【0071】図9のデコード処理の仕方は基本的には図
5,図7と同様に、図8のエンコードアルゴリズムの逆
算を行うことからなる。まず、デコード用のカギ情報K
EYを取得し、次に、順序数iを初期値1にセットする
(ステップ180,181)。それから、ステップ18
2,183,184では図8のステップ162,16
3,164と同様の処理を行い、3音以上の同時発音さ
れるべきノートの演奏データを取り出す。それから、カ
ギ情報KEYによって定まるノートの順に、その配置順
位x3,x2を順次検出する(ステップ185,18
6)。この場合も、配置順位x3,x2とは絶対的な順位
ではなく、それぞれの段階での残りのデータにおける相
対的な順位である。ステップ187では、これらを用い
て前記式2と同様のエンコードアルゴリズムの逆算を行
うことで、透し情報として埋め込まれた付属情報Y(i)
の値をデコードする。すなわち、 Y(i) =x3+(3・x2)+0 を実行する。例えば、前述のエンコード例の場合、最初
の順位のノートC3の配置順序が順位2であることか
ら、x3=2が検出され、2番目の順位のノートE3の
配置順序が順位1であることから、x2=1が検出され
る。よって、 Y(i) =2+(3・1)=5 により、Y(i)=5のデコード結果が得られる。ステッ
プ188,189は図8のステップ172,173と同
じであり、すべての付属情報Y(1)〜Y(p)をデコードし
終えるまで、ステップ182〜187の処理を繰り返
す。
【0072】上記例のほかに、再生演奏に悪影響を与え
ない主要情報中の特定のデータの配置順序を変更するこ
とで、所望の付属情報に対応する透し情報を埋め込むこ
とができる。再生演奏に悪影響を与えない主要情報中の
特定のデータの例としては、例えばMIDIのメタイベ
ントデータがある。MIDI演奏データ中において、メ
タイベントデータとして著作権情報が記録されることが
よく行われる。その場合、複数種類のデータ、例えばコ
ピーライト表示であることを示す文字「C」のデータ
と、著作年を示す日付データと、著作者を示すデータな
どが、別々のメタイベントデータとして、MIDI演奏
データ中に適当な順序で適宜記憶される。この複数種類
のメタイベントデータの配置順序を、適宜のカギ情報K
EYに従って、所望の付属情報Yの値に応じて再配置す
ることで、透し情報として埋め込むことができる。その
ためのエンコードアルゴリズムは基本的には図8と同様
のものを使用できる。
【0073】図10は著作権情報のメタイベントの配置
順序を変更するためのエンコードアルゴリズムの一例を
示す図であり、図8と実質的に同様の処理を行うステッ
プは同一番号を付し、説明を省略する。図10の例にお
ける図8に対する変更箇所を説明すると、ステップ16
0はステップ160’に変更され、1つの付属情報Yを
埋め込むだけとするので、付属情報Yは1つだけ入力す
る。これに伴い、図8におけるステップ161,17
2,173は図10では省略されている。ステップ16
3’では演奏データが「著作権情報のメタイベントか
?」を判定する。YESであれば、ステップ164’で
著作権情報に関する各種メタイベントデータを取り出
す。例えば、上記のように、文字「C」のデータと、著
作年を示す日付データと、著作者を示すデータ、の3種
類のデータを取り出す。ここで、カギ情報KEYが指定
する所定の順位は、「C」データ、日付データ、著作者
データ、の順であるとする。ステップ166’では、最
初のメタイベントデータ(「C」データ)についての順
位x3を設定する。ステップ169’では、2番目のメ
タイベントデータ(日付データ)についての残りのうち
の順位x2を設定する。ステップ170’では、3番目
のメタイベントデータ(著作者データ)についての順位
を残りのうちの順位0に設定する。
【0074】前述と同様に、埋め込むべき付属情報Yの
値が「5」であるとすると、ステップ165でのx3
5mod3=2から、最初のメタイベントデータ(「C」
データ)についての配置順序が順位2(全体の3番目)
に設定され(ステップ166’)、ステップ168での
2=1mod2=1から、次のメタイベントデータ(日付
データ)の配置順序が順位1(残りの2番目で、全体の
2番目)に設定され(ステップ169’)、最後の順位
のメタイベントデータ(著作者データ)の配置順序が順
位0(残りの1番目で、全体の1番目)に設定される
(ステップ170’)。この場合も、埋め込むことが可
能な付属情報Yのとり得る値は「3!」通りの値とな
る。
【0075】図10の手法に従って所望の付属情報に対
応する透し情報を埋め込んでなる演奏データから、付属
情報Yをデコードする処理は、基本的には図9の場合と
同様に、図10のエンコードアルゴリズムの逆算を行え
ばよい。このデコード処理については、図9の説明を援
用し、詳細説明を省略する。
【0076】更に、再生演奏に悪影響を与えない主要情
報中の特定のデータの配置順序を変更することで、所望
の付属情報に対応する透し情報を埋め込むことが可能
な、再生演奏に悪影響を与えない主要情報中の特定のデ
ータの別の例としては、例えば楽音の発音中に設定変更
しても発音中の音に影響を与えない「コントロールデー
タ」またはMIDIの「プログラムチェンジ」データな
どがある。この「コントロールデータ」またはMIDI
の「プログラムチェンジ」データで例えば音色を設定変
更する場合、或る楽音の発音中のタイミングで設定変更
指示したとしても該発音中の楽音の音色を設定変更する
ことにはならず、次に発音開始する楽音からその音色を
変更することになる。従って、この「コントロールデー
タ」またはMIDIの「プログラムチェンジ」データが
演奏シーケンスにおいて挿入されるタイミングは、或る
第1の楽音の発音中のタイミングで挿入する場合と、そ
の発音終了後から次の第2の楽音の発音開始前までのタ
イミングで挿入する場合とでは、再生演奏に対する影響
に変わりはない。従って、この「コントロールデータ」
またはMIDIの「プログラムチェンジ」データの変化
イベントを、或る第1の楽音の発音中のタイミングで挿
入するか、または、その発音終了後から次の第2の楽音
の発音開始前までの間のタイミングで挿入するか、のど
ちらかで行うかにによって1ビットの付属情報Yを、再
生演奏に影響を与えることなく、埋め込むことができ
る。このデコードは、「コントロールデータ」またはM
IDIの「プログラムチェンジ」データの変化イベント
が、或る第1の楽音の発音中のタイミングで挿入されて
いる場合は「0」を出力し、その発音終了後から次の第
2の楽音の発音開始前までの間のタイミングで挿入され
ている場合は「1」を出力する、というやり方で処理で
きる。 〔第2実施形態〕次に、本発明の第2実施形態について
説明する。この第2実施形態は、演奏データの値を操作
することで所望の付属情報Yの電子的透しを埋め込むよ
うにしたものであり、特に、複数の演奏データの時間情
報の変更状態の組み合わせで、所望の付属情報Yの電子
的透しを埋め込むようにしたものである。具体的には、
複数の異なる種類の音源設定情報の時間情報の変更状態
の組み合わせで、所望の付属情報Yの電子的透しを埋め
込むようにしている。
【0077】エンコードアルゴリズムの一例を次に示
す。
【0078】対象となる複数の異なる種類の音源設定情
報は、音色番号データTCN(MIDIでいうプログラ
ムチェンジに対応)、ボリュームデータVOL、パンデ
ータPAN、エクスプレッションデータEXP及びダン
プデータDMPの5種類であるとする。ただし、これら
の音源設定情報は初期設定用(発音開始以前)のものに
限らず、演奏シーケンス中に挿入されたものをも対象に
含んでいてよく、イベント間の時間間隔を指示する時間
情報(インターバルデータ△T)を伴っているものとす
る。
【0079】まず、第1のカギ情報KEY1により、各
種音源設定情報の順位を設定する。以下では、TCN、
VOL、PAN、EXP、DMPの順位が設定されてい
るものとして説明を進める。
【0080】次に、第2のカギ情報KEY2により、時
間情報(インターバルデータ△T)を変更するために使
用する変更差分値△dの分解能nを設定する。一例とし
て、時間情報の変更を微小値に押さえるために、分解能
n=3として、変更差分値△dのとりうる値を、+1,
0,−1の3種類とすると有利であり、以下ではそのよ
うに設定されているものとして説明を進める。
【0081】次に、第3のカギ情報KEY3により、時
間情報(インターバルデータ△T)についての関数f
(m)=n’を定義する。ここで、mは時間情報(イン
ターバルデータ△T)の値であり、0≦n’<nとす
る。一例として、f(m)は、 f(m)=m mod n であるとして、以下、説明を進める。すなわち、時間情
報(インターバルデータ△T)の値「m」を第2のカギ
情報KEY2の値「n」で割った商の余りが、f(m)
である。
【0082】次に、第1のカギ情報KEY1によって設
定された順で、各種音源設定情報毎の時間情報(インタ
ーバルデータ△T)の変更目標余り値d1,d2,d3
4,d5を求める演算を、埋め込むべき付属情報Yの値
に応じて、下記式3のエンコードアルゴリズムに従って
行う。 (式3) 順位0(TCN):Ymod n=d1 順位1(VOL):(Ydiv n) mod n=d2 順位2(PAN):((Ydiv n) div n) mod n=d3 順位3(EXP):(((Ydiv n) div n) div n) mod n=d4 順位4(DMP):((((Ydiv n) div n) div n) div n) mod n=d5 式における演算子の意味は、既に説明したものと同じで
あり、演算子「mod」は割算の商の余りを解として求め
ることを意味し、演算子「div」は割算の商の整数部を
解として求めることを意味する。例えば、「Ymod n」
は、付属情報の値Yを第2のカギ情報KEY2の値n
(好適にはn=3)で割った商の余りである。また、
「(Ydiv n) mod n」は、値Yを値nで割った商の整数
部(Ydiv n)を、値nで割った商の余りである。ま
た、「((Ydiv n) div n) mod n」は、値Yを値nで割
った商の整数部(Ydiv n)を更に値nで割り、その商
の整数部((Ydiv n) div n)を、値nで割った商の余
りである。
【0083】上記式3において、n=3の場合、各変更
目標余り値d1,d2,d3,d4,d 5の値は、「0」,
「1」,「2」のいずれかの値をとる。
【0084】上記各データTCN,VOL,PAN,E
XP,DMPのオリジナルの時間情報(インターバルデ
ータ△T)の値「m」を、それぞれm1,m2,m3
4,m 5で示すと、夫々をn=3で割ったときの余り
が、上記各変更目標余り値d1,d 2,d3,d4,d5
値になるようにするには、変更目標余り値d1,d2,d
3,d4,d5の値が「0」のときは変更差分値△d1,△
2,△d3,△d4,△d5として「0」をオリジナル値
1,m2,m3,m4,m5に加算し、変更目標余り値d1
〜d5の値が「1」のときは変更差分値△d1〜△d5
して「+1」をオリジナル値m1〜m5に加算し、変更目
標余り値d1〜d5の値が「2」のときは変更差分値△d
1〜△d5として「−1」をオリジナル値m1〜m5に加算
すればよい。
【0085】すなわち、上記各データTCN,VOL,
PAN,EXP,DMPの変更された時間情報(インタ
ーバルデータ△T)の値「m」を、それぞれm1’,
2’,m3’,m4’,m5’で示すと、下記式4に従っ
て変更演算を行うことで求められる。 (式4) TCN: m1’=m1+△d1 VOL: m2’=m2+△d2 PAN: m3’=m3+△d3 EXP: m4’=m4+△d4 DMP: m5’=m5+△d5 以上のようなエンコード処理を実現しうるように、適
宜、プログラムを組めばよい。図11は以上のようなエ
ンコード処理を実現しうるようにしたプログラムの一例
を示す。ステップ190では、埋め込むべき付属情報Y
と上記カギ情報KEY1,KEY2,KEY3を入力す
る。ステップ191では、第1のカギ情報KEY1によ
って設定された順で、各種音源設定情報毎の時間情報
(インターバルデータ△T)の変更目標余り値d1
2,d3,d4,d5を求めるための上記式3のエンコー
ドアルゴリズムに従う演算を、第2のカギ情報KEY2
によって指定された値nを用いて、埋め込むべき付属情
報Yの値に応じて、行う。次のステップ192では、求
められた各変更目標余り値d1〜d5の値から、対応する
変更差分値△d1〜△d5を求める。すなわち、上述の通
り、d1〜d5が「0」なら△d1〜△d5は「0」、
「1」なら「+1」、「2」なら「−1」である。次の
ステップ193では、演奏データの先頭から(若しくは
所定の範囲から)上記各データTCN,VOL,PA
N,EXP,DMPの時間情報(インターバルデータ△
T)のオリジナル値m1〜m5をそれぞれ取り出す。ステ
ップ194では、上記式4に従って、上記各データTC
N,VOL,PAN,EXP,DMPの時間情報(イン
ターバルデータ△T)のオリジナル値m1〜m5に上記変
更差分値△d 1〜△d5をそれぞれ加算し、それぞれの時
間情報(インターバルデータ△T)の変更値m1’〜
5’を求める。そして、前記ステップ193で取り出
した各データTCN,VOL,PAN,EXP,DMP
の時間情報(インターバルデータ△T)を変更値m1
〜m5’で置き換える。
【0086】次に、図10の手法に従って所望の付属情
報に対応する透し情報を埋め込んでなる演奏データか
ら、付属情報Yをデコードする例について、図11を参
照して説明する。図11のデコード処理の仕方は基本的
には上記各デコード処理例と同様に、図10のエンコー
ドアルゴリズムの逆算を行うことからなる。まず、デコ
ード用のカギ情報KEY1,KEY2,KEY3を取得
する(ステップ195)。それから、ステップ196で
は、演奏データの先頭から(若しくは所定の範囲から)
上記KEY1で指定された順位の各データTCN,VO
L,PAN,EXP,DMPの時間情報(インターバル
データ△T)の値m1’〜m5’をそれぞれ取り出す。ス
テップ197では、各値m1’〜m5’を変数mにあては
めて、かつKEY2で指定された値nを用いて、KEY
3で指定された関数 f(m)=m mod n をそれぞれ演算し、それぞれの余り値d1〜d5を求め
る。ステップ198では、上記式3のエンコードアルゴ
リズムの逆算を行い、下記式5のように、付属情報の値
Yをデコードする。 (式5) Y=d1+(n・d2)+(n・n・d3)+(n・n・n・d4) +(n・n・n・n・d5) ここでエンコードの具体例として、Y=86、n=3の
ときの上記式3に従う各変更目標余り値d1〜d5と、変
更差分値△d1〜△d5とを示すと、下記のようである。 TCN: d1=86 mod 3=2, △d1=−1 VOL: d2=28 mod 3=1, △d2=+1 PAN: d3=9 mod 3=0, △d3=0 EXP: d4=3 mod 3=0, △d4=0 DMP: d5=1 mod 3=1, △d5=+1 また、この具体例のデコード時においては、前記関数 f(m)=m mod n に基づく演算で求まる各余り値d1〜d5は、d1=2、
2=1、d3=0、d4=0、d5=1である。よって、
上記式5のデコード演算は、 Y=2+(3・1)+0+0+(3・3・3・3・1)
=86 となり、付属情報Yの値86をデコードすることができ
る。
【0087】このようにして、複数の異なる種類の音源
設定情報の時間情報の変更状態の組み合わせの形態で、
所望の付属情報Yの電子的透しが埋め込まれる。これに
よれば、主要情報における複数の異なる種類の音源設定
情報(TCN,VOL,PAN,EXP,DMP)の時
間情報を付属情報Yの値に応じて変更し、これら音源設
定情報の時間情報の変更状態の組み合わせの形態で付属
情報Yの電子的透しを埋め込むことを特徴としており、
複雑なエンコード化形態をとるため、不正利用者による
情報改竄がしにくいものとなる。また、音源設定情報
(TCN,VOL,PAN,EXP,DMP)の時間情
報は、楽音発音指示(ノートオンイベント)等の時間情
報とは異なり、その多少の変化は音楽再生演奏に影響を
与えることはない。また、実施例では、時間変更量は+
1,0,−1のいずれかであり、僅かな量であるから、
ほとんど気付かないほどのわずかな時間変化である。ま
た、正当利用者による演奏データ編集の際にも音源設定
情報の時間情報の変更はそう頻繁に行われるものではな
いため、無意識的に付属情報を変更することも起こりに
くい。この場合も、付属情報Yとして埋め込む情報は1
文字のアスキーコードに限らず、複数の文字分の任意の
文字情報や、図形情報その他の適宜の情報を埋め込むこ
とができるのは勿論である。例えば、15個の各音源チ
ャンネル0〜8,10〜15のそれぞれについて、各音
源設定情報の配置順序を上記に従ってエンコードするこ
とで、15種類(15文字)の付属情報を埋め込むこと
ができる。また、演奏途中の箇所で、各音源設定情報を
挿入し、その配置順序を上記に従ってエンコードするこ
とで、更に埋め込む付属情報数を増すことができる。な
お、各チャンネルに埋め込まれた付属情報同士の連結の
仕方は適宜定めてよく、また、連結の仕方を示すカギ情
報を適宜提供するようにしてもよい。例えば、チャンネ
ル番号順、各チャンネルに割り当てられている音色番号
順、各チャンネル毎の演奏データのノート番号の平均値
の順、各チャンネル毎の演奏データのキーオンイベント
数の順、など適宜の連結の仕方があり、どの連結を採用
すべきかはカギ情報で指示する。
【0088】上記第2実施形態の変形例として、複数の
異なる種類の音源設定情報の時間情報を変更することに
限らず、その他の演奏データの時間情報を変更するよう
にしてもよい。例えば、同一種類の複数の楽音制御情報
(例えばMIDIのコントロールチェンジデータ)の時
間情報を、上記実施例と同様の手法で微妙に変更するよ
うにエンコードしてもよい。例えば、演奏シーケンス順
に5個のコントロールチェンジデータを対象とすること
を、第1のカギ情報KEY1によって順位指定する。そ
して、これらの同一種類のコントロールチェンジデータ
のそれぞれの時間情報(インターバルデータ△T)を、
上記第2実施形態で示した式3及び式4と同様のアルゴ
リズムでエンコード処理することができる。この場合、
同一種類に限らず、任意の種類(異なる種類が含まれて
いてもよい)の複数の楽音制御情報(コントロールチェ
ンジデータ)を対象にして、演奏シーケンス順に5個の
コントロールチェンジデータを対象とすることを、第1
のカギ情報KEY1によって順位指定し、これらに対し
て上記と同様のエンコード処理を行うようにしてもよ
い。なお、この実施例では、音源設定情報(例えばプロ
グラムチェンジデータ)と楽音制御情報(例えばコント
ロールチェンジデータ)とを区別して説明しているが、
特に区別しなくてもよい。すなわち、音源設定情報も楽
音制御情報も、楽音の設定・制御に使用れさる情報であ
る。
【0089】更に、上記第2実施形態の別の変形例とし
て、例えば、ノートオンイベントからノートオフイベン
トまでの時間情報(デュレーションタイムといわれる時
間)を、上記実施形態と類似のアルゴリズムに従って変
更することで、上記実施形態と同様に任意の付属情報を
埋め込むようにすることができる。デュレーションタイ
ムの変更は、+1や−1程度の多少の変更では、あまり
気付かれないので、或る程度のデータ変更が許容され
る。その場合、第1のカギ情報KEY1で指定する順位
は、演奏データの先頭から(あるいは所定の範囲での)
所定数例えば5個のノートオンイベントの発生順を指定
する等が考えられる。すなわち、5個のノートオンイベ
ントの各音に対して順位0〜4を付与し、前記式3に従
うエンコード演算を行う。それによって求めた各変更目
標余り値d1〜d5に応じて、当該各5個のノートオンイ
ベントに対応する音のオリジナルのデュレーションタイ
ムm 1〜m5を前記式4に従って変更すればよい。演奏デ
ータ中には、多数の発音イベントがあるので、この変形
例によれば、埋め込むことのできる付属情報量が増す。
なお、演奏データ中にデュレーションタイムのデータを
直接的に有している場合は、そのデュレーションタイム
のデータを変更すればよい。演奏データ中にデュレーシ
ョンタイムのデータを直接的に有していない場合は、ノ
ートオフイベントのタイミングを変更することで、その
前のノートオンイベントからノートオフイベントまでの
時間間隔つまりデュレーションタイムを変更することが
できるので、そのようにすればよい。 〔第3実施形態〕次に、本発明の第3実施形態について
説明する。この第3実施形態は、上記第2実施形態と同
様に演奏データの値を操作することで所望の付属情報Y
の電子的透しを埋め込むようにしたものであるが、例え
ばMIDIのランニングステータスのような特殊なステ
ータスデータの使用/不使用をコントロールすること
で、所望の付属情報Yの電子的透しを埋め込むようにし
たものである。
【0090】例えば、1つのMIDIメッセージはステ
ータスバイトとデータバイトとからなり、ステータスバ
イトは当該イベントのステータスを示すステータス情報
を含んでいる。MIDIのステータスの1つとしてラン
ニングステータスがあることが知られている。MIDI
のランニングステータスとは、演奏シーケンスの中の或
るイベントのステータスがその直前のイベントのステー
タスと同じ場合はステータス情報を省略し、そのように
ステータス情報を省略することによって直前のイベント
ステータスと同じステータスであることを示すものであ
る。このランニングステータスは使用してもしなくて
も、音楽演奏の遂行に影響を与えるものではない。すな
わち、ランニングステータスを使用できる箇所でランニ
ングステータスを使用せずに、直前のイベントのステー
タスと同じステータスを示すステータス情報を当該イベ
ントに持たせるようにしても、音楽再生演奏の遂行に変
わりはない。このように、ランニングステータスの使用
/不使用は音楽演奏の遂行に影響を与えないので、この
ランニングステータスの使用/不使用に応じて音楽演奏
に悪影響を与えることなく、1ビットの電子的透し情報
を埋め込むことができる。
【0091】図13はこのようなエンコード処理を実現
しうるようにしたプログラムの一例を示す。ステップ2
00では、埋め込むべき付属情報Yとカギ情報KEYを
入力する。このエンコードアルゴリズムは比較的単純で
あるためカギ情報KEYは必須ではないが、例えば、演
奏データの特定範囲についてエンコード処理を施す場合
に、その範囲をカギ情報KEYで指定するようにすれば
よい。ステップ201では、演奏データ(主要情報)か
らランニングステータスを使用している箇所または使用
可能な箇所を検出する。次のステップ202では、当該
検出箇所の演奏データの内容を、付属情報Yの値(1ま
たは0)に応じて、ランニングステータスの使用又は不
使用となるように、変更(設定)する。例えば、Y=1
であれば、ランニングステータスを使用するようにデー
タ変更(設定)し、Y=0であれば、ランニングステー
タスを使用しないようにデータ変更(設定)する。
【0092】このように、ランニングステータスの使用
/不使用に応じて音楽演奏に悪影響を与えることなく、
1ビットの電子的透し情報を埋め込むことができる。基
本的には、1ビットの電子的透し情報を埋め込むだけで
あるが、各チャンネル毎に、あるいは演奏シーケンスの
所定範囲毎に、それぞれ1ビットの電子的透し情報を埋
め込むことで、合計複数ビットの付属情報の透し埋め込
みを行うことができる。その場合、付属情報の各ビット
同士の連結の仕方は、前述と同様に、種々のやり方を採
用することができる。このように、この第3実施形態に
よれば、電子的透し情報の埋め込み形態の多様化に役立
てることができる。多様な埋め込み形態が提供されるこ
とにより、それらを組み合わせることで、見破られにく
い複雑なエンコード化処理を行うことができるので、有
利である。
【0093】図13の手法に従って所望の付属情報に対
応する透し情報を埋め込んでなる演奏データから、付属
情報Yをデコードする処理は、基本的には上記各デコー
ド処理例と同様に、図13のエンコードアルゴリズムの
逆手順を行うことからなる。そのデコード処理プログラ
ムの一例を示すと図14のようである。まず、適宜の手
段によりカギ情報KEY(もしあれば)を取得し(ステ
ップ203)、これに基づきエンコード対象範囲の演奏
データから、ランニングステータスの使用箇所または使
用可能箇所を検出する(ステップ204)。該検出箇所
でランニングステータスが使用されていれば、付属情報
Yの値として「1」をデコードし、ランニングステータ
スが使用されていなければ、付属情報Yの値として
「0」をデコードする(ステップ205)。
【0094】ランニングステータスに限らず、当該ステ
ータス情報の使用/不使用が再生演奏に重大な影響を与
えない特定のステータスがあれば、その特定のステータ
スの使用/不使用をコントロールすることで、上記実施
例と同様に、1ビットの付属情報Yの電子的透しを埋め
込むことができる。例えば、そのような特定のステータ
スとして、ノートオフステータスがある。 〔第4実施形態〕次に、本発明の第4実施形態について
説明する。この第4実施形態は、上記第2及び第3実施
形態と同様に主要情報中のデータの値を変更操作するこ
とで所望の付属情報Yの電子的透しを埋め込むようにし
たものであるが、例えばMIDIのメタイベントのよう
な非演奏データに含まれるテキストデータのスペース数
を操作することで、所望の付属情報Yの電子的透しを埋
め込むようにしたものである。
【0095】MIDIメッセージでは、音楽演奏を直接
的にコントロールする演奏データのイベントデータのほ
かに、メタイベントといわれる非演奏データのイベント
を適宜挿入し得る。このメタイベントとしては、前述の
ような著作権情報のテキストや、その他の任意のテキス
トを埋め込むことができる。このテキストデータ中のス
ペースを多少増減しても、再生演奏にまったく影響を与
えないばかりか、該テキストの実質的内容に対しても影
響を与えない。よって、テキストデータ中のスペース数
を付属情報の値に応じて設定するデータ操作を行うこと
により、何ビットかの付属情報の電子的透しを埋め込む
ことができる。
【0096】図15はこのようなエンコード処理を実現
しうるようにしたプログラムの一例を示す。ステップ2
06では、埋め込むべき付属情報Yとカギ情報KEYを
入力する。このエンコードアルゴリズムは比較的単純で
あるためカギ情報KEYは必須ではないが、例えば、演
奏データの特定範囲についてエンコード処理を施す場合
に、その範囲をカギ情報KEYで指定するようにすれば
よい。ステップ207では、演奏データ(主要情報)か
らテキストデータを含むメタイベントを検出する。次の
ステップ208では、当該検出したメタイベントに含ま
れるテキストデータ中の合計のスペース数sを、付属情
報Yの値に応じた数に設定する。例えば付属情報Yがバ
イナリ3ビットの値をとる場合、合計スペース数sとし
ては0〜7のうつのいずれかの数に設定する。例えば、
付属情報Yの値が「4」であれば、当該メタイベント中
のテキストデータのスペース数の合計が「4」になるよ
うに、スペースデータの設定(追加又は削除)を行う。
【0097】このように、テキストメタイベント中の合
計スペース数を、付属情報Yの値に応じて設定すること
により、バイナリで何ビットかのデータからなる付属情
報Yの電子的透しを埋め込むことができる。この場合
も、電子的透し情報の埋め込み形態を多様にすることが
でき、見破られにくい複雑なエンコード化処理のために
役立つ。
【0098】図15の手法に従って所望の付属情報に対
応する透し情報を埋め込んでなる演奏データから、付属
情報Yをデコードする処理は、基本的には上記各デコー
ド処理例と同様に、図15のエンコードアルゴリズムの
逆手順を行うことからなる。そのデコード処理プログラ
ムの一例を示すと図16のようである。まず、適宜の手
段によりカギ情報KEY(もしあれば)を取得し(ステ
ップ209)、これに基づきエンコード対象範囲の演奏
データから、テキストメタイベント(非演奏データ)を
検出する(ステップ210)。該検出したテキストメタ
イベント中の合計スペース数sを検出する(ステップ2
11)。検出した合計スペース数sが、付属情報Yのデ
コード出力に相当する。
【0099】上記第4実施形態の変形例として、テキス
トメタイベント(非演奏データ)中の各語間のスペース
数を1又は2に設定することにより、バイナリ1ビット
の付属情報Yを埋め込むことが可能である。例えば、Y
=0のとき語間スペース数を1個に設定し、Y=1のと
き語間スペース数を2個に設定する。この変形例は、テ
キストメタイベント中の合計スペース数sによるエンコ
ード処理と組み合わせて適用し、埋め込み可能な付属情
報Yのビット数を増すことができる。その場合、例え
ば、語間スペース数が1個に設定されているときは合計
スペース数sは通常通り計数するが、語間スペース数が
2個に設定されているときは合計スペース数sは実際の
合計スペース数の1/2の値とする、といった変形を更
に加えることが可能である。 〔第5実施形態〕次に、本発明の第5実施形態について
説明する。この第5実施形態は、演奏データの中に、音
楽演奏再生に対して実質的な悪影響を与えないダミーデ
ータを挿入することで、該ダミーデータに応じた所望の
付属情報Yの電子的透しを埋め込むようにしたものであ
る。
【0100】一例として、或る演奏制御データ又は非演
奏データに続けてそれと同一の演奏制御データ又は非演
奏データを付加することでダミーデータの付加を行う。
例えば或るエフェクトに変更せよというような指示を行
う演奏制御データは、同一のものが連続していても、一
旦そのエフェクトに変更されると次は同じエフェクトが
維持されるだけであり、音楽演奏には悪影響を与えな
い。よって、このような演奏制御データはダミーデータ
として使用することができる。MIDIのメタイベント
のような非演奏データも、同一のものが連続していても
同じメタイベント処理が繰返されるだけであり、音楽演
奏には悪影響を与えない。従って、この場合も、音楽演
奏に悪影響を与えることなく、ダミーデータの有無に応
じて1ビットの電子的透しを埋め込むことができる。ま
た、この実施形態も、電子的透し情報の埋め込み形態を
多様にすることができ、見破られにくい複雑なエンコー
ド化処理のために役立つ。
【0101】図17はこのようなエンコード処理を実現
しうるようにしたプログラムの一例を示す。ステップ2
12では、埋め込むべき付属情報Yとカギ情報KEYを
入力する。このエンコードアルゴリズムは比較的単純で
あるためカギ情報KEYは必須ではないが、例えば、演
奏データの特定範囲についてエンコード処理を施す場合
に、その範囲をカギ情報KEYで指定するようにすれば
よい。また、ダミーデータの対象とするデータを何にす
るかをカギ情報KEYで指定してもよい。ステップ21
3では、演奏データ(主要情報)からダミーデータの対
象とするデータを検出する。例えば、コントロールチェ
ンジイベント(演奏制御データ)又はメタイベント(非
演奏データ)をダミーデータの対象とする。その場合、
コントロールチェンジイベント(演奏制御データ)又は
メタイベント(非演奏データ)のどちらか一方、あるい
は両方を、ダミーデータの対象とするといったことをカ
ギ情報KEYで指定し、ステップ213では指定された
対象データを演奏データから検出する。次のステップ2
14では、検出した対象データの後に同一のデータをダ
ミーデータとして、付属情報Yの値に応じた数だけ追加
する。例えばバイナリ1ビットからなる付属情報Yを埋
め込む場合は、Y=0のときダミーデータの追加を行わ
ず、Y=1のとき1個のダミーデータを追加する。同一
のダミーデータを複数追加するオプションが可能であ
り、そうすると2ビット以上の付属情報Yを埋め込むこ
とが可能である。
【0102】図17の手法に従って所望の付属情報に対
応する透し情報を埋め込んでなる演奏データから、付属
情報Yをデコードする処理は、基本的には上記各デコー
ド処理例と同様に、図17のエンコードアルゴリズムの
逆手順を行うことからなる。そのデコード処理プログラ
ムの一例を示すと図18のようである。まず、適宜の手
段によりカギ情報KEYを取得し(ステップ215)、
これに基づき演奏データからダミーデータの対象となる
データ(コントロールチェンジイベント又はメタイベン
ト)を検出し、同一の該対象データが連続しているか、
つまりダミーデータが存在するか、を検出する(ステッ
プ216)。ダミーデータが存在していればY=1をデ
コードし、ダミーデータが存在していなければY=0を
デコードする(ステップ217)。
【0103】この第5実施形態の変形例として、ダミー
データの時間位置を示す時間情報(インターバルデータ
△T)を、所望の付属情報Yの値に応じて設定すること
により、該時間情報に対応する値の付属情報Yを埋め込
むようにしてよい。この実施のためには、例えば図17
のステップ212での処理を、適宜複数ビットのデータ
からなる付属情報Yを入力するように変更し、また、ス
テップ214での処理を、Yの値が0であればダミーデ
ータを追加せずにそのまま処理を終了させ、Yの値が0
よりも大きければダミーデータを追加するとともに、該
ダミーデータのイベントタイミングつまりインターバル
データ△Tを、Yの値に対応する値に設定するように変
更する。この場合、図18でのデコード処理は、ステッ
プ217での処理を、ダミーデータが存在していれば、
そのイベントタイミングまでの時間つまりインターバル
データ△Tを取り出して、付属情報Yのデコード値とし
て出力する、というように変更すればよい。
【0104】この第5実施形態の別の変形例として、複
数の音源チャンネルのうち任意のチャンネルを発音に使
用しないダミーチャンネルに設定し、設定したダミーチ
ャンネルに応じた値の電子的透しを埋め込むようにして
もよい。例えば、音源チャンネル0〜8,10〜15の
15チャンネルのいずれかをダミーチャンネルに設定す
ることで、付属情報Yの電子的透しを埋め込む場合は、
15通りの値をとる付属情報Yを埋め込むことができ
る。例えば、付属情報Yの値が「8」の場合は、チャン
ネル順位8の音源チャンネル8をダミーチャンネルに設
定する。ここで、音源チャンネル8に既に割り当てられ
ていた演奏データがある場合は、該割り当てられていた
演奏データの一揃いを、別の空きチャンネルに割当てし
直すようにすればよい。このデコード処理は、演奏デー
タの複数チャンネルの中からダミーチャンネルを検出
し、このダミーチャンネルのチャンネル順位(使用しな
いチャンネル9は除外した順位)から付属情報Yの値を
デコードすることで行う。なお、ダミーチャンネルの設
定の仕方としては、ダミーチャンネルのフラグを立て、
また、該チャンネルにノートオンイベントが存在しない
ように適宜クリアすることで行う。 〔第6実施形態〕次に、本発明の第6実施形態について
説明する。この第6実施形態は、主要情報を構成する音
楽演奏データのうちの所定のデータについての統計分布
パターンを所定のエンコードアルゴリズムに従って、付
属情報に応じて、変更することで、この統計分布パター
ンの変更形態に対応した電子的透しの形態で付属情報を
埋め込むようにしたものである。
【0105】そのエンコード手法の一例を示す。
【0106】1楽曲中(又は所定の部分的曲範囲中)の
全演奏データのノートオンイベントに含まれるベロシテ
ィデータを所定の基準で複数グループに分類し、各グル
ープ毎に所定の統計数値を求め、その統計数値の分布パ
ターンが、埋め込むべき付属情報Yの値に応じて変更・
設定されるように、エンコード処理を行う。
【0107】まず、第1のカギ情報KEY1により、ベ
ロシティデータVelを分類するグループ数nを設定す
る。一例として、n=4と設定されたとして説明を進め
る。
【0108】次に、第2のカギ情報KEY2により、ベ
ロシティデータVelを分類するための関数f(Ve
l)を定義する。一例として、f(Vel)は、 f(Vel)=Vel mod n …(式6) であるとして、以下、説明を進める。ここで、Velは
ベロシティデータVelの値である。すなわち、ベロシ
ティデータVelの値を第1のカギ情報KEY1が示す
値「n」で割った商の余りが、f(Vel)である。n
=4の場合、この余り値は4通りの値0,1,2,3を
とるので、この余り値に応じて下記表1のようにグルー
プ0〜3に分類する。また、各グループ毎に所定の統計
値として、各グループに属するデータ数の比率(これを
それぞれR0%,R1%,R2%,R3%で示す)を求め、
これをオリジナル分布パターンOPとする。
【0109】
【表1】 なお、R0%+R1%+R2%+R3%=100%であり、
オリジナル分布パターンOPが完全に平均化された分布
を示す場合は、である。求めたオリジナル分布パターン
OPは、適宜保存しておき、デコード用のカギ情報KE
Y3として利用する。
【0110】このオリジナル分布パターンOPを、4通
りの値をとる付属情報Yの値に応じて、4つの変形分布
パターンP1,P2,P3,P4のいずれかに変形する
ことで、付属情報Yの電子的透しのエンコードを行う。
このエンコードアルゴリズムは下記の通りである。 パターンP1(例えばY=0のとき): グループ0に対して:+0と+1を半々に行う グループ1に対して:+0と+1を半々に行う グループ2に対して:+0と−1を半々に行う グループ3に対して:+0と−1を半々に行う 上記における「+0と+1を半々に行う」の意味は、当
該グループの半分のベロシティデータVelに対して+
0を演算し、残り半分のベロシティデータVelに対し
て+1を演算することを意味する。これにより、+0を
演算されたベロシティデータVelは当該グループに残
るが、+1を演算されたベロシティデータVelは下位
(便宜上、グループ番号の小さいものを上位、大きいも
のを下位という)のグループに移動することになる。例
えば、グループ0では、Vel mod 4=0であったと
ころ、Velに+1すると、Vel mod 4=1とな
り、下位のグループ1に移動することになる。勿論、こ
の+1又は−1の演算は、ベロシティデータVelの最
下位ビットに対してなされるので、ベロシティデータV
elの変更量はごく僅かである。なお、音量データの最
下位ビットの+1又は−1の変動は、ほとんど聴者に変
化として知覚されないので、悪影響はまったくない。
【0111】また、「+0と−1を半々に行う」の意味
は、当該グループの半分のベロシティデータVelに対
して+0を演算し、残り半分のベロシティデータVel
に対して−1を演算することを意味する。これにより、
+0を演算されたベロシティデータVelは当該グルー
プに残るが、−1を演算されたベロシティデータVel
は上位グループに移動することになる。例えば、グルー
プ3では、Vel mod4=3であったところ、Velに
−1すると、Vel mod 4=2となり、上位のグルー
プ2に移動することになる。
【0112】その結果、パターン1における各グループ
の統計値は、オリジナル分布パターンOPに対して下記
のように変更されたものとなる。 パターンP1の統計分布(統計値): グループ0:(R0/2)% → 12.5 % グループ1:(R0/2)+(R1/2)+(R2/2)% → 37.5 % グループ2:(R1/2)+(R2/2)+(R3/2)% → 37.5 % グループ3:(R3/2)% → 12.5 % なお、上記で →印を付して付記した具体的数字は、R
0%=R1%=R2%=R3%=25%と仮定したときの具
体的数値である。
【0113】他のパターン2,3,4のエンコードアル
ゴリズム及びその結果の各グループの統計分布(統計
値)は下記の通りである。 パターンP2(例えばY=1のとき): グループ0に対して:+0と+1を半々に行う グループ1に対して:+0と−1を半々に行う グループ2に対して:+0と−1を半々に行う グループ3に対して:+0と+1を半々に行う パターンP2の統計分布(統計値): グループ0:(R0/2)+(R1/2)+(R3/2)% → 37.5 % グループ1:(R0/2)+(R1/2)+(R2/2)% → 37.5 % グループ2:(R2/2)% → 12.5 % グループ3:(R3/2)% → 12.5 % パターンP3(例えばY=2のとき): グループ0に対して:+0と−1を半々に行う グループ1に対して:+0と−1を半々に行う グループ2に対して:+0と+1を半々に行う グループ3に対して:+0と+1を半々に行う パターンP3の統計分布(統計値): グループ0:(R0/2)+(R1/2)+(R3/2)% → 37.5 % グループ1:(R1/2)% → 12.5 % グループ2:(R2/2)% → 12.5 % グループ3:(R0/2)+(R2/2)+(R3/2)% → 37.5 % パターンP4(例えばY=3のとき): グループ0に対して:+0と−1を半々に行う グループ1に対して:+0と+1を半々に行う グループ2に対して:+0と+1を半々に行う グループ3に対して:+0と−1を半々に行う パターンP4の統計分布(統計値): グループ0:(R0/2)% → 12.5 % グループ1:(R1/2)% → 12.5 % グループ2:(R1/2)+(R2/2)+(R3/2)% → 37.5 % グループ3:(R0/2)+(R2/2)+(R3/2)% → 37.5 % 以上のようなエンコード処理を実現しうるように、適
宜、プログラムを組めばよい。図19は以上のようなエ
ンコード処理を実現しうるようにしたプログラムの一例
を示す。ステップ218では、埋め込むべき付属情報Y
と上記第1及び第2のカギ情報KEY1,KEY2を入
力する。前述の通り、説明の便宜上、KEY1によって
指定されるnは、n=4であるとし、KEY2によって
指定されるエンコード関数は前記(式6)のようである
として、説明を進める。次のステップ219では、各ベ
ロシティデータVelに対して、前記(式6)の演算を
行って、前記表1に示すように、各グループ0〜3のい
ずれかに各ベロシティデータVelを分類する。また、
各グループ0〜3毎に所定の統計処理を行って、前記表
1に示すように、オリジナル分布パターンを求め、これ
を第3のカギ情報KEY3として適宜保存する。次に、
ステップ220では、付属情報Yの値に応じて、前記変
形分布パターンP1〜P4のいずれかを選択し、選択し
たパターンP1〜P4に従う上記アルゴリズムに従っ
て、各グループ0〜3の各ベロシティデータVelの値
を+1又は+0又は−1する演算を行う。こうして、変
更されたベロシティデータVelの統計分布パターン
は、選択したパターンP1〜P4の上記統計分布に対応
する特性を示す。こうして、付属情報Yの値に対応する
統計分布パターンを示すように、各演奏データ中のベロ
シティデータVelの値が、+1又は+0又は−1とい
うわずかな値だけ変更される。
【0114】次に、図19の手法に従って所望の付属情
報に対応する透し情報を埋め込んでなる演奏データか
ら、付属情報Yをデコードする例について、図20を参
照して説明する。図20のデコード処理の仕方は基本的
には上記各デコード処理例と同様に、図19のエンコー
ドアルゴリズムの逆算を行うことからなる。まず、デコ
ード用のカギ情報KEY1,KEY2,KEY3を取得
する(ステップ221)。次に、ステップ222では、
演奏データ中の各ベロシティデータVelに対して、前
記(式6)の演算を行って、各グループ0〜3のいずれ
かに各ベロシティデータVelを分類し、更に、各グル
ープ0〜3毎に所定の統計処理を行って、その統計分布
を求め。この統計分布が前記変形分布パターンP1〜P
4のいずれに該当するかを検出する。このとき、カギ情
報KEY3として与えられるオリジナル分布パターンの
各統計値R0,R1,R2,R3を必要に応じて利用して、
変形分布パターンP1〜P4の検出処理を行う。ステッ
プ223では、検出したパターンP1〜P4に応じて付
属情報Yの値をデコードする。
【0115】このように、第6実施形態によれば、演奏
データ中の所定のデータについての統計分布パターンを
変更する構成であるため、仮に意図的であるにせよ、ま
たは無意識であるにせよ、演奏データの一部が改竄また
は編集によって変更されたとしても、統計分布パターン
が大きく変わる確率は相対的に低いので、不正利用者に
よる情報改竄防止に役立つと共に、正当利用者による無
意識的な付属情報の変更にも対処しうるものである。ま
た、電子的透し情報の埋め込み形態を多様にすることが
でき、見破られにくい複雑なエンコード化処理のために
役立つ。また、所定のデータの変更量が直接的に電子的
透し情報を示しておらず、その統計分布パターンが電子
的透し情報を示しているので、所定のデータの変更量は
上記実施例のように+1又は−1という僅かなものであ
り、該所定のデータとして+1又は−1程度の誤差に重
要性を持たないものを用いれば、かかるデータ値の僅か
な変更はまったく音楽再生演奏に悪影響を及ぼさない。
勿論、データ値変更の対象となるデータは、ベロシティ
データに限らず、他のデータ(例えば時間情報など)で
あってもよい。
【0116】なお、ベロシティデータの一部が編集によ
って変更されたとしても、オリジナル分布パターンOP
をカギ情報KEY3で知らせるようにしているので、図
20のデコード処理におけるステップ222で求めた統
計分布がいずれの変形分布パターンP1〜P4から大き
くかけ離れている場合は、ベロシティデータの一部が編
集によって変更されたと認識することができ、かつ、そ
の編集内容もある程度推測することができる。その結
果、正しい付属情報Yをデコードすることが可能であ
る。
【0117】上記第6実施形態に示す統計的エンコード
手法は、各チャンネル毎に、あるいは演奏シーケンスの
部分的区間毎に、等様々なグループ毎に、それぞれ施す
ことができ、これによって、複数の異なる付属情報Yを
電子的透しとしてそれぞれ埋め込むことができる。ま
た、1つのチャンネル内においても、ノート番号のグル
ープ(つまり鍵域)毎に異なる付属情報Yをそれぞれ埋
め込むことができる。どのようなグループ分類に従って
複数の付属情報Yがエンコードされているかについて
は、そのグループ分類法を示す第4のカギ情報KEY4
を更にデコード側に提供することで、デコード処理に役
立てるようにするとよい。 〔第7実施形態〕次に、本発明の第7実施形態について
説明する。この第7実施形態は、主要情報の中に付属情
報を電子的透しとして埋め込む(エンコードする)際
に、1つの付属情報に関連して複数の電子的透し情報を
該主要情報内に埋め込み、互いに関連する複数の電子的
透し情報の形態で1つの付属情報の電子的透しを埋め込
むことを特徴とするものである。これによって、電子的
透しの強化を図ることができ、容易には見破られにくい
複雑なエンコード化処理のために役立つ。また、付与可
能な1つの付属情報のビット数を増すことができ、付与
可能な付属情報の情報量を増すことができる。
【0118】その第1の例として、1つの付属情報Yを
複数の部分(例えば上位ビット部分Yaと下位ビット部
分Yb)に分割し、分割された各付属情報部分Ya,Y
b毎に、各々の電子的透し情報を主要情報内に埋め込
む。この場合、付属情報Yの再生は、主要情報から複数
の電子的透し情報(Ya,Yb)をそれぞれデコード
し、デコードされた各透し情報に対応する前記分割付属
情報部分Ya,Ybを組み合わせることで行う。
【0119】その第2の例として、所定の第1のエンコ
ードアルゴリズムに従って付属情報の少なくとも一部を
第1の電子的透し情報Yとして主要情報に埋め込む一方
で、第1のエンコードアルゴリズムに対応するデコード
用カギ情報KEY’を第2の電子的透し情報Y’として
主要情報に埋め込む。この場合、付属情報の再生は、主
要情報から第2の電子的透し情報Y’をデコードし、デ
コードされた第2の電子的透し情報をデコード用カギ情
報KEY’として使用して主要情報から第1の電子的透
し情報Yをデコードすることで行う。
【0120】図21は、上記第1及び第2の例を合わせ
て実行するエンコードアルゴリズムを示すプログラム例
である。ステップ230では、埋め込むべき付属情報Y
と複数のカギ情報K1,K2,K3,K4,K5を入力
する。ステップ231では、1つの付属情報Yを複数の
部分(例えば上位ビット部分Yaと下位ビット部分Y
b)に分割する。ステップ232では、第1のカギ情報
K1を用いて、所定のエンコードアルゴリズムA1に従
って、1つの分割付属情報部分Yaを主要情報の中に埋
め込む(エンコードする)。ステップ233では、第2
のカギ情報K2を用いて、所定のエンコードアルゴリズ
ムA2に従って、第3のカギ情報K3を主要情報の中に
埋め込む(エンコードする)。ステップ234では、第
3及び第4のカギ情報K3,K4を用いて、所定のエン
コードアルゴリズムA3に従って、第5のカギ情報K5
を主要情報の中に埋め込む(エンコードする)。ステッ
プ235では、第5のカギ情報K5を用いて、所定のエ
ンコードアルゴリズムA4に従って、もう一方の分割付
属情報部分Ybを主要情報の中に埋め込む(エンコード
する)。こうして、各分割付属情報部分Ya,Ybとカ
ギ情報K3,K5とを、電子的透し情報として主要情報
の中に埋め込む(エンコードする)。他のカギ情報K
1,K2,K4は、デコード処理時において適宜の手段
を介してユーザに提供されるようになっていればよい。
なお、各エンコードアルゴリズムA1〜A4は同じアル
ゴリズムであってもよいし、異なっていてもよい。ま
た、第1乃至第6実施形態として前述したエンコードア
ルゴリズムを適宜利用してよいのは勿論である。
【0121】図22は、図21の手法に従って所望の付
属情報Yに対応する複数の透し情報を埋め込んでなる主
要情報データ群から付属情報Yをデコードする手順を、
アルゴリズム結線を示すブロック図によって示す。A
1,A2,A3,A4の各ブロックは、上記エンコード
アルゴリズムA1〜A4のデコード用アルゴリズムを実
行するブロックを示す。すなわち、ブロックA1では、
前記エンコードアルゴリズムA1に従って主要情報の中
に埋め込まれた分割付属情報部分Yaを、第1のカギ情
報K1を用いて、デコードする。ブロックA2では、初
期値として与えられる第2のカギ情報K2を用いて、前
記エンコードアルゴリズムA2に従って主要情報の中に
埋め込まれた第3のカギ情報K3を、デコードする。ブ
ロックA3では、デコードされた第3のカギ情報K3
と、別途提供される第4のカギ情報K4とを用いて、前
記エンコードアルゴリズムA3に従って主要情報の中に
埋め込まれた第5のカギ情報K5を、デコードする。ブ
ロックA4では、デコードされた第5のカギ情報K5を
用いて、前記エンコードアルゴリズムA4に従って主要
情報の中に埋め込まれたもう一方の分割付属情報部分Y
bを、デコードする。こうして、それぞれデコードされ
た分割付属情報部分Ya,Ybを組み合わせることで、
所要の付属情報Yを取得する。
【0122】なお、図22において、ブロックA4から
ブロックA2にデータがフィードバックされ、このフィ
ードバックデータがカギ情報K2としてブロックA2で
使用されるようになっている。このようにカギ情報をル
ープさせることにより、デコード時におけるカギ情報K
2の内容を時間的に変化させ、これに伴い、時間経過に
伴い異なる付属情報がデコードされるようにすることが
できる。
【0123】図23は、別のデコード手順を示すアルゴ
リズム結線ブロック図であり、B1,B2,B3,B4
の各ブロックでは、それぞれ所定のエンコードアルゴリ
ズムB1〜B4でエンコードされた透し情報をそれぞれ
デコードするためのアルゴリズムを実行する。すなわ
ち、ブロックB1では、エンコードアルゴリズムB1に
従って主要情報の中に埋め込まれていた付属情報Y1
を、第1のカギ情報K1を用いて、デコードすると共
に、主要情報の中に埋め込まれていた第2のカギ情報K
2をデコードする。ブロックB2では、デコードした第
2のカギ情報K2と別途提供される第3のカギ情報K3
とを用いて、主要情報の中に埋め込まれていた第4のカ
ギ情報K4をデコードする。ブロックB3では、デコー
ドした第4のカギ情報K4を用いて、主要情報の中に埋
め込まれていた第5のカギ情報K5をデコードする。ま
た、ブロックB3からB2にカギ情報K3のフィードバ
ックループが形成されている。ブロックB4では、デコ
ードした第5のカギ情報K5とと別途提供される第6の
カギ情報K6とを用いて、主要情報の中に埋め込まれて
いた付属情報Y2をデコードする。こうして、2つの付
属情報Y1,Y2がデコードされる。なお、図22や図
23に示す複数デコードアルゴリズムの相互結線状態を
適宜のカギ情報によって設定するようにしてもよい。
【0124】本発明は、上記各実施例に示した形態に限
らず、他の如何なる変形を施した形態でも実施すること
ができる。また、本発明に従うソフトウェアプログラム
をコンピュータ又はマイクロプロセッサ又はDSP(デ
ィジタルシグナルプロセッサで実行する形態に限らず、
本発明に従うエンコード処理及び/又はデコード処理を
実現するようにICあるいはLSIあるいはディスクリ
ート回路群等でハードワイアードロジックで構成された
ハードウェア装置又はシステムを用いて、上記各実施例
と同等の機能を発揮する装置又はシステムを構成するこ
ともできる。
【0125】上記のすべての実施例に関連して、本発明
は、主要情報内に付属情報を組み込んで記憶するための
方法又は装置として構成することができ、さらには、そ
の方法を実施するためのプログラムを記録した記録媒体
として構成することができ、さらには、その方法に従っ
て記録されたデータ構造を持つデータを記憶した記録媒
体として構成することができる。
【0126】更に、上記のすべての実施例に関連して、
本発明は、付属情報を組み込んで記憶してなる主要情報
から、該付属情報を抽出し再生するための方法又は装置
として構成することができ、さらには、その方法を実施
するためのプログラムを記録した記録媒体として構成す
ることができる。
【0127】勿論、上記のすべての実施例において、図
1に示されたハードウェア装置は、パーソナルコンピュ
ータに限らず、マイクロプロセッサ又はDSP等の主理
装置を含む他の電子装置・機器によって置き換えること
ができる。また、音楽演奏の再生機器あるいは電子楽器
や楽音の合成/制御処理の分野に限らず、どのような電
子情報を取り扱う分野ででも本発明を適用することがで
きる。また、演奏データを取り扱う場合でも、そのデー
タフォーマットは図3に例示したようなものにはまった
く限定されず、如何なるデータフォーマットからなるも
のに対しても本発明を適用することができる。
【0128】また、上記各実施例において、必要な付属
情報のすべてを主要情報内に組み込む(埋め込む)こと
なく、付属情報の一部を主要情報内に組み込む(埋め込
む)ようにしてもよいのは勿論である。その場合、主要
情報内に組み込まなかった残りの付属情報は、適当な領
域に別途記憶しておいてもよい。
【0129】上記のすべての実施例に関連して、付属情
報を組み込んだ状態からなる主要情報を通信ネットワー
クを介して伝送するようにしてもよい。その場合、受信
側では、通信ネットワークを介して伝送されたデータを
受信し、受信したデータにおける主要情報からストリミ
ングデータのままリアルタイムでデコード処理を行うよ
うにしてもよいし、それができない場合は、受信したデ
ータ群を適宜バッファ記憶してからデコード処理を行う
ようにしてもよい。
【0130】
【発明の効果】以上の通り、本発明によれば、主要情報
に対する付属情報の埋め込み法に工夫を施したユニーク
な電子情報処理方法及びシステム並びに記録媒体を提供
することができ、オーソライズされていない不正利用者
によって見破られることの起こりにくい、従って、不正
利用者による意図的な改竄のしにくい、電子情報処理方
法及びシステム並びに記録媒体を提供することができ、
また、正当利用者による無意識のうちの付属情報の変更
も起こりにくいようにした電子情報処理方法及びシステ
ム並びに記録媒体を提供することができる。
【図面の簡単な説明】
【図1】 本発明の各実施形態に共通のパーソナルコン
ピュータ装置を示すブロック図。
【図2】 (A)はパーソナルコンピュータ装置のエンコ
ード機能を説明するための機能ブロック図、(B)はパー
ソナルコンピュータ装置のデコード機能を説明するため
の機能ブロック図。
【図3】 演奏データのフォーマット図。
【図4】 本発明の第1実施形態に係るエンコードプロ
グラムのフローチャート。
【図5】 本発明の第1実施形態に係るデコードプログ
ラムのフローチャート。
【図6】 本発明の第1実施形態に係る別のエンコード
プログラムのフローチャート。
【図7】 図6に対応するデコードプログラムのフロー
チャート。
【図8】 本発明の第1実施形態に係る更に別のエンコ
ードプログラムのフローチャート。
【図9】 図8に対応するデコードプログラムのフロー
チャート。
【図10】 本発明の第1実施形態に係る更に他のエン
コードプログラムのフローチャート。
【図11】 本発明の第2実施形態に係るエンコードプ
ログラムのフローチャート。
【図12】 本発明の第2実施形態に係るデコードプロ
グラムのフローチャート。
【図13】 本発明の第3実施形態に係るエンコードプ
ログラムのフローチャート。
【図14】 本発明の第3実施形態に係るデコードプロ
グラムのフローチャート。
【図15】 本発明の第4実施形態に係るエンコードプ
ログラムのフローチャート。
【図16】 本発明の第4実施形態に係るデコードプロ
グラムのフローチャート。
【図17】 本発明の第5実施形態に係るエンコードプ
ログラムのフローチャート。
【図18】 本発明の第5実施形態に係るデコードプロ
グラムのフローチャート。
【図19】 本発明の第6実施形態に係るエンコードプ
ログラムのフローチャート。
【図20】 本発明の第6実施形態に係るデコードプロ
グラムのフローチャート。
【図21】 本発明の第7実施形態に係るエンコードプ
ログラムのフローチャート。
【図22】 本発明の第7実施形態に係るデコード処理
のアルゴリズム結線例を示すブロック図。
【図23】 本発明の第7実施形態に係る別のデコード
処理のアルゴリズム結線例を示すブロック図。
【符号の説明】
11…CPU、12…ROM、13…RAM、14…内
部記憶装置、15…ドライブユニット、16…入力装
置、21…通信インターフェース、22…音源回路、3
0A…エンコーダ、30B…デコーダ。
フロントページの続き (56)参考文献 特開 平9−186603(JP,A) 特開2000−132165(JP,A) 特開 平11−265179(JP,A) 特開 平11−265180(JP,A) 特開 平11−265181(JP,A) 特開 平11−39796(JP,A) 特開 平5−199219(JP,A) 特開 平11−232179(JP,A) 特開 平11−327547(JP,A) 特開2000−81877(JP,A) 特開 平11−259067(JP,A) 特開 平11−259068(JP,A) 電子情報通信学会論文誌,Vol.J 80−D−1,No.7,July 1997,門田暁人外「ループを含むプログ ラムを難読化する方法の提案」,p. 644−652,(平成9年7月25日発行) 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 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 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 (58)調査した分野(Int.Cl.7,DB名) G10H 1/00 - 7/12 G10K 15/02 H04L 9/00 - 9/38 G09C 1/00 - 5/00 G10L 19/00 IEEE/IEE Electroni c Library Online INSPEC(DIALOG) JICSTファイル(JOIS) WPI(DIALOG)

Claims (17)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のデータからなる主要情報の中に付
    属情報を電子的透しとして埋め込む電子情報処理方法で
    あって、 所定のエンコードアルゴリズムに従って、前記主要情報
    におけるデータの配置または順序を前記付属情報の値に
    応じて変更するステップを具備し、前記主要情報におけ
    るデータの配置または順序の形態で前記付属情報の電子
    的透しを埋め込むことを特徴とする方法。
  2. 【請求項2】 請求項1の方法に従って電子的透しが埋
    め込まれた主要情報から前記付属情報をデコードする電
    子情報処理方法であって、 前記エンコードアルゴリズムに対応するデコード用カギ
    情報を提供するステップと、 前記提供されたカギ情報に基づき前記エンコードアルゴ
    リズムの逆算を行うことで、前記主要情報におけるデー
    タの配置または順序に隠されていた前記付属情報をデコ
    ードするステップとを具備する方法。
  3. 【請求項3】 前記主要情報が音楽演奏データであり、
    該主要情報におけるデータの配置または順序の変更は、
    その変更が該音楽演奏データに基づく音楽の再生に実質
    的に悪影響を与えないファクタについて為される請求項
    1又は2に記載の方法。
  4. 【請求項4】 前記主要情報が複数のチャンネルの音楽
    演奏データであり、該主要情報におけるデータの配置ま
    たは順序の変更は、該音楽演奏データのチャンネルを変
    更することからなる請求項1又は2に記載の方法。
  5. 【請求項5】 前記主要情報が音楽演奏データであり、
    該主要情報におけるデータの配置または順序の変更は、
    複数種類の音源設定情報の配列順序を変更することから
    なる請求項1又は2に記載の方法。
  6. 【請求項6】 音楽演奏データからなる主要情報の中に
    付属情報を電子的透しとして埋め込む電子情報処理方法
    であって、前記音楽演奏データは、個々の演奏データの
    ステータスを示すステータス情報を含み、 当該ステータスの使用/不使用が音楽演奏の遂行に重大
    な影響を与えない特定のステータスを使用するか否かを
    操作するステップを具備し、該特定のステータスの使用
    /不使用に応じた1ビットの電子的透しを埋め込むこと
    を特徴とする方法。
  7. 【請求項7】 音楽演奏データからなる主要情報の中に
    付属情報を電子的透しとして埋め込む電子情報処理方法
    であって、 前記音楽演奏データのうちの所定のデータについての統
    計分布パターンを所定のエンコードアルゴリズムに従っ
    て変更するステップを具備し、前記統計分布パターンの
    変更形態に対応した電子的透しを埋め込むことを特徴と
    する方法。
  8. 【請求項8】 請求項の方法に従って電子的透しが埋
    め込まれた主要情報から前記付属情報をデコードする電
    子情報処理方法であって、 デコード用カギ情報を提供するステップと、 前記提供されたカギ情報に基づき前記主要情報に隠され
    ていた前記付属情報をデコードするステップとを具備す
    る方法。
  9. 【請求項9】 主要情報の中に付属情報を電子的透しと
    して埋め込む電子情報処理方法であって、 1つの付属情報に関連して複数の電子的透し情報を前記
    主要情報に埋め込むステップを具備し、互いに関連する
    複数の電子的透し情報の形態で1つの付属情報の電子的
    透しを埋め込むことを特徴とする方法。
  10. 【請求項10】 前記埋め込むステップは、前記1つの
    付属情報を複数の部分に分割してなる各分割付属情報部
    分毎に、各々の電子的透し情報を前記主要情報に埋め込
    むことを特徴とする請求項に記載の方法。
  11. 【請求項11】 前記埋め込むステップは、 所定の第1のエンコードアルゴリズムに従って付属情報
    の少なくとも一部を第1の電子的透し情報として前記主
    要情報に埋め込む第1ステップと、 前記第1のエンコードアルゴリズムに対応するデコード
    用カギ情報を第2の電子的透し情報として前記主要情報
    に埋め込む第2ステップとを含むことを特徴とする請求
    8又は9に記載の方法。
  12. 【請求項12】 前記埋め込むステップは、前記第2の
    電子的透し情報をデコードするためのカギ情報を第3の
    電子的透し情報として前記主要情報に埋め込む第3ステ
    ップを更に含むことを特徴とする請求項11に記載の方
    法。
  13. 【請求項13】 請求項10の方法に従って電子的透し
    が埋め込まれた主要情報から前記付属情報をデコードす
    る電子情報処理方法であって、 前記主要情報から前記複数の電子的透し情報をそれぞれ
    デコードするステップと、 デコードされた各透し情報に対応する前記分割付属情報
    部分を組み合わせることで前記1つの付属情報を提供す
    るステップとを具備する方法。
  14. 【請求項14】 請求項11の方法に従って電子的透し
    が埋め込まれた主要情報から前記付属情報をデコードす
    る電子情報処理方法であって、 前記主要情報から前記第2の電子的透し情報をデコード
    するステップと、 デコードされた第2の電子的透し情報をデコード用カギ
    情報として使用して前記主要情報から前記第1の電子的
    透し情報をデコードし、前記付属情報の少なくとも一部
    を提供するステップとを具備する方法。
  15. 【請求項15】 複数のデータからなる主要情報の中に
    付属情報を電子的透しとして埋め込む電子情報処理シス
    テムであって、 所定のエンコードアルゴリズムに従って、前記主要情報
    におけるデータの配置または順序を前記付属情報の値に
    応じて変更する手段を具備し、前記主要情報におけるデ
    タの配置または順序の形態で前記付属情報の電子的透
    しを埋め込むことを特徴とするシステム。
  16. 【請求項16】 前記エンコードアルゴリズムに対応す
    るデコード用カギ情報を提供する手段と、 前記提供されたカギ情報に基づき前記エンコードアルゴ
    リズムの逆算を行うことで、前記主要情報におけるデー
    タの配置または順序に隠されていた前記付属情報をデコ
    ードする手段とを更に具備する請求項15に記載のシス
    テム。
  17. 【請求項17】 請求項1又は2に記載の方法を実行さ
    せるためのプログラムを記録したコンピュータ読み取り
    可能な記録媒体。
JP24682199A 1999-08-31 1999-08-31 電子情報処理方法及びシステム並びに記録媒体 Expired - Fee Related JP3178463B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP24682199A JP3178463B2 (ja) 1999-08-31 1999-08-31 電子情報処理方法及びシステム並びに記録媒体
US09/644,090 US6359573B1 (en) 1999-08-31 2000-08-23 Method and system for embedding electronic watermark information in main information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24682199A JP3178463B2 (ja) 1999-08-31 1999-08-31 電子情報処理方法及びシステム並びに記録媒体

Related Child Applications (1)

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

Publications (2)

Publication Number Publication Date
JP2001075559A JP2001075559A (ja) 2001-03-23
JP3178463B2 true JP3178463B2 (ja) 2001-06-18

Family

ID=17154206

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24682199A Expired - Fee Related JP3178463B2 (ja) 1999-08-31 1999-08-31 電子情報処理方法及びシステム並びに記録媒体

Country Status (2)

Country Link
US (1) US6359573B1 (ja)
JP (1) JP3178463B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230144216A1 (en) * 2020-09-04 2023-05-11 Roland Corporation Information processing device, information processing method, and non-transitory computer readable recording medium

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6209096B1 (en) * 1996-07-02 2001-03-27 Yamaha Corporation Method and device for storing main information with associated additional information incorporated therein
JP3022462B2 (ja) * 1998-01-13 2000-03-21 興和株式会社 振動波の符号化方法及び復号化方法
US6968564B1 (en) 2000-04-06 2005-11-22 Nielsen Media Research, Inc. Multi-band spectral audio encoding
US7508944B1 (en) * 2000-06-02 2009-03-24 Digimarc Corporation Using classification techniques in digital watermarking
US6931536B2 (en) * 2001-03-06 2005-08-16 Macrovision Corporation Enhanced copy protection of proprietary material employing multiple watermarks
JP3645193B2 (ja) * 2001-03-29 2005-05-11 株式会社第一興商 楽曲タイトル・著作者・著作隣接権者の字幕と著作権管理者のクレジット画像を表示するカラオケ装置
US20020181732A1 (en) * 2001-04-10 2002-12-05 Motorola, Inc Method of collaborative watermarking of a digital content
JP3675745B2 (ja) * 2001-08-21 2005-07-27 ソニー株式会社 付加データ埋め込み装置、付加データ埋め込み方法及び付加データ埋め込みプログラム
US20030131350A1 (en) 2002-01-08 2003-07-10 Peiffer John C. Method and apparatus for identifying a digital audio signal
JP3940894B2 (ja) * 2002-02-12 2007-07-04 ヤマハ株式会社 透かしデータ埋込み装置、透かしデータ取出し装置、透かしデータ埋込みプログラムおよび透かしデータ取出しプログラム
US20040001606A1 (en) * 2002-06-28 2004-01-01 Levy Kenneth L. Watermark fonts
WO2004038538A2 (en) 2002-10-23 2004-05-06 Nielsen Media Research, Inc. Digital data insertion apparatus and methods for use with compressed audio/video data
US8176527B1 (en) * 2002-12-02 2012-05-08 Hewlett-Packard Development Company, L. P. Correlation engine with support for time-based rules
CA2562137C (en) * 2004-04-07 2012-11-27 Nielsen Media Research, Inc. Data insertion apparatus and methods for use with compressed audio/video data
US7724916B2 (en) * 2005-01-03 2010-05-25 New Jersey Institute Of Technology System and method for data hiding using inter-word space modulation
US8452604B2 (en) * 2005-08-15 2013-05-28 At&T Intellectual Property I, L.P. Systems, methods and computer program products providing signed visual and/or audio records for digital distribution using patterned recognizable artifacts
US8312518B1 (en) * 2007-09-27 2012-11-13 Avaya Inc. Island of trust in a service-oriented environment
JP4956366B2 (ja) * 2007-10-16 2012-06-20 キヤノン株式会社 画像処理装置
EP2234400A1 (en) * 2009-03-23 2010-09-29 Sony Corporation Method and device for providing a multimedia content stream embedding processing information for the content
US9990478B2 (en) * 2012-11-30 2018-06-05 The Nielsen Company (Us), Llc Methods, apparatus, and articles of manufacture to encode auxiliary data into relational database keys and methods, apparatus, and articles of manufacture to obtain encoded data from relational database keys
US9099080B2 (en) 2013-02-06 2015-08-04 Muzak Llc System for targeting location-based communications
CN111492424A (zh) * 2018-10-19 2020-08-04 索尼公司 信息处理设备、信息处理方法以及信息处理程序

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB233498A (en) 1924-04-07 1925-05-14 Victor X Ray Corp Dental x-ray film package and container therefor
JP3542678B2 (ja) 1995-12-28 2004-07-14 沖電気工業株式会社 電子文書の単語間の空白部分の長さを利用した符号化および復号化方法、電子文書への署名情報の埋め込み方法、機密文書の暗号化方法
JP3178378B2 (ja) 1996-07-02 2001-06-18 ヤマハ株式会社 電子情報処理システム及び方法並びに記録媒体
US6209096B1 (en) 1996-07-02 2001-03-27 Yamaha Corporation Method and device for storing main information with associated additional information incorporated therein
JPH11265179A (ja) 1998-03-16 1999-09-28 Victor Co Of Japan Ltd 透かし情報埋め込み処理装置、透かし情報埋め込み方法、透かし情報読み出し処理装置及び透かし情報読み出し方法
JPH11265180A (ja) 1998-03-16 1999-09-28 Victor Co Of Japan Ltd 透かし情報埋め込み処理装置、透かし情報埋め込み方法、透かし情報読み出し処理装置及び透かし情報読み出し方法
JPH11265181A (ja) 1998-03-16 1999-09-28 Victor Co Of Japan Ltd 透かし情報埋め込み処理装置、透かし情報埋め込み方法、透かし情報読み出し処理装置及び透かし情報読み出し方法
JP2000132165A (ja) 1998-10-26 2000-05-12 Victor Co Of Japan Ltd 透かし情報埋め込み処理装置及び透かし情報埋め込み方法並びに透かし情報を埋め込んだデータを記録したコンピュータ読み取り可能な記録媒体
CA2260094C (en) * 1999-01-19 2002-10-01 Nec Corporation A method for inserting and detecting electronic watermark data into a digital image and a device for the same

Non-Patent Citations (4)

* 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
電子情報通信学会論文誌,Vol.J80−D−1,No.7,July 1997,門田暁人外「ループを含むプログラムを難読化する方法の提案」,p.644−652,(平成9年7月25日発行)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230144216A1 (en) * 2020-09-04 2023-05-11 Roland Corporation Information processing device, information processing method, and non-transitory computer readable recording medium
US11922913B2 (en) * 2020-09-04 2024-03-05 Roland Corporation Information processing device, information processing method, and non-transitory computer readable recording medium

Also Published As

Publication number Publication date
US6359573B1 (en) 2002-03-19
JP2001075559A (ja) 2001-03-23

Similar Documents

Publication Publication Date Title
JP3178463B2 (ja) 電子情報処理方法及びシステム並びに記録媒体
US7485795B2 (en) Method and device for storing main information with associated additional information incorporated therein
US6395970B2 (en) Automatic music composing apparatus that composes melody reflecting motif
JP3818186B2 (ja) 電子音楽装置および電子音楽装置用プログラム
JP2005084625A (ja) 電子透かし合成方法及びプログラム
US7205470B2 (en) Play data editing device and method of editing play data
JP4089162B2 (ja) 電子情報処理方法及び装置並びに記録媒体
JP4258565B2 (ja) 電子情報処理方法及び装置並びに記録媒体
JP4614307B2 (ja) 演奏データ処理装置及びプログラム
JP3849528B2 (ja) 電子音楽装置およびプログラム
JP3637196B2 (ja) 音楽再生装置
US6798885B1 (en) Method and apparatus for encoding security information in a MIDI datastream
JP3539188B2 (ja) Midiデータ処理装置
JP3658279B2 (ja) 電子透かし作成方法
JP4268322B2 (ja) 再生用符号化データ作成方法
JP3532485B2 (ja) 電子楽譜式音楽データのチャンネル数の削減編集方法、装置、プログラム記録媒体
JP4304870B2 (ja) 電子情報処理方法及び装置並びに記録媒体
JP3905743B2 (ja) 電子透かし埋め込み方法
JP2005338126A (ja) 演奏データ編集装置、演奏データ編集方法および演奏データ編集プログラム
JP3211646B2 (ja) 演奏情報記録方法及びその演奏情報の再生装置
Modegi Automatic synthesis of background music track data by analysis of video contents
JPH11265179A (ja) 透かし情報埋め込み処理装置、透かし情報埋め込み方法、透かし情報読み出し処理装置及び透かし情報読み出し方法
JP3931727B2 (ja) 演奏情報編集装置及びプログラム
JP2000132165A (ja) 透かし情報埋め込み処理装置及び透かし情報埋め込み方法並びに透かし情報を埋め込んだデータを記録したコンピュータ読み取り可能な記録媒体
JPH0887271A (ja) 演奏情報圧縮方法及び演奏情報伸張方法

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20090413

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090413

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100413

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110413

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20120413

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees