JP3879524B2 - 波形生成方法、演奏データ処理方法および波形選択装置 - Google Patents
波形生成方法、演奏データ処理方法および波形選択装置 Download PDFInfo
- Publication number
- JP3879524B2 JP3879524B2 JP2002025100A JP2002025100A JP3879524B2 JP 3879524 B2 JP3879524 B2 JP 3879524B2 JP 2002025100 A JP2002025100 A JP 2002025100A JP 2002025100 A JP2002025100 A JP 2002025100A JP 3879524 B2 JP3879524 B2 JP 3879524B2
- Authority
- JP
- Japan
- Prior art keywords
- performance
- data
- waveform
- sound
- partial
- 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
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【発明が属する技術分野】
本発明は、録音された楽器音や歌唱音を用いて演奏する際の波形生成方法、演奏データ処理方法、波形選択装置およびその方法に関する。
【0002】
【従来の技術】
従来、波形メモリ音源が知られている。波形メモリ音源は、ノートオンやノートオフ等のイベントデータに応じて波形メモリに記憶されている波形データを読み出して楽音を生成している。この際に、ノートオンに含まれる音高情報やタッチ情報に応じて波形メモリから異なる波形データが選択されるようになされている。
一方、サンプラーと称される電子楽器が従来から知られている。サンプラーでは、演奏された単音の波形をサンプリング(例えば、C3の音高を5秒間等)して収録し、収録した波形データを用いて楽音を生成している。この場合、サンプリングされた各波形データに対して、該波形データの音高を示すオリジナルキーはユーザが設定し、そのオリジナルキーに基づいてその波形データを使用する音域や、所定の音高で発音する際にピッチシフトする量などを決定している。オリジナルキーの決定方式に関しては、サンプリングされた波形データからピッチを抽出し、該波形データに対し抽出されたピッチに対応したオリジナルキーを自動設定することが行われている(例えば、特開平7−325579号参照)。
また、演奏されたフレーズ波形をサンプリングし、サンプリングされたフレーズ波形データを、該フレーズ波形データから抽出されたエンベロープレベルに基づいて複数の部分波形データに分割し、各部分波形データのタイミングやピッチを変更しながら演奏を行なうフレーズサンプラーも提案されている。
【0003】
【発明が解決しようとする課題】
従来のサンプラーのように、実際に演奏された音をサンプリングして収録し、収録された波形データを用いて楽音を生成しても、実際の楽器の演奏音より貧しい表情の音しか得ることができないという問題点があった。この場合、音高情報やタッチ情報に基づいて波形データを選択するようにしてもリアルな楽音を得ることができなかった。
【0004】
そこで、本発明は表情に富んだ楽音を生成することができる波形生成方法、演奏データ処理方法、波形選択装置およびその方法を提供することを目的としている。
【0005】
【課題を解決するための手段】
上記目的を達成するために、本発明の波形生成方法は、複数の部分波形を部分波形メモリに記憶し、該部分波形メモリに記憶されている各部分波形毎に、当該部分波形に対応する演奏音とその前および後の演奏音の2音の特性を示すデータを含む属性情報を属性情報メモリに記憶し、入力された現在の演奏イベント情報、並びに、その前および後の演奏イベント情報の2つの演奏イベント情報により前記属性情報メモリを参照して、前記2つの演奏イベント情報に対応する属性情報を有する部分波形を前記部分波形メモリから読み出し、該読み出された部分波形に基づいて、前記現在の演奏イベント情報に対応する楽音波形を生成するようにしている。
【0006】
また、上記目的を達成することのできる本発明の演奏データ処理方法は、各部分波形毎に、当該部分波形に対応する演奏音とその前および後の演奏音の2音の特性を示すデータを含む属性情報が属性情報メモリに記憶されており、処理を行う演奏データに含まれる各音符に対応する演奏音とその前および後の音符に対応する演奏音の2音の特性を示すデータと、前記属性情報メモリに記憶されている属性情報を対比することにより、該2音の特性を示すデータに近いデータを含む属性情報を有する当該音符に最適の部分波形を検出し、検出された部分波形を指定する指定データを前記演奏データ中の当該音符に付与し、該指定データが付与された音符を含む演奏データを記憶するようにしている。
さらに、上記目的を達成することのできる本発明の他の波形生成方法は、上記演奏データ処理方法により記憶された指定データが付与された音符を含む演奏データを再生する際の波形生成方法であって、部分波形メモリに複数の部分波形が記憶されており、前記演奏データに基づいて指定データの付与された音符を再生する際に、再生される音符に付与されている指定データに基づいて、前記部分波形メモリから部分波形を読み出し、読み出された部分波形に基づいて、当該音符に対応する楽音波形を生成するようにしている。
さらにまた、上記目的を達成することのできる本発明のさらに他の波形生成方法は、リアルタイム演奏用のパートと自動演奏用あるいは自動伴奏用のパートを含む複数パートの演奏データが記憶されており、発生されたテンポクロックに応じて、前記自動演奏用あるいは自動伴奏用のパートの演奏データを再生して伴奏音を発生すると共に、該伴奏音に合わせてリアルタイム演奏された演奏イベント情報を入力し、前記リアルタイム演奏された演奏イベント情報に応じて、前記リアルタイム演奏用の演奏パートから次の演奏音に対応する次音データを取得すると共に、当該演奏イベント情報と前記取得された次音データとに基づいて、当該演奏イベント情報に対応する楽音波形を生成するようにしている。
【0007】
次に、上記目的を達成することのできる本発明の波形選択装置は、部分波形メモリに記憶された複数部分波形から1ないし複数の部分波形を選択するための波形選択装置であって、各部分波形毎に、当該部分波形に対応する演奏音とその音の前の演奏音の2音の特性を示す属性データを記憶するデータベースと、順次演奏される演奏音のうちの現在の演奏音とその前の演奏音の2音の特性を示す特性データを入力し、入力された特性データにより前記データベースを参照して、入力された特性データに近い属性データを有する1ないし複数の部分波形を、前記現在の演奏音に対応する楽音波形を合成するための部分波形として抽出する検索手段とを備えている。
【0008】
また、上記目的を達成することのできる本発明の他の波形選択装置は、部分波形メモリに記憶された複数部分波形から1ないし複数の部分波形を選択するための波形選択装置であって、各部分波形毎に、当該部分波形に対応する演奏音とその音の次の演奏音の2音の特性を示す属性データを記憶するデータベースと、順次演奏される演奏音のうちの現在の演奏音とその次の演奏音の2音の特性を示す特性データを入力し、入力された特性データにより前記データベースを参照して、入力された2音の特性データに近い属性データを有する1ないし複数の部分波形を、前記現在の演奏音に対応する楽音波形を合成するための部分波形として抽出する検索手段とを備えるようにしている。
【0009】
このような本発明の波形生成方法によれば、発音制御情報に対応して最適の部分波形を用いて波形を生成することができ、表情に富んだ楽音を生成することができるようになる。
また、本発明の演奏データ処理方法によれば、演奏データ中の各音符の特徴に最適の部分波形データを、予め選択して演奏データの各音符に付与することができる。従って、この演奏データを用いることにより、自動演奏を行なう際の処理装置の負荷を増加させることなく、自動演奏における波形生成で最適の部分波形データを選択できるようになる。
さらに、本発明の波形生成方法によれば、リアルタイム演奏により楽音を生成する場合でも、リアルタイム演奏に対応する演奏情報を利用することにより、未来に行う演奏に応じて、現在の演奏により生成する楽音の特性を制御することができる。
さらにまた、演奏する音とその前に演奏する音、あるいはその次に演奏する音の2音の特性データに近い属性データを有する1ないし複数の部分波形を選択するようにすると、演奏する音の楽音を生成するための部分波形として最適の部分波形を選択することができるようになる。
【0010】
【発明の実施の形態】
本発明の波形生成方法および演奏データ処理方法を備える波形データ録音再生装置のハードウェア構成を図1に示す。
図1に示す波形データ録音再生装置1おいて、CPU10は各種プログラムを実行することにより波形データ録音再生装置1における録音や再生の動作を制御する中央処理装置(Central Processing Unit)であり、タイマ11は動作時の経過時間を示したり、特定の間隔でタイマ割込を発生するタイマであり、自動演奏の時間管理等に使用される。ROM12は、CPU10が収録時に実行する分割処理および属性情報付与処理のプログラムや、再生時に実行する演奏データ加工処理、ノートオンイベント処理等のプログラムが格納されていると共に、各種データが格納されているROM(Read Only Memory)である。RAM13は波形データ録音再生装置1におけるメインメモリであり、CPU10のワークエリア等が設定されるRAM(Random Access Memory)である。
【0011】
また、表示器14は収録時や再生時に各種情報が表示されるディスプレイであり、操作子15は収録時や再生時に各種の操作を行う際に操作される操作子であり、鍵盤を含んでいてもよい。音源16は、収録時に自動演奏される複数のフレーズの演奏データに基づく楽音を生成する音源であり、FM音源やPCM音源あるいは高調波合成音源等のいずれの音源でもよい。ミキサ17は、音源16で生成された楽音や後述する再生回路24で再生された楽音をミキシングしてDAC18に送るミキサであり、DAC18はミキサ17から供給された楽音データをアナログの楽音信号に変換してサウンドシステム19に送るデジタル−アナログ変換器である。サウンドシステム19は、DAC18から供給された楽音信号を増幅して放音している。
【0012】
マイクロフォン20は、演奏者が演奏した楽器音や歌唱した歌唱音が入力され、入力された楽器音や歌唱音のフレーズ波形信号はADC21に送られる。ADC21は、供給された音の波形信号をディジタルのフレーズ波形データに変換するアナログ−ディジタル変換器であり、変換されたフレーズ波形データは録音回路22の制御の基でHDD(Hard Disk Drive)23に録音される。録音されたフレーズ波形データは、後述するように音源16で収録時に再生された演奏データに基づいて部分波形データに分割され、分割された部分波形データには属性情報が付与される。この分割処理や属性情報付与処理は、CPU10が分割処理や属性情報付与処理のプログラムを実行することにより行われる。さらに、部分波形データの内の使用する部分波形データを選択して、選択された部分波形データに付与されている属性情報から演奏用の音色セットが作成されている。再生回路24は、音色セットの指定された音色における部分波形管理データベースを検索し、属性情報から最適の部分波形データを検索して演奏波形データを生成している。生成された演奏波形データは、ミキサ17、DAC18を介してサウンドシステム19から放音される。
【0013】
MIDIインタフェース25には、MIDI鍵盤等のMIDI対応機器から出力されるMIDI信号が入力され、MIDI信号中のイベントデータに基づいて再生回路24が上述したように演奏波形データを生成し、サウンドシステム19から演奏音が放音されるようになされている。その他のインタフェース26は、LAN(Local Area Network)や公衆電話網、インターネット等の通信ネットワーク用の通信インタフェースであって、通信ネットワークを介してサーバコンピュータと接続され、サーバコンピュータから所望の演奏データ等をダウンロードすることができる。なお、27は各デバイス間で信号を送受信するためのバスラインである。
【0014】
次に、本発明にかかる波形データ録音再生装置1においてフレーズ波形データを録音して部分波形データに分割する処理を図2ないし図6を参照しながら以下に説明する。
本発明にかかる波形データ録音再生装置1においてフレーズ波形データを録音する際には、図3(a)に示すように自動演奏手段31に複数のフレーズからなる演奏データ30を供給して自動演奏させる。フレーズには録音したい音高等の特徴情報を有する音符が含まれている。この自動演奏手段31は、図1に示すCPU10および音源16により主に構成されている。そして、CPU10が自動演奏プログラムを実行することにより、ROM12あるいはRAM13から読み出した演奏データに基づいて音源パラメータを生成し、この音源パラメータを音源16に供給することにより、音源16において生成された演奏波形データは、ミキサ17、DAC18を介してサウンドシステム19に接続されているヘッドフォン36から放音される。ヘッドフォン36は演奏者32が装着しており、演奏者32は演奏音を聴取することができる。なお、録音したいパートの演奏データやその他のパートの演奏データを含む、例えばSMF(Standard MIDI File)等の形式とされた1ないし複数パートのフレーズのシーケンスデータが予め作成されており、これが演奏データとしてRAM13等に格納されている。
【0015】
そして、演奏者32はその演奏データに基づく演奏音を聴取しながら、演奏音に従って図示しない楽器を演奏したり、あるいは歌唱する。この演奏者32による演奏音あるいは歌唱音は、演奏音を聴取しながら行われるため、その演奏音あるいは歌唱音は自然な音になる。この演奏音あるいは歌唱音のフレーズ波形はマイクロフォン20を介して波形録音手段33に供給され、フレーズ波形はサンプリングされてディジタルのフレーズ波形データ34とされてフレーズ毎に録音されるようになる。この場合、自動演奏手段31と波形録音手段33とのクロックはクロック同期ライン35により同期化されており、演奏タイミングに同期化されてフレーズ波形データが録音されるようになる。この同期化では、波形録音手段33のサンプリングクロックと自動演奏手段31の動作クロックとを共通化すると共に、自動演奏開始と録音開始とのタイミングを一致させる、あるいは、両タイミングの差を記憶するようにしている。これにより、録音したフレーズ波形データ34と自動演奏される演奏データの全区間にわたる同期が保証されるようになる。したがって、演奏データのテンポが途中で変更されていたとしても、同期化には全く影響を与えないようになる。
【0016】
ここで、自動演奏される演奏データとフレーズ波形データとの関係の概略を図2に示す。この場合の演奏データは、図2(a)に示すように五線譜上の音譜で表されており、この演奏データによる自動演奏音をヘッドフォン36から聴取しながら、その演奏音に合わせて演奏あるいは歌唱して録音されたフレーズ波形は図2(b)に示すような波形となっている。この場合、演奏データの四分音符「E(ミ)」は波形aに対応し、同様に演奏データの四分音符「A(ラ)」は波形bに対応し、演奏データの八分音符「F(ファ)」は波形cに対応し、演奏データの八分音符「E(ミ)」は波形dに対応し、演奏データの四分音符「C(ド)」は波形eに対応し、演奏データの音符「F(ファ)」は波形fに対応している。上述したように同期化されているため、各波形は演奏データの演奏タイミングに合致していると共に、音符に対応した音の長さの波形となっている。さらに、波形からはわからないが、演奏データに基づく演奏音を聴きながら演奏しているため、その音色も自然な音色とされた波形となっている。
【0017】
また、波形録音手段33は、図1に示すCPU10、ADC21、録音回路22、HDD23により構成されている。そして、CPU10の制御の基でマイクロフォン20から入力された演奏音あるいは歌唱音であるフレーズ波形をADC21においてサンプリングしてディジタルのフレーズ波形データ34に変換している。このフレーズ波形データ34は録音回路22によりHDD23の所定の記憶領域に書き込まれて録音される。なお、自動演奏の態様は、次に示すいずれの態様でもよい。第1の自動演奏の態様は、当該フレーズの録音したいパート(録音パート)だけの演奏データからなるソロパート演奏である。第2の自動演奏の態様は、当該フレーズの録音したいパートを含む複数パートの演奏データからなる全パート演奏である。第3の自動演奏の態様は、当該フレーズの録音したいパートを除く1ないし複数パートの演奏データ、あるいは上記その他のパートの演奏データからなるマイナスワン演奏である。
【0018】
本発明にかかる波形データ録音再生装置1においてフレーズ波形を録音する際に、図3(b)に示すようにして録音してもよい。図3(b)に示す構成では、ヘッドフォン36に代えてスピーカ37から自動演奏音を演奏者32に聴取させている。ここで、図3(b)に示す構成のうち、図3(a)に示す構成と異なる部分だけ説明すると、図3(b)に示す構成では、自動演奏手段31から出力される自動演奏音をスピーカ37から放音して演奏者32に聴取させている。この場合、スピーカ37からの自動演奏音はマイクロフォン20で拾われるようになるので、スピーカ音除去処理手段38によりマイクロフォン20で拾われた自動演奏音を除去している。なお、スピーカ音除去処理手段38には自動演奏手段31から自動演奏音が供給されており、この自動演奏音の位相を反転すると共に、時間調整・振幅調整を行うことにより自動演奏音を除去するようにしている。
【0019】
自動演奏手段31において自動演奏を、上述したいずれかの態様の演奏として、演奏者32による演奏音あるいは歌唱音のサンプリングを波形録音手段33において行なっているため、録音されたフレーズ波形データには録音したいパート(録音パート)に対応する波形分割のための演奏データ(対応演奏データ)が必ず存在することになる。
そこで、図4に示すように分割処理手段41において、自動演奏された演奏データ44に従って、フレーズ波形データ40を演奏データ44の各音符に対応するノートの部分波形データ43に分割する。次いで、属性情報付与処理手段42において、分割された部分波形データ43に、その音高、音長や強度等の属性を示す属性情報を対応する演奏データ44の各音符の特徴情報を参照して付与する。このように、フレーズ波形データ40を部分波形データ43に分割する分割処理手段41、および、分割された部分波形データ43に属性情報を付与する属性情報付与処理手段42は、CPU10が分割処理プログラムや属性情報付与処理プログラムを実行することにより行われる。
【0020】
この場合、演奏データ44にフレーズ波形データ40は同期しているため、演奏データ44の発音タイミング等だけでも部分波形データ43へ分割することができる。また、フレーズ波形データ40を周波数分析(フォルマント分析)してその分割位置を補正するようにしてもよい。すなわち、演奏データ44に従って仮決定された仮の分割位置を基準にして、その近傍で部分波形データ43のフォルマントの開始位置をサーチし、検出された開始位置を分割位置として決定することができる。このようにすると、フレーズ波形データ40の分析結果だけに基づいて分割するのに比べて、音楽的に正確な位置での分割が可能になる。
【0021】
さらに説明すると、演奏データ44だけによる分割手法では、自動演奏される演奏データ44とフレーズ波形データ40は、完全に同期がとれた状態とされていることを利用して分割している。このため、録音パートの演奏データ44に含まれる各音符のデータに従って、各音符に対応する時間範囲(音符に対応する音のスタートタイミング(ノートオン)からリリース開始(ノートオフ)後の音の減衰するまで、または、次の音符の音が始まるまでの時間範囲)のフレーズ波形データ40を部分波形データ43として切り出すことができる。
しかし、フレーズ波形データ40は人間が行なった演奏をサンプリングしたものであるため、録音パートの演奏データ44の音符のスタートタイミングと、フレーズ波形データ40のその音符に対応する波形のスタートタイミングとは必ずしもあっておらず、ずれている場合もある。
そこで、録音パートの演奏データ44の各音符の開始タイミングを基準に、フレーズ波形データ40のその前後区間(例えば開始タイミングの前後数秒)の波形を分析し、フレーズ波形データ40における音符の開始タイミングを検出して分割位置を補正するようにすると、部分波形データ43を正確に切り出すことができるようになる。
【0022】
分割位置を補正する際に用いる波形分析手法としては、フォルマント分析およびFFT分析を採用することができる。このフォルマント分析では、まず、録音パートの演奏データ44の各音符の開始タイミングを基準に、フレーズ波形データ40の前後区間の波形データの相関関数からLPC(Linear Prediction Coding)係数を算出する。次いで、LPC係数をフォルマントパラメータに変換してフレーズ波形データ40におけるフォルマントを求める。そして、当該音符に対応するフォルマントの立上がり位置からその音符の開始タイミングを検出する。これにより、音楽的に正確な位置で部分波形データ43を切り出して、ノート毎の部分波形データ43に分割することができる。
また、FFT分析では、まず、録音パートの演奏データ44の各音符の開始タイミングを基準に、フレーズ波形データ40の前後区間について時間窓を移動しながらフレーズ波形データ40の高速フーリエ変換を行う。次いで、当該音符に対応する基音および複数倍音の軌跡を検出し、検出された基音および倍音の軌跡における立上がり位置から開始タイミングを検出する。この手法によっても、音楽的に正確な位置で部分波形データ43を切り出して、ノート毎の部分波形データ43に分割することができる。ここでは、フォルマント分析とFFT分析について説明したが、分割位置を補正するための分析には、その他のピッチ分析やエンベロープ分析等の分析方法を用いてもよい。
【0023】
分割処理が終了すると、分割された各部分波形データに対して属性情報が付与される属性情報付与処理が行われる。この属性情報付与処理では、演奏データ44の各音符に対応する部分波形データ43に、その音符の特徴情報に対応する属性情報が付与される。この属性情報には、オリジナルキーとして使用される音高情報、オリジナル強度として使用される強度情報、オリジナル音長として使用される音長情報、部分波形データを選択するのに使用される前音情報および後音情報のいずれか1つの情報ないし複数の情報が含まれている。すなわち、音高情報、強度情報、音長情報は、それぞれ、演奏データ44の当該部分波形データが切り出された位置に対応する音符(現音と呼ぶ)のイベントの音高、強度、音長の値を有する。また、前音情報とは、前音の音高が現音より上か下かの情報、または前音との音高差の情報、前音の強度が現音より大か小かの情報、または前音との強度差の情報、および、前音の音長が現音より長いか短いか同じかの情報、または前音との音長差の情報やその他前音と現音との関係に関する情報などである。この場合、これらの情報の値は、演奏データ44における現音とその前の1ないし複数の音符のイベントに基づいて決定することができる。また、後音情報とは、前音情報における前音を後音に置き換えた際の後音と現音との関係に関する情報である。これらの情報の値も、同様に、演奏データ44における現音とその後の1ないし複数の音符のイベントに基づいて決定することができる。さらに、演奏データ44が、スラー、トリル、クレッシェンド等の音楽記号を含む演奏データとされている場合は、その音楽記号を属性情報に含ませてもよい。この属性情報は、当該部分波形データを選択する基準として使用されたり、当該部分波形データを加工するときのパラメータとして使用される情報とされる。なお、所望の属性情報に対応した音符を演奏データに含めて録音を行なうことにより、所望の属性情報に対応した部分波形データを得ることができる。
【0024】
図4に示すように分割処理手段41において部分波形データ43に分割され、分割された部分波形データ43に属性情報付与処理手段42において属性情報が付与される。分割処理された部分波形データ43や付与された属性情報は、HDD23に演奏データ等と共に1つの収録データとして記憶されている。フレーズ波形データ40は、楽器種類やボーカル音色毎に録音されることから、収録データは音色毎に記録されることになる。この収録データのデータ構成を図5に示す。図5に示すように、収録データは自動演奏された複数フレーズとされている演奏データと、各フレーズの演奏データに対応するフレーズ波形データが記憶領域のどこの位置に記憶されているかを管理するフレーズ波形管理情報と、フレーズ波形データを分割した部分波形データの記憶領域におけるスタート位置や終了位置およびその部分波形データの属性情報からなる部分波形管理情報と、各フレーズの演奏データに対応するフレーズ波形1,フレーズ波形2,・・・・から構成されている。なお、このフレーズ波形iに付けられている番号iは、後述するフレーズ波形IDである。各フレーズ波形の各フレーズ波形のデータは、前述したような方法で複数の部分波形データに分割されるが、その分割された態様がフレーズ波形1に例示されている。すなわち、フレーズ波形1は、部分波形1−1,部分波形1−2,・・・,部分波形1−6の6つの部分波形データに分割されている。なお、この部分波形データi−jに付けられている番号i−jは、後述する部分波形IDである。
【0025】
図5に示す収録データは、演奏データ毎に収録されたフレーズ波形データを分割処理して属性の付与処理を行った結果のデータとされており、フレーズ波形データは楽器種類やボーカル音色毎に録音される。すなわち、収録データは音色毎に作成されることになることから、演奏イベントデータに応じて収録データから対応する部分波形データ読み出して用いることにより、その音色の演奏波形データを得ることができる。しかし、図5に示す収録データにおける複数の部分波形データには属性情報の音高等が重複した部分波形データや不要な部分波形データも記録されている。そこで、収録データのうちから使用する部分波形データを選択し、選択された部分波形データにより演奏用の音色セットを作成している。音色セットを作成する際に、いずれの部分波形データを選択するかの選択情報、音色パラメータ等が音色管理情報として収録データ中に記録されており、この音色管理情報に従って音色セットが作成されるようになる。このことから、図5に示す収録データを音色セット作成ツールと称することができる。なお、音色管理情報は、ユーザの所望に応じて選択された部分波形データを選択する選択情報、ユーザにより設定された音色パラメータ等を含んでいる。
【0026】
この音色セットのデータ構成を図6に示す。図6に示す演奏用の音色セットは、「バイオリン1」,「男声4」,「トランペット2」,・・・等の音色毎の音色データから構成されている。各音色データのデータ構成は同様とされており、例として「男声4」のデータ構成が図6に示されている。図6に示すように、音色データは、ヘッダ、部分波形管理データベース、音色パラメータおよび部分波形プールから構成されている。部分波形プールには、図5に示す収録データにおける音色管理情報に従って複数のフレーズ波形データの中から選択した部分波形のデータが図6に示すように部分波形1,部分波形2,部分波形3,・・・としてプールされている。この場合、音色管理情報により多くの音高に対応する部分波形データが選択されると、部分波形データを割り当てる音域を細かく設定することができるようになる。また、音高情報が同じでも音長情報や強度情報が異なっていたり、前音との音高差や前音の音高が上か下か等の情報が異なっている部分波形データも選択される音色管理情報とされていてもよい。
【0027】
このようにして作成された音色セットにおける部分波形管理データベースには、上記音色管理情報に従って選択された部分波形データにおける、前記部分波形プールにおける記憶領域のスタート位置や終了位置およびその部分波形データの属性情報が記録されている。また、上記音色管理情報に含まれていた音色パラメータがそのまま音色パラメータの記憶領域に記憶されており、該音色パラメータには、その音色におけるエンベロープパラメータやフィルタ係数が記録されている。
音色セットにおける音色毎に作成されている音色データは、図5に示す収録データから異なる組み合わせで部分波形データを選択するようにすると、1つの収録データから複数の音色データを作成することができる。そして、本発明にかかる波形データ録音再生装置1では、このようにして作成された音色セットを用いて自動演奏やリアルタイム演奏を行うことができるようにされている。
【0028】
前記部分波形プールに記憶されている音色管理情報に従って選択された部分波形の属性情報等が記録されている部分波形管理データベースのデータ構成を図7に示す。部分波形管理データベースは、部分波形プールに記憶されている部分波形1,部分波形2,部分波形3,部分波形4・・・の部分波形毎の特性を示す部分波形1レコード,部分波形2レコード,部分波形3レコード,部分波形4レコード・・・・のレコード情報から構成されている。各レコード情報のデータ構成は同様とされており、部分波形3レコードのデータ構成の詳細が図7に示されている。すなわち、部分波形3レコードで代表されるレコード情報は、部分波形のID(PWID)、部分波形の名前(PWNAM)、部分波形の作成日(PWDAT)、部分波形の作成者(PWAUT)を含んでいる。この、部分波形のIDは図8に示すようにフレーズ波形ID(上位10ビット)と部分波形ID(下位6ビット)とから構成されている。なお、フレーズ波形IDは、部分波形を切り出した切り出し元のフレーズ波形のフレーズ波形IDであり、部分波形ナンバは、そのフレーズ波形から何番目に切り出した部分波形かを示す番号とされている。このような構成の部分波形のID(PWID)とすることにより、当該部分波形の切り出し元であるフレーズ波形を特定することができるようになり、ユーザが部分波形を選択する時に、その切り出し元のフレーズ波形を聴いてどういう素性の部分波形であるかを確認することができるようになる。
【0029】
さらに、各レコード情報は、部分波形データにおけるその音の音高(PWPIT)、強度(PWINT)、音長(PWLEN)の各情報と、その音と次音との2音の関係を示す次音の音高比(PWFPR)、次音の強度比(PWFIR)、次音の音長比(PWFLR)と、その音と前音との2音の関係を示す前音の音高比(PWBPR)、前音の強度比(PWBIR)、前音の音長比(PWBLR)の各情報を含んでいる。なお、これらの情報の内の比の情報は、比に限るものではなく差の情報としてもよい。
ところで、これらのレコード情報における各情報は、属性付与情報処理で付与される属性情報における各情報と対応している。その対応関係は次の通りである。
前述したように、これらの情報の値は、各部分波形データの切り出し後に、その切り出し元であるフレーズ波形データに対応する演奏データのその切り出し位置に対応する音符のイベント、および、その前後の音符のイベントに基づいて自動決定されている。しかしながら、ユーザが各情報の値を個別に入力したり、その自動決定された各情報の値を変更できるようにしてもよい。
【0030】
さらに、部分波形プールの記憶領域における当該部分波形が保存されているスタートアドレス(PWSA)、エンドアドレス(PWEA)、ビートアドレス(PWBA)、ループアドレス(PWLA)の各情報が含まれている。この場合、スタートアドレスとエンドアドレスは必須の情報であるが、ビートアドレス、ループアドレスはなくてもよい。なお、ビートアドレスは、部分波形におけるビート位置(拍を感じる位置)を示しており、部分波形データを使用する時は、このビート位置を、演奏データの音符のタイミングに合わせるようにする。このビートアドレスは、例えばソフトに演奏された演奏データとされて、演奏された各音符のスタート位置が明確でない場合に好適な情報となる。さらに、ループアドレスは、部分波形中の変化の少ない定常的な部分をループ波形の繰り返しに置き換えた場合における、そのループ波形のアドレスである。なお、ループにより部分波形を短縮した場合でも、部分波形の音長(PWLEN)情報は変化しない。このように、音長(PWLEN)情報は波形データの長さではなく、その音が演奏されたときの音符の長さを示す情報とされている。
【0031】
さらにまた、部分波形管理データベースにはスラーの程度(PWSLR)、ビブラート深さ(PWVIB)およびその他の情報が含まれている。ここで、スラーの程度の値は、前音のノートオンと現音のノートオンが重なっており、その重なりが小さく、かつ、前音と現音の強度差が小さいほど大きくなる。また、ビブラートの深さは、部分波形データのピッチの揺れ幅の同部分波形データの基本ピッチに対する比である。
なお、上述した部分波形管理データベースを、部分波形のスタートアドレス、エンドアドレス等のアドレス情報を記憶するデータベースと、部分波形を検索するための部分波形の残りの情報を記憶するデータベースの2つに分離してもよい。この場合、部分波形の選択に必要なのは、後者の検索用のデータベースのみとなり、前者のアドレス情報のデータベースを音源16に内蔵するようにすれば、CPU10の行うべき処理を軽減することができる。
【0032】
ここで、図5のようなデータ構成を有する音色セット作成ツールにおいて、図6ないし図8に示す演奏用の音色セットを作成する手順を示す図9のフローチャートに従って、その手順をまとめて説明する。なお、この手順は音色セットを作成するユーザが行う手順である。
まず、音色セットを作成するユーザは、録音パートに必要な音高の音符を少なくとも含む複数フレーズの演奏データを図5の演奏データ記憶領域に用意する(ステップS1)。この場合、録音に必要な特徴情報を有する音符としては、音高に加えて音長、ベロシティ、前音情報、前音との音高差等の特徴情報を有する音符を含むフレーズの演奏データとしてもよい。次いで、用意した複数フレーズの演奏データに基づいて波形データ録音再生装置1において自動演奏された楽音を演奏者に供給しながら、演奏者が演奏あるいは歌唱したフレーズ波形を波形データ録音再生装置1の図5のいずれかのフレーズ波形記憶領域に収録する(ステップS2)。
【0033】
この収録されたフレーズ波形データに対して、波形データ録音再生装置1において、収録データにおける演奏データに基づいて、フレーズ波形データに分割処理が施されて部分波形データに分割されると共に、分割された部分波形データに対応する音符に関連した属性情報が付与される。分割された各部分波形データのスタート位置、終了位置、および各部分波形に付与された属性情報は、各部分波形の部分波形管理情報として図5の部分波形管理情報記憶領域に記憶される(ステップS3)。次いで、ユーザの操作子操作に応じて、部分波形データを選択的に組み合わせると共に、エンベロープパラメータ等の音色パラメータを用意し、選択された部分波形データを示す選択情報と用意された音色パラメータを音色管理情報として図5の音色管理情報記憶領域に記憶する(ステップS4)。
【0034】
以上のステップS1ないしステップS4の手順によって完成した1音色分の音色データに基づいて、次のようにして図6の音色セットの1音色分の音色データが記憶領域に用意される。まず、図5のフレーズ波形記憶領域に記憶された複数の部分波形データのうち、音色管理情報中の選択情報により選択された部分波形データが図6の当該音色の部分波形プールにコピーされ、そのコピー後の各部分波形データのスタート位置と終了位置、および、コピーされた各部分波形データのIDや名前、作成者等を含む属性情報が図6の部分波形管理データベースに記憶される。次に、図5の音色管理情報中の音色パラメータが、図6の当該音色の音色パラメータ記憶領域にコピーされる。最後に、当該音色のタイプ、音色名、音色データ容量等を示すヘッダ情報が図6のヘッダ領域に記憶され、音色セット中の演奏用の音色データが完成する。
なお、ステップS3において、フレーズ波形データの部分波形データへの分割位置や付与される属性情報を自動的に決定した後、その分割位置や属性情報をユーザが任意に修正できるようにしてもよい。
【0035】
次に、本発明にかかる波形データ録音再生装置1において図6に示す演奏用の音色セットを自動演奏に適用するには、自動演奏する前に予め演奏データを加工するようにする。この演奏データは、自動演奏をユーザが所望する任意の演奏データである。そこで、音色セットを自動演奏に適用した際の演奏データ加工処理のフローチャートを図10に示し、その説明を以下に行う。
図10に示す演奏データ加工処理が起動されると、ステップS10にて処理したい演奏データが指定される。この指定は、ユーザがROM12あるいはRAM13内に記憶されている演奏データの内の自動演奏したい演奏データを指定する。ここでは、簡単化のため該演奏データは1パート構成の単旋律の演奏データとする。次いで、ステップS11にてポインタを指定された演奏データの先頭の音符に設定する。そして、ステップS12にてポインタが指し示す音符(この場合は演奏データの先頭の音符)における、音高、強度(ベロシティ)、音長、前音/次音の音高比、前音/次音の強度比、前音/次音の音長比等の特徴情報により、音色セットにおける指定されている音色の部分波形管理データベースにおける検索用の情報を検索して、最適の部分波形データを検出する。
【0036】
次いで、ステップS13にてポインタが指し示す音符に対応して検出された最適の部分波形データを指定する指定情報を、演奏データに埋め込む。具体的には、その音符に対応する演奏イベントデータの直前に、メタイベントやシステムエクスクルーシブメッセージとされた部分波形データの指定情報を挿入するようにする。続いて、ステップS14にて次の音符にポインタが移動され、ステップS15にて移動先に音符があるか否かが判定され、音符があればステップS12に戻る。このように音符があれば、ステップS12ないしステップS15の処理が繰り返し行われるようになり、その処理毎に1つの音符に対応する最適の部分波形データの指定情報が演奏データ中に埋め込まれるようになる。そして、演奏データの最後の音符に対する部分波形データの指定情報の埋め込みが終了すると、ステップS15にて音符がないと判定されて、ステップS16に進む。ステップS16では、このようにして部分波形データの指定情報の埋め込まれた演奏データを別の名前で保存する処理が行われる。以上の処理が終了すると、演奏データ加工処理は終了する。
加工後の演奏データを指定して、波形データ録音再生装置1で自動演奏すると、演奏データ中の各音符の開始タイミング(ノートオンタイミング)毎に、そのノートオンイベントの直前に埋め込まれた指定情報で指定された部分波形データがHDD23から読み出され、ノートオンに対応した音色パラメータと共に再生回路24に送られる。このようにして、演奏データ中の各音符に対応した楽音が、指定された部分波形データに基づいて生成され自動演奏されるようになる。
【0037】
なお、ステップS13において部分波形データの指定情報をメタイベントやシステムエクスクルーシブとして埋め込むようにしたが、それに限らず、該指定情報をこれ以外のイベントとして埋め込むようにしてもよい。
また、自動演奏したい演奏データが複数パートの演奏データである場合には、図10の処理をその中の所望の1つのパートだけに対して行ってもよいし、あるいは、その中の任意の複数のパートに対して行ってもよい。
さらに、図10の処理は、単旋律の演奏データだけでなく、同時に複数の音符が重なるような演奏データでもよい。ただし、前音、後音が上か下か、前音/後音との音高差等の特徴情報に基づいて部分波形データを選択したい場合には、処理される演奏データは、全て単旋律の演奏データである必要がある。
【0038】
ここで、図10に示す演奏データ加工処理におけるステップS12で行われる部分波形選択処理の詳細を示すフローチャートを図11に示す。
図11に示す部分波形選択処理では、ステップS30にて現音の音高(PPIT)、現音の強度(PINT)、現音の音長(PLEN)の現音データが取得される。次いで、ステップS31にて次音の音高(FPIT)、次音の強度(FINT)、次音の音長(FLEN)の次音データが取得される。さらに、ステップS32にて前音の音高(BPIT)、前音の強度(BINT)、前音の音長(BLEN)の前音データが取得される。次いで、取得されたデータを用いてステップS33にて次音の音高比(FPR)と前音の音高比(BPR)が、次に示す(1)式および(2)式により算出される。
FPR=(FPIT−PPIT)/PPIT (1)
BPR=(BPIT−PPIT)/PPIT (2)
【0039】
さらに、取得されたデータを用いてステップS34にて次音の強度比(FIR)と前音の強度比(BIR)が、次に示す(3)式および(4)式により算出される。
FIR=(FINT−PINT)/PINT (3)
BIR=(BINT−PINT)/PINT (4)
さらにまた、取得されたデータを用いてステップS35にて次音の音長比(FLR)と前音の音長比(BLR)が、次に示す(5)式および(6)式により算出される。
FLR=(FLEN−PLEN)/PLEN (5)
BLR=(BLEN−PLEN)/PLEN (6)
さらにまた、ステップS36にてその他の検出が行われるが、この検出では、次音との重なり時間、前後複数音での強度のばらつき等に基づいて、スラーの程度を検出したり、ピッチベンドデータの揺れ幅を、ビブラート深さとして検出する。
【0040】
ステップS30において取得された現音の音高(PPIT)、現音の強度(PINT)、現音の音長(PLEN)と、ステップS33ないしステップS35にて算出された次音の音高比(FPR)、前音の音高比(BPR)、次音の強度比(FIR)、前音の強度比(BIR)、次音の音長比(FLR)、前音の音長比(BLR)の比の情報と、ステップS36で検出された情報は、ポインタが指し示している音符の音の特徴情報となる。そこで、ステップS37にてこの特徴情報と各部分波形の特徴情報とのパターン比較を行うことにより、両者の特徴情報が最も合致する部分波形を選択する。この選択された部分波形のIDをSPWIDレジスタに保存する。これにより、ステップS12における部分波形選択処理は終了する。
【0041】
ところで、ステップS37にて実行されるパターン比較の処理は、図12に示すフローチャートのようになる。
このパターン比較の処理では、ステップS40にてポインタが指し示している音符に対応する現音の音高(PPIT)、現音の強度(PINT)、現音の音長(PLEN)を、各部分波形における音の音高(PWPIT)、強度(PWINT)、音長(PWLEN)とそれぞれ比較し、その比較結果に基づいて計算量を削減するために候補となる部分波形を絞り込む。絞り込み方法の一例を上げると、まず、部分波形の音の音高(PWPIT)と現音の音高(PPIT)の差が範囲ΔPに、部分波形の音の強度(PWINT)と現音の強度(PINT)の差が範囲ΔIに、部分波形の音の音長(PWLEN)と現音の音長(PWLEN)の差が範囲ΔLに、それぞれ含まれる部分波形を選択する。この場合、選択された部分波形数が少なすぎる場合は、範囲ΔP,ΔI,ΔLを広げて(条件を緩和して)、その範囲に従い部分波形の選択を再び実行する。ただし、選択された部分波形の数として十分な部分波形数が得られている場合は、絞り込み処理を終了する。また、次のような絞り込み方法としてもよい。まず、全ての部分波形について、音高、強度、音長に関しての各部分波形と現音との類似度を調べるために、両者の離れ具合を示す後述する距離(PND)を算出する。ついで、類似する順である距離(PND)の小さい順に、n個の部分波形を選択する。
【0042】
このようにして部分波形を絞り込んだら、ステップS41にて絞り込まれた各部分波形とポインタが指し示している音符の音における音高、強度、音長に関しての距離(PND)を、次に示す(7)式により算出する。ただし、ステップS40にて(7)式を用いて距離(PND)を算出している場合は、このステップはスキップする。
ただし、(7)式においてap,bp,cpは、PND算出用の係数である。また、ステップS42にて絞り込まれた各部分波形における次音の音高比、強度比、音長比と、ポインタが指し示している音符の音における次音の音高比、強度比、音長比とに関しての距離(FND)を、次に示す(8)式により算出する。
ただし、(8)式においてaf,bf,cfは、FND算出用の係数である。
【0043】
さらに、ステップS43にて絞り込まれた各部分波形における前音の音高比、強度比、音長比と、ポインタが指し示している音符の音における前音の音高比、強度比、音長比とに関しての距離(BND)を、次に示す(9)式により算出する。
ただし、(9)式においてab,bb,cbは、BND算出用の係数である。次いで、ステップS41ないしステップS43にて算出された距離(PND)、距離(FND)、距離(BND)を用いて次に示す式(10)により部分波形とポインタが指し示している音符との全体としての類似度を示す総合距離(TOTALD)をステップS44にて算出する。
TOTALD=at・PND+bt・FND+ct・BND (10)
ただし、(10)式においてat,bt,ctは、TOTALD算出用の係数であり、これらの係数の傾向としてはat>ct>btの順の大きさとされる。
以上説明した、PND算出用の係数、FND算出用の係数、BND算出用の係数、TOTALD算出用の係数は、任意の1つないし複数をゼロとすることにより、対応する要素を距離の計算に組み入れないようにすることができる。
【0044】
ステップS44にて絞り込まれた各部分波形について総合距離(TOTALD)が算出されたら、ステップS45にて算出された総合距離(TOTALD)が一番小さい部分波形を選択して、そのIDをSPWIDレジスタに保存する。これにより、パターン比較処理は終了する。
なお、演奏データ加工処理におけるステップS12においては、演奏データにおけるポインタが指し示す音符の現時点データが如何なる状態とされていても、いずれかの部分波形を1つ選択するようにされている。ただし、現時点データと属性データとの合致度に最低条件を設けて、いずれの部分波形の属性データも離れ過ぎて類似していないときは、”該当する部分波形なし”という判断ができるようにしてもよい。そして、部分波形なしと判断された場合には、ユーザに警告したり、部分波形の代りに通常の波形メモリ音源で発音したりするのが好適である。さらに、部分波形を1つだけ選択するのではなく、2番目の候補、3番目の候補・・・を自動選択しておき、ユーザの指示に応じてその候補中から1つの部分波形を選択できるようにしてもよい。
【0045】
次に、本発明にかかる波形データ録音再生装置1において音色セットをリアルタイム演奏に適用した際のノートオンイベント処理のフローチャートを図13に示し、その説明を以下に行う。
操作子15に含まれている鍵盤を押鍵してノートオンイベントが発生したり、MIDIインタフェース25を介してノートオンイベントが供給されると、ノートオンイベント処理が起動され、ステップS20にて発生されたノートオンイベントにおける音高や強度等の情報に基づいて音色セットにおける指定されている音色の部分波形管理データベースの属性情報を検索して、最適の部分波形データが選択される。この場合の部分波形データの選択基準を、(1)当該ノートオンの音高、(2)当該ノートオンの音高と強度、(3)当該ノートオンの音高、および、前音の音高が上か下かの情報、(4)当該ノートオンの音高、および、前音の音高との音高差、(5)その他、当該ノートオンと前音の強度等の情報の組合せ、としてもよい。
【0046】
ノートオンイベントに対応する最適の部分波形データが選択されると、ステップS21にて再生回路24において発音するチャンネルが割り当てられ、ステップS22にて割り当てられた発音チャンネルに選択された部分波形データの情報や音色パラメータ等が設定される。この場合、ノートオンイベントにおける音高と選択された部分波形データの音高との音高差に基づいてピッチシフト量も設定される。次いで、ステップS23にて割り当てられた発音チャンネルにノートオンが送出され、再生回路24は設定された部分波形データおよび音色パラメータやピッチシフト量に基づいて楽音波形を再生する。ノートオンイベントに対応する楽音波形が再生されたらノートオンイベント処理は終了し、リアルタイム演奏に基づくノートオンイベントが再度発生すると、ノートオンイベント処理が再度起動されて上記したノートオンイベントに対応する楽音波形を再生する処理が繰り返し行われるようになる。
【0047】
なお、リアルタイム演奏では、演奏する音の長さは対応するノートオフが来るまで判明しないので、音長に応じて部分波形データの時間軸制御を行なうことはできない。そこで、リアルタイム演奏用の部分波形データでは、通常の波形メモリ音源と同様に、楽音波形のアタック以降の定常部にループ再生を行なうループ部を設定し、ループ再生+ノートオフに応じた減衰エンベロープ付与による楽音音長の制御を行なうようにする。
また、音色セットをリアルタイム演奏に適用した際の変形例として、ノートオンイベントの発生から発音までに数秒〜数十秒の発音遅れが許されるなら、その間の演奏イベントをバッファに記憶しておくことにより、部分波形データを選択する際に当該ノートオンの音長や後音の情報等も用いることができるようになる。
【0048】
ここで、ノートオンイベント処理におけるステップS20で実行される部分波形選択処理のフローチャートを図14に示す。
ステップS20の部分波形選択処理では、ステップS51にてノートオンされた現音の音高(PPIT)、現音の強度(PINT)が取得される。ただし、現音の音長(PLEN)はノートオン中なので取得することはできない。次いで、ステップS52にて前回のノートオンにおける前音の音高(BPIT)、前音の強度(BINT)、前音の音長(BLEN)の前音データが取得される。次いで、ステップS53にて取得された現音の音高(PPIT)と前音の音高(BPIT)との音高比(BPR)が、前記した(2)式により算出される。さらに、ステップS54にて取得された現音の強度(PINT)と前音の強度(BINT)との強度比(BIR)が、前記した(4)式により算出される。さらにまた、ステップS55にてその他の検出が行われるが、この検出では、前音との重なり時間、強度のばらつき等に基づいて、スラーの程度を検出したり、ピッチベンドデータの揺れ幅を、ビブラート深さとして検出する。
【0049】
次いで、ステップS51ないしステップS55にて取得されたノートオンの現音の音高(PPIT)、現音の強度(PINT)や、算出された前音の音高比(BPR)、前音の強度比(BIR)の特徴データと、各部分波形の特徴データとのパターン比較を行うことにより、これらの特徴データが最も合致する部分波形をステップS56にて選択する。この選択された部分波形のIDをSPWIDレジスタに保存する。これにより、ステップS20における部分波形選択処理は終了する。なお、パターン比較処理は前述した図12に示すパターン比較処理と同様に行うことができる。ただし、次音のデータは存在しないので現音と前音に関するデータに基づいてパターン比較を行う。具体的には、次音に関しての距離(FND)は算出しないと共に、係数cpをゼロとして現音に関しての距離(PND)を算出する。また、前音に関しての距離(BND)の計算では、(9)式における第3項の音長比(BLR)の代わりに前音の音長(BLEN)を、同音長比(PWBLR)の代わりに前音の音長(=PWBLR×PWLEN)を使用する。そして、算出された距離(PND)と距離(BND)とに基づいて、総合距離(TOTALD)を算出して、算出された総合距離(TOTALD)が一番小さい部分波形を選択して、そのIDをSPWIDレジスタに保存するようにする。
【0050】
ところで、本発明にかかる波形データ録音再生装置1において音色セットを自動演奏とリアルタイム演奏の組み合わせに適用することもできる。この際の自動演奏では、例えば16パートの演奏データに基づく自動演奏が行なわれ、そのうちの何れかのパートがリアルタイム演奏パートに指定される。第1パートがリアルタイム演奏パートだとすると、自動演奏により第2パート〜第16パートの楽音が生成される。その自動演奏された楽音に合わせて演奏者が演奏するリアルタイム演奏では、図13に示すノートオンイベント処理が実行されることにより楽音波形が生成されるようになる。このような自動リズム、自動伴奏、伴奏パート等の何らかの自動演奏に合わせてリアルタイム演奏している場合は、自動演奏からテンポクロックを得ることができる。従って、この場合に、演奏者が行なうリアルタイム演奏パートの演奏データを用意しておくと、演奏者は、大体そのリアルタイム演奏パートの通りに演奏することから、リアルタイム演奏におけるノートオンイベントやノートオフイベント等のイベントの未来の状況を検知することができるようになる。したがって、図13に示すノートオンイベント処理のステップS20における部分波形を選択する処理において、現ノートオンの音長情報や次に演奏される音の情報も使用して部分波形を選択することができるようになる。なお、自動演奏する演奏データとして、図10の演奏データ加工処理で加工された演奏データを使用してもよい。
【0051】
前記したように、自動演奏している場合は、自動演奏からテンポクロックを得ることができる。すなわち、自動演奏中のみテンポタイマにより、テンポに応じた時間間隔でテンポ割込が発生するようになる。このテンポ割込の度に、テンポカウンタは所定値ずつカウントアップする。このテンポカウンタの現在カウント値POSは、演奏データにおける自動演奏の進行位置を示している。ただし、この位置は演奏データのメモリ上のアドレス位置ではなく、何小節目の何拍目の何クロック目というようなテンポクロックを基準とした位置とされている。また、演奏データには、演奏者の演奏しているリアルタイム演奏のパートも含まれており、その他のパートの自動演奏に同期して、該リアルタイム演奏のパートも現在位置が確定されるようになる。
【0052】
このようなテンポカウンタの初期設定が行われる自動演奏開始処理のフローチャートを図15に示す。
この自動演奏開始処理が開始されると、ステップS60にて自動演奏される演奏データが特定される。次いで、ステップS61にてテンポカウンタの値POSが初期値に設定される。次いで、ステップS62にて特定された演奏データにおける最初のイベント位置が確定され、ステップS63にてテンポタイマがスタートされる。これにより、テンポタイマによる一定時間おきのテンポ割込が発生するようになり、そのテンポ割込処理のなかで、確定されたイベントから演奏データのイベントが順次再生されるようになる。
【0053】
次に、テンポカウンタを更新させるテンポ割込処理のフローチャートを図16に示す。
テンポ割込が生じると、テンポ割込処理が開始されてステップS70にてテンポ割込の度に、テンポカウンタの値POSは所定値ずつカウントアップされて更新される。次いで、ステップS71にて現時点がイベント位置か否かが判断される。ここで、イベント位置と判断されるとステップS72に分岐し、該位置のイベントが再生され、この再生処理が終了するとステップS73にて次のイベントの位置が確定されて、ステップS74に進む。この場合、イベントがリアルタイム演奏パートのイベントの場合は、当該イベントに応じた楽音の生成や制御は行われず、それ以外の演奏パートのイベントである場合は、当該イベントに応じた楽音の生成や制御等が行なわれる。また、ステップS71にてイベント位置でないと判断された場合は、そのままステップS74に進み現時点が終了位置か否かが判断される。ここで、終了位置と判断されると、ステップS75に分岐しテンポタイマを停止させてテンポ割込処理を終了させる。この場合、自動演奏は終了するようになる。また、ステップS74にて終了位置でないと判断された場合は、そのままテンポ割込処理は終了する。
【0054】
次に、自動演奏と組み合わされて演奏されるリアルタイム演奏のノートオン処理のフローチャートを図17に示す。
リアルタイム演奏のノートオンが検出されると、リアルタイム演奏のノートオン処理が開始され、ステップS80にて検出されたノートオンのノートナンバがPPITレジスタに格納されると共に、ベロシティがPINTレジスタに格納される。次いで、ステップS81にてリアルタイム演奏から前音の音高(BPIT)、前音の強度(BINT)、前音の音長(BLEN)の前音データが取得される。さらに、現在の演奏位置を示すテンポカウンタの値POSの前後の近傍の範囲において、検出されたノートナンバ(PPIT)およびベロシティ(PINT)に対応する演奏データ中のリアルタイム演奏パートの演奏データにおけるイベントがステップS82にて検出される。続いて、ステップS83にて検出されたイベントの音に基づいてノートオンの音の音長(PLEN)データが取得される。この場合、そのイベント(ノートオンイベント)に対応するノートオフイベントを、リアルタイム演奏パートの演奏データから検出することにより音長情報を得るようにする。
【0055】
さらに、ステップS84にて検出されたイベントの演奏データにおける次音に基づいて次音の音高(FPIT)、次音の強度(FINT)、次音の音長(FLEN)の次音データが取得される。次いで、ステップS85にて取得されたノートオンのデータ、および、このノートオンのデータに基づいて演奏データから取得したデータに基づいて部分波形の選択処理が行われる。この部分波形の選択処理では、図11に示す部分波形選択処理におけるステップS33ないしステップS37の処理が行われる。これにより、ノートオンされた音の特徴データに最も合致する特徴データを備える部分波形が選択される。ノートオンされた音に対応する最適の部分波形が選択されると、ステップS86にて再生回路24において発音するチャンネルが割り当てられ、ステップS87にて割り当てられた発音チャンネルに選択された部分波形データの情報や音色パラメータ等が設定される。この場合、検出されたノートオンのノートナンバ(PPIT)と選択された部分波形の音高との音高差に基づいてピッチシフト量も設定される。
【0056】
次いで、ステップS88にて割り当てられた発音チャンネルにノートオンが送出され、再生回路24は設定された部分波形および音色パラメータやピッチシフト量に基づいて楽音波形を再生する。ノートオンに対応する楽音波形が再生されたらリアルタイム演奏のノートオン処理は終了し、リアルタイム演奏のノートオンが再度発生すると、ノートオン処理が再度起動されて上記したノートオンイベントに対応する楽音波形を再生する処理が繰り返し行われるようになる。
なお、図17に示すリアルタイム演奏のノートオン処理では、リアルタイム演奏から音高(PPIT),強度(PINT),前音の音高(BPIT),前音の強度(BINT),前音の音長(BLEN)を取得するようにしたが、部分波形選択に使用するこれらのデータとしてリアルタイム演奏パートの演奏データから得たデータを使用するようにしてもよい。このようにすると、リアルタイム演奏の各ノートオンで選択すべき部分波形を、該リアルタイム演奏に先立って予め選択しておくことができる。ただし、発音用パラメータの制御に関してはリアルタイム演奏のデータをそのまま使用する。
【0057】
なお、鍵域を所定の音域毎に区切り、区切った音域毎にサンプリング波形を割り当てるマルチサンプリングにおいて必要となる音高の音符を、図3のフレーズ波形録音における録音したいパートの演奏データのフレーズ中に全て含めておくと、必要となる音高の部分波形データは全て収録データに収録されるようになる。従って、この場合は、フレーズの演奏が完了したら直ちにマルチサンプリングされた部分波形データによる演奏を行なうことができるようになる。この際に、必要となる音長や演奏強度の音符を演奏データのフレーズ中に全て含めておくようにしてもよい。
また、フレーズ波形データを分割した部分波形データを、音色セットとして全部使うように設定しておけば、選択された音色セットを作る手順を省略して直ちに演奏をすることができるようになる。
【0058】
さらに、各情報をその本来の目的以外の目的で使用してもよい。例えば、歌声をサンプリングした場合に「強度情報」を音声の音素を判別する「音素情報」として使用してもよい。具体的には、例えば、音素「あ〜あ〜あ〜」を示す情報として強度=60を割り当て、音素「ら〜ら〜ら〜」を示す情報として強度=61を割り当て、音素「どぅ〜どぅ〜どぅ〜」を示す情報として強度=62を割り当てる。このように、「強度情報」を「音素情報」として使用した場合、「強度情報」でグループ分けすれば、同じ音素に対応した部分波形データを集めることができるようになる。
さらにまた、演奏データ加工処理において処理したい演奏データを、そのまま、録音に使用する演奏データである対応演奏データとして使用してもよい。このようにすると、収録した波形データを部分波形データに分割処理した後に、得られた分割波形データをそのまま演奏データに張り付けることができるようになり、最適の部分波形データを検出する処理を簡略化することができる。
さらにまた、部分波形データを貼り付けられた演奏データの各音符をエディットすることにより、録音されたフレーズ波形データを間接的にエディットすることができる。
さらにまた、フレーズ波形録音後に、フレーズ波形に対応する演奏データを人間が入力して、その演奏データに基づいて属性情報を作成するようにしてもよい。さらにまた、録音したフレーズ波形を周波数分析し、対応する演奏データを自動生成して、その演奏データに基づいて属性情報を作成するようにしてもよい。
【0059】
【発明の効果】
本発明は以上のように構成されているので、本発明の波形生成方法によれば、発音制御情報に対応して最適の部分波形を用いて波形を生成することができ、表情に富んだ楽音を生成することができるようになる。
また、本発明の演奏データ処理方法によれば、演奏データ中の各音符の特徴に最適の部分波形データを、予め選択して演奏データの各音符に付与することができる。従って、この演奏データを用いることにより、自動演奏を行なう際のCPU10の負荷を増加させることなく、自動演奏における波形生成で最適の部分波形データを選択できるようになる。
さらに、本発明の波形生成方法によれば、リアルタイム演奏により楽音を生成する場合でも、リアルタイム演奏に対応する演奏情報を利用することにより、未来に行う演奏に応じて、現在の演奏により生成する楽音の特性を制御することができる。
さらにまた、演奏する音とその前に演奏する音、あるいはその次に演奏する音の2音の特性データに近い属性データを有する1ないし複数の部分波形を選択するようにすると、演奏する音の楽音を生成するための部分波形として最適の部分波形を選択することができるようになる。
【図面の簡単な説明】
【図1】 本発明の波形生成方法および演奏データ処理方法を備える波形データ録音再生装置のハードウェア構成を示す図である。
【図2】 本発明にかかる波形データ録音再生装置における同期化されている自動演奏される演奏データとフレーズ波形データとの関係を示す図である。
【図3】 本発明にかかる波形データ録音再生装置において波形データを録音する際の態様を示す図である。
【図4】 本発明にかかる波形データ録音再生装置において、フレーズ波形データの分割処理および属性情報付与処理を行う構成の概要を示す図である。
【図5】 本発明にかかる波形データ録音再生装置における収録データの構成を示す図である。
【図6】 本発明にかかる波形データ録音再生装置における演奏用の音色セットの構成を示す図である。
【図7】 本発明にかかる波形データ録音再生装置における演奏用の音色セットにおける部分波形レコードの詳細構成を示す図である。
【図8】 本発明にかかる波形データ録音再生装置における演奏用の音色セットにおける部分波形レコードの部分波形IDの構成を示す図である。
【図9】 本発明にかかる波形データ録音再生装置における音色セット作成手順を示すフローチャートである。
【図10】 本発明にかかる波形データ録音再生装置で実行される演奏データ加工処理のフローチャートである。
【図11】 本発明にかかる波形データ録音再生装置で実行される演奏データ加工処理のフローチャートにおけるステップS12の処理を示すフローチャートである。
【図12】 図11に示すフローチャートにおけるパターン比較処理のフローチャートである。
【図13】 本発明にかかる波形データ録音再生装置で実行されるノートオンイベント処理のフローチャートである。
【図14】 本発明にかかる波形データ録音再生装置で実行されるノートオンイベント処理におけるステップS20の処理を示すフローチャートである。
【図15】 本発明にかかる波形データ録音再生装置で実行される自動演奏開始処理のフローチャートである。
【図16】 本発明にかかる波形データ録音再生装置の自動演奏時に実行されるテンポ割込処理のフローチャートである。
【図17】 本発明にかかる波形データ録音再生装置の自動演奏と組み合わされて演奏されるリアルタイム演奏におけるノートオン処理のフローチャートである。
【符号の説明】
1 波形データ録音再生装置、10 CPU、11 タイマ、12 ROM、13 RAM、14 表示器、15 操作子、16 音源、17 ミキサ、18 DAC、19 サウンドシステム、20 マイクロフォン、21 ADC、22録音回路、23 HDD、24 再生回路、25 MIDIインタフェース、26 その他インタフェース、30 演奏データ、31 自動演奏手段、32 演奏者、33 波形録音手段、34 フレーズ波形データ、35 クロック同期ライン、36 ヘッドフォン、37 スピーカ、38 スピーカ音除去処理手段、40 フレーズ波形データ、41 分割処理手段、42 属性情報付与処理手段、43 部分波形データ、44 演奏データ
Claims (6)
- 複数の部分波形を部分波形メモリに記憶し、
該部分波形メモリに記憶されている各部分波形毎に、当該部分波形に対応する演奏音とその前および後の演奏音の2音の特性を示すデータを含む属性情報を属性情報メモリに記憶し、
入力された現在の演奏イベント情報、並びに、その前および後の演奏イベント情報の2つの演奏イベント情報により前記属性情報メモリを参照して、前記2つの演奏イベント情報に対応する属性情報を有する部分波形を前記部分波形メモリから読み出し、該読み出された部分波形に基づいて、前記現在の演奏イベント情報に対応する楽音波形を生成するようにしたことを特徴とする波形生成方法。 - 各部分波形毎に、当該部分波形に対応する演奏音とその前および後の演奏音の2音の特性を示すデータを含む属性情報が属性情報メモリに記憶されており、
処理を行う演奏データに含まれる各音符に対応する演奏音とその前および後の音符に対応する演奏音の2音の特性を示すデータと、前記属性情報メモリに記憶されている属性情報を対比することにより、該2音の特性を示すデータに近いデータを含む属性情報を有する当該音符に最適の部分波形を検出し、
検出された部分波形を指定する指定データを前記演奏データ中の当該音符に付与し、該指定データが付与された音符を含む演奏データを記憶するようにしたことを特徴とする演奏データ処理方法。 - 請求項2記載の演奏データ処理方法により記憶された指定データが付与された音符を含む演奏データを再生する際の波形生成方法であって、
部分波形メモリに複数の部分波形が記憶されており、前記演奏データに基づいて指定データの付与された音符を再生する際に、再生される音符に付与されている指定データに基づいて、前記部分波形メモリから部分波形を読み出し、読み出された部分波形に基づいて、当該音符に対応する楽音波形を生成するようにしたことを特徴とする波形生成方法。 - リアルタイム演奏用のパートと自動演奏用あるいは自動伴奏用のパートを含む複数パートの演奏データが記憶されており、
発生されたテンポクロックに応じて、前記自動演奏用あるいは自動伴奏用のパートの演奏データを再生して伴奏音を発生すると共に、該伴奏音に合わせてリアルタイム演奏された演奏イベント情報を入力し、
前記リアルタイム演奏された演奏イベント情報に応じて、前記リアルタイム演奏用の演奏パートから次の演奏音に対応する次音データを取得すると共に、当該演奏イベント情報と前記取得された次音データとに基づいて、当該演奏イベント情報に対応する楽音波形を生成するようにしたことを特徴とする波形生成方法。 - 部分波形メモリに記憶された複数部分波形から1ないし複数の部分波形を選択するための波形選択装置であって、
各部分波形毎に、当該部分波形に対応する演奏音とその音の前の演奏音の2音の特性を示す属性データを記憶するデータベースと、
順次演奏される演奏音のうちの現在の演奏音とその前の演奏音の2音の特性を示す特性データを入力し、入力された特性データにより前記データベースを参照して、入力された特性データに近い属性データを有する1ないし複数の部分波形を、前記現在の演奏音に対応する楽音波形を合成するための部分波形として抽出する検索手段と、
を備えるようにしたことを特徴とする波形選択装置。 - 部分波形メモリに記憶された複数部分波形から1ないし複数の部分波形を選択するための波形選択装置であって、
各部分波形毎に、当該部分波形に対応する演奏音とその音の次の演奏音の2音の特性を示す属性データを記憶するデータベースと、
順次演奏される演奏音のうちの現在の演奏音とその次の演奏音の2音の特性を示す特性データを入力し、入力された特性データにより前記データベースを参照して、入力された2音の特性データに近い属性データを有する1ないし複数の部分波形を、前記現在の演奏 音に対応する楽音波形を合成するための部分波形として抽出する検索手段と、
を備えるようにしたことを特徴とする波形選択装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002025100A JP3879524B2 (ja) | 2001-02-05 | 2002-02-01 | 波形生成方法、演奏データ処理方法および波形選択装置 |
US10/067,458 US6740804B2 (en) | 2001-02-05 | 2002-02-04 | Waveform generating method, performance data processing method, waveform selection apparatus, waveform data recording apparatus, and waveform data recording and reproducing apparatus |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001-27988 | 2001-02-05 | ||
JP2001027988 | 2001-02-05 | ||
JP2002025100A JP3879524B2 (ja) | 2001-02-05 | 2002-02-01 | 波形生成方法、演奏データ処理方法および波形選択装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002304175A JP2002304175A (ja) | 2002-10-18 |
JP3879524B2 true JP3879524B2 (ja) | 2007-02-14 |
Family
ID=26608905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002025100A Expired - Fee Related JP3879524B2 (ja) | 2001-02-05 | 2002-02-01 | 波形生成方法、演奏データ処理方法および波形選択装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3879524B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4802947B2 (ja) * | 2006-09-01 | 2011-10-26 | ヤマハ株式会社 | 奏法決定装置及びプログラム |
JP5135931B2 (ja) * | 2007-07-17 | 2013-02-06 | ヤマハ株式会社 | 楽曲加工装置およびプログラム |
JP5119932B2 (ja) * | 2008-01-11 | 2013-01-16 | ヤマハ株式会社 | 鍵盤楽器、ピアノおよび自動演奏ピアノ |
JP5151603B2 (ja) * | 2008-03-26 | 2013-02-27 | カシオ計算機株式会社 | 電子楽器 |
JP5605066B2 (ja) * | 2010-08-06 | 2014-10-15 | ヤマハ株式会社 | 音合成用データ生成装置およびプログラム |
-
2002
- 2002-02-01 JP JP2002025100A patent/JP3879524B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002304175A (ja) | 2002-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3718919B2 (ja) | カラオケ装置 | |
US6740804B2 (en) | Waveform generating method, performance data processing method, waveform selection apparatus, waveform data recording apparatus, and waveform data recording and reproducing apparatus | |
JP2000514571A (ja) | 自動即興演奏システム及び方法 | |
JP2008250008A (ja) | 楽音処理装置およびプログラム | |
JP4274272B2 (ja) | アルペジオ演奏装置 | |
JP3915807B2 (ja) | 奏法自動判定装置及びプログラム | |
JP3750533B2 (ja) | 波形データ録音装置および録音波形データ再生装置 | |
JP3879524B2 (ja) | 波形生成方法、演奏データ処理方法および波形選択装置 | |
JP2002162978A (ja) | カラオケ装置 | |
JP3430814B2 (ja) | カラオケ装置 | |
JP3261990B2 (ja) | カラオケ装置 | |
JP3709821B2 (ja) | 楽曲情報編集装置及び楽曲情報編集プログラム | |
JP3613062B2 (ja) | 楽音データ作成方法および記憶媒体 | |
JP3719157B2 (ja) | 楽曲データの表情付け装置及び楽曲データの表情付け方法並びに楽曲データの表情付けプログラム | |
JP3807333B2 (ja) | メロディ検索装置およびメロディ検索プログラム | |
JP2004184506A (ja) | カラオケ装置及びプログラム | |
JP6424907B2 (ja) | 演奏情報検索方法を実現するためのプログラム、当該演奏情報検索方法および演奏情報検索装置 | |
JP6981239B2 (ja) | 機器、方法及びプログラム | |
JP3777976B2 (ja) | 演奏情報解析装置及び記録媒体 | |
JP3747802B2 (ja) | 演奏データ編集装置及び方法並びに記憶媒体 | |
JP3637782B2 (ja) | データ生成装置と記録媒体 | |
JP4067007B2 (ja) | アルペジオ演奏装置及びプログラム | |
JP4186802B2 (ja) | 自動伴奏生成装置及びプログラム | |
JP3755468B2 (ja) | 楽曲データの表情付け装置及びプログラム | |
JP3797180B2 (ja) | 楽譜表示装置及び楽譜表示プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040909 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060718 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060801 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060919 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20061017 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061030 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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: 20101117 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101117 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111117 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111117 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121117 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121117 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131117 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |